## Summary Implements feature branch `286-ui-copy-ia-localization-neutralization`. This change set: - aligns chooser, managed-environment landing, dashboard, shell, and workspace context copy to environment-first terminology - neutralizes the bounded policy and baseline helper copy called out by Spec 286 - adds focused feature, guard, and browser coverage plus the complete Spec 286 artifact set - records the discovered `Capture snapshot` modal issue as out-of-scope runtime debt in the Spec 286 close-out notes ## Validation - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/Localization/EnvironmentContextTerminologyTest.php tests/Feature/Filament/EnvironmentContextSurfaceCopyTest.php tests/Feature/Filament/Localization/PolicyInventoryLocalizationTest.php tests/Feature/Guards/EnvironmentCopyNeutralizationGuardTest.php` - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Browser/Spec286EnvironmentCopyNeutralizationSmokeTest.php` - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail bin pint --dirty --format agent` ## Notes - Target branch: `platform-dev` - Filament remains on v5 with Livewire v4. - Provider registration remains unchanged in `apps/platform/bootstrap/providers.php`. - No new destructive actions, asset strategy changes, or global-search posture changes are introduced in this slice. Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #345
2.5 KiB
2.5 KiB
Quickstart: UI Copy, IA & Localization Neutralization
Purpose
Implement the bounded environment-first glossary convergence on the confirmed post-workspace-first admin surfaces only.
Preconditions
- Work on a branch that already contains the current workspace-first route and environment dashboard seams.
- Do not widen into route/slug/class renaming.
- Keep auth-provider labels and deeper provider-specific diagnostics out of scope unless the spec explicitly names them.
Recommended Implementation Order
- Update the in-scope localization catalogs and directly surfaced key family from
tenant_*toenvironment_*. - Apply the new glossary to chooser and landing surfaces.
- Apply the same glossary to dashboard headings, shared shell labels, registry return labels, and workspace widgets.
- Neutralize the bounded provider helper text on
PolicyResource,ViewPolicy,VersionsRelationManager, andbaseline-compare-landingonly. - Run the exact proof commands below.
Proof Commands
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/Localization/EnvironmentContextTerminologyTest.php tests/Feature/Filament/EnvironmentContextSurfaceCopyTest.php tests/Feature/Filament/Localization/PolicyInventoryLocalizationTest.php tests/Feature/Guards/EnvironmentCopyNeutralizationGuardTest.php
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Browser/Spec286EnvironmentCopyNeutralizationSmokeTest.php
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail bin pint --dirty --format agent
Manual Review Prompts
- Confirm the chooser and registry no longer say
tenantin their primary title, CTA, or empty-state copy. - Confirm dashboard and shell labels say
environmentwhile route targets remain unchanged. - Confirm auth-provider labels such as
Sign in with Microsoftremain unchanged. - Confirm provider-specific helper text remains available only as secondary detail on
PolicyResource,ViewPolicy,VersionsRelationManager, andbaseline-compare-landingwhere the provider is genuinely the subject.
Explicit Stop Conditions
- If implementation requires route/slug/class renames, stop and split the work.
- If implementation requires RBAC capability renaming, stop and split the work.
- If implementation discovers broader provider-owned copy cleanup outside the bounded admin surfaces, record it as follow-up rather than widening
286.