Files
git.stella-ops.org/docs/features/checked/web/settings-ia-rationalization-ui.md
master 2bf4d69bba feat(web): rationalize settings IA into personal-preferences shell with admin rehoming [SPRINT-026]
Settings shell now owns only personal user preferences (appearance,
language, layout, AI assistant). All 14 admin/tenant/ops leaves
converted to controlled redirects pointing at their canonical owners
(Administration, Setup, Ops). Language merged into user-preferences.
Identity-providers rehomed from settings to administration as
canonical owner. Navigation config updated. 22 new route tests added.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 22:59:38 +02:00

58 lines
2.9 KiB
Markdown

# Settings IA Rationalization
## Summary
The Settings shell has been rationalized from a mixed bucket of user preferences, admin consoles, setup pages, and redirect shims into a truthful personal-preferences surface. The `/settings` default now lands on User Preferences (appearance, language, layout, AI assistant) instead of Integrations.
## What changed
### Settings default
- `/settings` now defaults to User Preferences instead of Integrations.
### Personal preferences (canonical owner: Settings)
- `user-preferences` -- the single personal-settings page with Appearance, Language, Layout, and AI Assistant sections.
### Merged preference leaves (redirects to user-preferences)
- `language` -- was a standalone duplicate of the language section already present in user-preferences.
- `ai-preferences` -- already redirected to user-preferences (preserved).
### Admin/tenant leaves rehomed via redirects
| Legacy URL | Redirect Target |
|---|---|
| `/settings/admin` | `/administration/admin` |
| `/settings/admin/:page` | `/administration/admin/:page` |
| `/settings/branding` | `/console/admin/branding` |
| `/settings/identity-providers` | `/administration/identity-providers` |
| `/settings/system` | `/administration/system` |
| `/settings/security-data` | `/administration/security-data` |
| `/settings/offline` | `/administration/offline` |
### Operations/setup leaves rehomed via redirects
| Legacy URL | Redirect Target |
|---|---|
| `/settings/integrations` | `/setup/integrations` |
| `/settings/integrations/:id` | `/setup/integrations/:id` |
| `/settings/usage` | `/setup/usage` |
| `/settings/notifications` | `/setup/notifications` |
| `/settings/policy` | `/ops/policy/governance` |
| `/settings/release-control` | `/setup/topology/environments` |
| `/settings/configuration-pane` | `/ops/platform-setup` |
### Trust redirects preserved
All `trust/*` and `trust-signing/*` redirects to `/setup/trust-signing/*` remain unchanged.
### Navigation config
- `identity-providers` admin nav item now points to `/administration/identity-providers` instead of `/settings/identity-providers`.
### Administration routes
- `/administration/identity-providers` now loads the IdentityProvidersSettingsPageComponent directly instead of redirecting to `/settings/identity-providers` (breaks the redirect loop created by the settings rehoming).
## Test evidence
- 22 new tests in `settings-ia-rationalization.spec.ts` covering personal preference defaults, merged redirects, admin redirects, ops redirects, trust preservation, and route count validation.
- 3 existing tests in `unified-settings-page.behavior.spec.ts` updated and passing.
- 5 existing tests in `setup-topology-trust-cutover.spec.ts` verified passing (no regression).
- All 30 settings tests pass, all 5 trust cutover tests pass.
- Build clean (no TypeScript errors).
## Sprint
`SPRINT_20260308_026_FE_settings_information_architecture_rationalization`