# V13-FE-006 — navigation section preference persistence

## Scope

- **WBS:** V13-FE-006
- **Requirement/API/UI/Test:** REQ-FE-NAV / Cross / UI-NAV-01 / T-FE-NAV-PREFERENCE
- **Source:** existing versioned `screenPreferenceStore` and `KsSideNavigation` collapse contract.
- **Change:** persist collapsed module names in the existing browser UI preference record and wire the shell as a controlled state boundary.
- **Not changed:** authentication, authorization, route catalog, API data, or business state.

## Source / Assumption / Unknown / Decision Required

- **Source:** `ks.shell.screenPreference.v1` localStorage preference boundary.
- **Assumption:** section collapse is browser UI preference, not user/account data; existing browser storage scope is acceptable.
- **Unknown:** cross-device/user profile synchronization and mobile drawer behavior.
- **Decision Required:** account-scoped preference migration and mobile UX remain separate decisions.

## Evidence

- Targeted navigation contract: 1 file / 3 tests passed.
- `pnpm typecheck`: passed.
- `pnpm build`: passed; known Vite >500 kB chunk warning remains.
- Evidence: `evidence/V13-FE-006/navigation-preference_20260813.log`.
