From c2e35b926135bbbaca7858bb74416f1eb7b54c08 Mon Sep 17 00:00:00 2001 From: "n.siegfried" Date: Fri, 14 Aug 2026 17:55:02 -0500 Subject: [PATCH] T0.1 - build the file map and verify the plan's line references Wave 0 exists because the plan's line numbers came from a review of users/directory-super-user rather than a fresh read. This is the fresh read: 7 pages, 6 stylesheets, 11,867 lines, with each page's stylesheets, scripts and iframe role recorded, and all seven baseline counts captured with the command that produced them. Four discrepancies, one of which matters a great deal: D2 - CLAUDE.md's "logged-override path for predecessors stays (A1). See wp-creation-app.js:1962-1972" cites the wrong function. That range is dashIssue(), which REFUSES to issue and says "open the package to release it early with a logged reason". The reviewer read that sentence and correctly inferred an override exists, but cited the mention rather than the code. The audited path is confirmEarlyRelease() at 967-984 plus seven satellites (state at 392, call sites at 998 and 1149, persisted at 1117, rendered at 1215, rehydrated at 1674, reset at 481/488/1744). A T7.3 that preserved only 1962-1972 would delete the business rule while believing it had protected it. D1 - "6 pages, 4 stylesheets" is 7 and 6; wave-0's own parenthetical lists seven names. Every "all 6 pages" done-when is off by one. D3 - four documents the plan reads from are deliverables not yet written. D4 - the creator overflows horizontally at 1440px, which no F item covers. Logged as BL-001 rather than fixed, since T7.1 rebuilds that layout anyway. BL-002 records that outline:none appears three times in the wizard sheet, not once, so T3.4 fixes all three. Counts confirmed against the review: 79 dialogs (43 in the creator), 12 div and 2 span onclick, 15 help-tip badges, 0 aria-live, 0 pushState. The "4 declarations of #0f62fe" needed a definition - there are 31 occurrences and 14 custom-property declarations; the 4 is the number of stylesheets declaring their own accent token, which is the number wave 9 should drive to 1. No application code changed. Co-Authored-By: Claude Opus 5 (1M context) --- docs/reference/file-map.md | 303 +++++++++++++++++++++++++++++++++++++ docs/waves/backlog.md | 28 ++++ 2 files changed, 331 insertions(+) create mode 100644 docs/reference/file-map.md diff --git a/docs/reference/file-map.md b/docs/reference/file-map.md new file mode 100644 index 0000000..4e070ba --- /dev/null +++ b/docs/reference/file-map.md @@ -0,0 +1,303 @@ +# File map — `html/` and the references the plan depends on + +**Task:** `T0.1` · **Produced:** August 14, 2026 · **Branch:** `feat/wp-suite-r2-implementation` + +Wave 0 exists because the item IDs and line numbers in this plan came from a UX review of +branch `users/directory-super-user`, not from a fresh read. This document is the fresh read. +Everything below was verified against the working tree, not quoted from the review. + +**Read the [Discrepancies](#discrepancies) section before starting any wave.** Four things the +plan asserts are wrong, and one of them (`A1`) guards a code path CLAUDE.md says must not change. + +--- + +## 1. Pages + +`html/` holds **7 pages, 6 stylesheets, 11,867 lines**. The plan says "6 pages, 4 stylesheets, +roughly 11,900 lines" — the line count is right, the other two are not. See D1. + +| Page | Called in this plan | Lines | Stylesheets (load order) | Scripts (load order) | Iframe | +|---|---|---|---|---|---| +| `html/login.html` | login | 163 | `theme-light.css` | `login.js` | neither | +| `html/index.html` | launcher | 703 | `theme-light.css`, `wp-chrome.css` | `auth-guard`, `wp-format`, `feedback-config`, `project-data`, `help`, *(inline 418–700)*, `wp-chrome` | neither | +| `html/work-package-suite.html` | SOP wizard | 437 | `theme-light.css`, `wp-chrome.css`, `work-package-suite-styles.css` | `auth-guard`, `wp-format`, `feedback-config`, `project-data`, `help`, `work-package-suite-app`, `wp-chrome` | **hosts** | +| `html/wp-creation-index.html` | creator | 401 | `theme-light.css`, `wp-creation-styles.css` | `auth-guard`, `wp-format`, `feedback-config`, `project-data`, `help`, `wp-creation-app` | **child** | +| `html/admin.html` | admin | 219 | `theme-light.css`, `wp-chrome.css`, `console.css`, `wp-sidenav.css` | `auth-guard`, `wp-format`, `console-util`, `admin`, `wp-chrome`, `wp-sidenav` | neither | +| `html/users.html` | directory/users | 106 | `theme-light.css`, `wp-chrome.css`, `console.css`, `wp-sidenav.css` | `auth-guard`, `wp-format`, `console-util`, `users`, `wp-chrome`, `wp-sidenav` | neither | +| `html/field.html` | field view | 93 | `theme-light.css`, `wp-chrome.css`, `wp-sidenav.css` | `auth-guard`, `wp-format`, `project-data`, `help`, `field`, `wp-chrome`, `wp-sidenav` | neither | + +No script anywhere in `html/` uses `defer`, `async`, or `type="module"`. Every one is a +render-blocking classic script. `auth-guard.js` and `wp-format.js` load in ``; the rest +load at the end of ``. + +### The iframe boundary (matters for `B7` / `T7.1`) + +`work-package-suite.html:383` declares `