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 `