# V13-FE-022 — URL query codec slice note - **Requirement:** REQ-FE-URL - **API/UI/Test:** UI-URL-01 / T-FE-URL-01 - **Source:** v60 deep-link/canonical route boundary; current `frontend/src/shared/crud/queryCodec.ts`. - **Assumption:** Each screen that consumes the codec can provide an approved field/operator allowlist from its resource contract. - **Unknown:** No active production screen currently wires this codec to router state. - **Decision Required:** FE/QA must approve per-resource filter/sort allowlists before enabling URL synchronization in a screen. ## Applied boundary - Added optional allowlists for sort fields, filter fields, and filter operators. - When supplied, unapproved URL values are discarded and the approved fallback remains authoritative. - Preserved existing behavior for callers that have not yet supplied a screen-specific allowlist. - Kept URL state as a serializable query contract; no Pinia/server-state duplication was introduced. ## Evidence ```text pnpm test -- src/shared/crud/tests/queryCodec.spec.ts PASS: 1 file / 3 tests (2026-08-12) pnpm typecheck PASS (2026-08-12) ``` The Slice remains IN_PROGRESS until a production screen supplies an approved allowlist and deep-link browser evidence is collected.