## Summary - align operator-visible OperationRun terminology to canonical `Operations` / `Operation` labels across shared links, notifications, verification/onboarding surfaces, summary widgets, and monitoring/detail pages - add the Spec 171 planning artifacts under `specs/171-operations-naming-consolidation/` - close the remaining tenant dashboard and admin copy drift found during browser smoke validation ## Validation - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && vendor/bin/sail artisan test --compact tests/Unit/Support/RelatedNavigationResolverTest.php tests/Unit/Support/References/RelatedContextReferenceAdapterTest.php tests/Feature/OpsUx/NotificationViewRunLinkTest.php tests/Feature/Guards/ActionSurfaceContractTest.php tests/Feature/Operations/TenantlessOperationRunViewerTest.php tests/Feature/Filament/BackupSetResolvedReferencePresentationTest.php tests/Feature/Filament/TenantVerificationReportWidgetTest.php tests/Feature/Onboarding/OnboardingVerificationTest.php tests/Feature/Onboarding/OnboardingVerificationClustersTest.php tests/Feature/Onboarding/OnboardingVerificationV1_5UxTest.php tests/Feature/Filament/BaselineCompareSummaryConsistencyTest.php tests/Feature/Filament/WorkspaceOverviewContentTest.php tests/Feature/Filament/RecentOperationsSummaryWidgetTest.php tests/Feature/Monitoring/OperationLifecycleAggregateVisibilityTest.php tests/Feature/System/Spec114/OpsTriageActionsTest.php tests/Feature/System/Spec114/OpsFailuresViewTest.php tests/Feature/System/Spec114/OpsStuckViewTest.php` - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && vendor/bin/sail artisan test --compact tests/Browser/OnboardingDraftRefreshTest.php` - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && vendor/bin/sail bin pint --dirty --format agent` ## Notes - no schema or route renames - Filament / Livewire surface behavior stays within the existing admin and tenant panels - OperationRunResource remains excluded from global search Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #202
6.9 KiB
6.9 KiB
Quickstart: Operations Naming Consolidation
Goal
Align non-system operator-visible references to existing OperationRun records so shared links, identifiers, embedded verification/onboarding surfaces, and summary/helper copy use Operations / Operation consistently without changing routes, capabilities, or operation behavior.
Prerequisites
- Start the local stack:
vendor/bin/sail up -d
- Work on branch
171-operations-naming-consolidation.
Implementation Steps
- Update the shared label emitters first:
app/Support/OperationRunLinks.phpapp/Support/OpsUx/OperationUxPresenter.phpapp/Notifications/OperationRunCompleted.phpapp/Notifications/OperationRunQueued.phpapp/Support/Navigation/RelatedActionLabelCatalog.phpapp/Support/Navigation/RelatedNavigationResolver.phpapp/Support/References/ReferenceTypeLabelCatalog.phpapp/Support/References/Resolvers/OperationRunReferenceResolver.php
- Update representative non-system Filament pages, resources, and widgets that still render local
runterminology:app/Filament/Pages/Operations/TenantlessOperationRunViewer.phpapp/Filament/Widgets/Tenant/TenantVerificationReport.phpapp/Filament/Pages/Workspaces/ManagedTenantOnboardingWizard.phpapp/Filament/Resources/BackupScheduleResource.phpapp/Filament/Resources/BackupSetResource.phpapp/Filament/Resources/EvidenceSnapshotResource.phpapp/Filament/Resources/EvidenceSnapshotResource/Pages/ViewEvidenceSnapshot.phpapp/Support/Baselines/BaselineCompareSummaryAssessor.phpapp/Support/Workspaces/WorkspaceOverviewBuilder.php
- Update the covered Blade views and embedded report partials:
resources/views/filament/widgets/tenant/tenant-verification-report.blade.phpresources/views/filament/components/verification-report-viewer.blade.phpresources/views/filament/forms/components/managed-tenant-onboarding-verification-report.blade.phpresources/views/filament/modals/onboarding-verification-technical-details.blade.phpresources/views/filament/widgets/tenant/recent-operations-summary.blade.phpresources/views/filament/pages/monitoring/operations.blade.php
- Keep Spec 170 system pages unchanged unless a shared-helper copy update requires a small regression assertion adjustment; do not re-open their interaction model in this slice.
- Run a final search for residual
View run,Run ID,Run #, and pluralrunscollection wording such asOpen all runs, and leave only valid internal or explicitly out-of-scope matches.
Tests To Update
- Unit coverage for shared navigation and reference emitters:
tests/Unit/Support/RelatedNavigationResolverTest.phptests/Unit/Support/References/RelatedContextReferenceAdapterTest.php
- Feature coverage for shared notifications, representative viewers, verification surfaces, and summary widgets:
tests/Feature/OpsUx/NotificationViewRunLinkTest.phptests/Feature/Operations/TenantlessOperationRunViewerTest.phptests/Feature/Filament/BackupSetResolvedReferencePresentationTest.phptests/Feature/Filament/TenantVerificationReportWidgetTest.phptests/Feature/Onboarding/OnboardingVerificationTest.phptests/Feature/Onboarding/OnboardingVerificationClustersTest.phptests/Feature/Onboarding/OnboardingVerificationV1_5UxTest.phptests/Feature/Filament/BaselineCompareSummaryConsistencyTest.phptests/Feature/Filament/WorkspaceOverviewContentTest.phptests/Feature/Filament/RecentOperationsSummaryWidgetTest.phptests/Feature/Monitoring/OperationLifecycleAggregateVisibilityTest.phptests/Feature/Guards/ActionSurfaceContractTest.php
- Browser coverage for onboarding/bootstrap summary wording when the embedded report changes:
tests/Browser/OnboardingDraftRefreshTest.php
- System-surface regression coverage whenever shared emitters or cross-panel operation labels change:
tests/Feature/System/Spec114/OpsTriageActionsTest.phptests/Feature/System/Spec114/OpsFailuresViewTest.phptests/Feature/System/Spec114/OpsStuckViewTest.php
Focused Verification
Run the smallest relevant regression set first:
vendor/bin/sail artisan test --compact tests/Unit/Support/RelatedNavigationResolverTest.php
vendor/bin/sail artisan test --compact tests/Unit/Support/References/RelatedContextReferenceAdapterTest.php
vendor/bin/sail artisan test --compact tests/Feature/OpsUx/NotificationViewRunLinkTest.php
vendor/bin/sail artisan test --compact tests/Feature/Guards/ActionSurfaceContractTest.php
vendor/bin/sail artisan test --compact tests/Feature/Operations/TenantlessOperationRunViewerTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/BackupSetResolvedReferencePresentationTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/TenantVerificationReportWidgetTest.php
vendor/bin/sail artisan test --compact tests/Feature/Onboarding/OnboardingVerificationTest.php
vendor/bin/sail artisan test --compact tests/Feature/Onboarding/OnboardingVerificationClustersTest.php
vendor/bin/sail artisan test --compact tests/Feature/Onboarding/OnboardingVerificationV1_5UxTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/BaselineCompareSummaryConsistencyTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewContentTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/RecentOperationsSummaryWidgetTest.php
vendor/bin/sail artisan test --compact tests/Feature/Monitoring/OperationLifecycleAggregateVisibilityTest.php
vendor/bin/sail artisan test --compact tests/Feature/System/Spec114/OpsTriageActionsTest.php
vendor/bin/sail artisan test --compact tests/Feature/System/Spec114/OpsFailuresViewTest.php
vendor/bin/sail artisan test --compact tests/Feature/System/Spec114/OpsStuckViewTest.php
If onboarding/bootstrap copy changes are touched, add:
vendor/bin/sail artisan test --compact tests/Browser/OnboardingDraftRefreshTest.php
Formatting
After code changes, run:
vendor/bin/sail bin pint --dirty --format agent
Manual Review Checklist
- Covered links to existing records use the canonical operation action label for that surface, including
Open operationwhere the contract fixes it, instead ofView run. - Covered identifiers say
Operation #...orOperation IDinstead ofRun #...orRun ID. - Verification and onboarding surfaces still use task verbs such as
Start verificationwhen starting new work. - Covered summary/helper copy uses plural
operationswhen referring to existing historical records. - The tenantless admin operation viewer uses
Operationterminology without changing its route target. - Spec 170 system pages still keep their existing aligned
Operations/Operationsemantics and interaction model. - No route slug, class name, enum value, capability, or persistence artifact was renamed.