T2.1 - B1 part 1: the drawer is already one shared component; verified, not rebuilt
No code change. T2.1 asks to lift the drawer out of "three near-copies" into one shared implementation. There are no copies to lift. html/wp-sidenav.js and html/wp-sidenav.css are already a single implementation included by admin, field view and directory. .wp-sidenav, .wp-navscrim and .wp-navbtn are each declared in exactly one file, and no page defines its own drawer. The review's sentence was that 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 read "3 of 6 pages" as "3 copies". It already satisfies every T2.1 done-when, including the one that could have failed: activeProjectId() at wp-sidenav.js:62-68 reads ?project= and 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 for the pages T2.2 has to put it on. Refactoring a single shared component into a single shared component would be churn with regression risk and nothing gained, so nothing was touched. Recorded as file-map D5 so the next reader does not go looking for the copies either. The real work of this wave is T2.2. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user