diff --git a/docs/reference/file-map.md b/docs/reference/file-map.md index 23a1e45..3be9a2d 100644 --- a/docs/reference/file-map.md +++ b/docs/reference/file-map.md @@ -296,6 +296,27 @@ input and goes looking for a rename. `backlog.md:16` contains `path/to/file.js:120` inside a fenced format template. It is a placeholder, not a reference — do not resolve it. +### D5 — `T2.1`'s premise is already satisfied: there are no "three near-copies" + +`wave-2.md:25` asks to "lift the drawer into one shared implementation the pages include, +rather than three near-copies". There are no copies. `html/wp-sidenav.js` (221 lines) and +`html/wp-sidenav.css` (90 lines) are already **one** implementation, included by admin, +field view and directory. Verified: `.wp-sidenav`, `.wp-navscrim` and `.wp-navbtn` are +declared in exactly one file, and no page defines its own drawer. + +The review said the drawer "ships on 3 of 6 pages while a flat strip duplicates it". The +duplication is between the drawer and the **flat strip**, not among three drawers. The plan +appears to have read "3 of 6 pages" as "3 copies". + +It already meets every `T2.1` done-when as it stands, including the last one: `activeProjectId()` +(`wp-sidenav.js:62-68`) reads `?project=` then falls back to `ProjectData.getActiveId()`, which +is the single source `T1.1` established. It also self-mounts into `.wp-appbar` **or** `.header` +and returns early inside an iframe, so it is already built to go on the remaining pages. + +**Consequence:** `T2.1` is a no-op beyond this verification. The real work of wave 2 is `T2.2`. +Nothing was refactored, because refactoring a single shared component into a single shared +component would be churn with regression risk and no gain. + ### D4 — the creator overflows horizontally at 1440px, not just at 390px Measured during `T0.2`, not in the review. Content width against the viewport it was given: