[codex major, docs-only] Normative docs contradict the landed frontend — fix the docs #76

Closed
opened 2026-09-05 00:15:04 +00:00 by crueber · 4 comments
Owner

[codex major, docs-only] Normative docs contradict the landed frontend — fix the docs

docs/go/README.md:18, docs/go/01_overview.md:374, docs/go/14_extensibility.md:27 (plus docs/go/12_web_ui.md:15 and later decisions) still mandate a zero-dependency unbuilt vanilla SPA. The landed web/package.json:11 ships SolidJS + router + Vite + Tailwind, explicitly permitted by the AGENTS.md D-WEB-6 amendment. Per law 12 and the reporter's direction (docs match the codebase, not the other way around — NO code rewrite), update the contradicting passages to describe the SolidJS SPA reality (runtime deps, vite build into web/dist/, SDK esbuild bundle, Tailwind v4 CSS-first, plain JSX/JS, dark by default), keeping every other contract intact.

Fix

Docs-only change: rewrite the stale passages in the four files (+ any other stale vanilla-ESM normative text found by grep: vanilla, zero-dependency, zero runtime, esbuild dev-only, no framework, no CSS framework) to match the shipped stack, each with a Decisions-bullet pointer to D-WEB-6. NO product code changes. Verify with grep that no normative vanilla-SPA requirement remains.

Acceptance criteria

  • Grep-clean: no remaining normative vanilla/zero-dep SPA mandates contradicting web/package.json.
  • Each touched doc carries a Decisions entry pointing at the D-WEB-6 amendment.
# [codex major, docs-only] Normative docs contradict the landed frontend — fix the docs `docs/go/README.md:18`, `docs/go/01_overview.md:374`, `docs/go/14_extensibility.md:27` (plus `docs/go/12_web_ui.md:15` and later decisions) still mandate a zero-dependency unbuilt vanilla SPA. The landed `web/package.json:11` ships SolidJS + router + Vite + Tailwind, explicitly permitted by the AGENTS.md D-WEB-6 amendment. Per law 12 and the reporter's direction (docs match the codebase, not the other way around — NO code rewrite), update the contradicting passages to describe the SolidJS SPA reality (runtime deps, vite build into `web/dist/`, SDK esbuild bundle, Tailwind v4 CSS-first, plain JSX/JS, dark by default), keeping every other contract intact. ## Fix Docs-only change: rewrite the stale passages in the four files (+ any other stale vanilla-ESM normative text found by grep: `vanilla`, `zero-dependency`, `zero runtime`, `esbuild dev-only`, `no framework`, `no CSS framework`) to match the shipped stack, each with a Decisions-bullet pointer to D-WEB-6. NO product code changes. Verify with grep that no normative vanilla-SPA requirement remains. ## Acceptance criteria - [ ] Grep-clean: no remaining normative vanilla/zero-dep SPA mandates contradicting `web/package.json`. - [ ] Each touched doc carries a Decisions entry pointing at the D-WEB-6 amendment.
Author
Owner

Starting docs-only fix: branching docs/issue-76 from origin/main, rewriting stale vanilla-SPA passages to match shipped SolidJS stack per D-WEB-6.

Starting docs-only fix: branching docs/issue-76 from origin/main, rewriting stale vanilla-SPA passages to match shipped SolidJS stack per D-WEB-6.
Author
Owner

Fixed by PR #85 (#85): docs-only change on branch docs/issue-76, 13 docs files, zero product files. All stale vanilla-SPA mandates rewritten to the shipped D-WEB-6 SolidJS stack; each touched doc has a Decisions entry pointing at D-WEB-6; docs/ grep verification is clean (only SUPERSEDED/Historical context remains). Awaiting review — not merged.

Fixed by PR #85 (https://git.packden.us/crueber/walhub/pulls/85): docs-only change on branch docs/issue-76, 13 docs files, zero product files. All stale vanilla-SPA mandates rewritten to the shipped D-WEB-6 SolidJS stack; each touched doc has a Decisions entry pointing at D-WEB-6; docs/ grep verification is clean (only SUPERSEDED/Historical context remains). Awaiting review — not merged.
Author
Owner

PR #85 review (docs-only verified: 13 docs files, zero product files — re-checked after my push).

Accurate, cross-checked vs reality (package.json, vite.config.mjs base /_ui/ + emptyOutDir, web/embed.go all:dist, Makefile web/test-web targets, web/src + web/test layout, router.go, .woodpecker/pipeline.yaml): dep budgets, build order/load-bearing emptyOutDir, embed pattern, make snippets in 12 §5b/15 §7, Setup.jsx path, index.html excerpt, D-WEB-6 pointers in all 13 touched docs' Decisions sections. The health.go:353 webAsset comment (sdk/src/css paths) is confirmed the only stale product comment — correctly left alone (docs-only PR).

Found + fixed (pushed 6c62bc7 to origin/docs/issue-76, docs only): 12_web_ui claimed lazy() code-split routes — index.jsx uses static imports (fixed in intro, §2.3, §4, 02/03 'router-lazy' wording); claimed web/src/components/.jsx — nonexistent, shared UI is App.jsx (fixed §2.1, §4); §3 table '/assets/' → '/_ui/assets/' per router.go/health.go; main.js/pages/.js/template leftovers → index.jsx/pages/.jsx (fixed §5, incl. smoke skeleton which imported nonexistent helpers/server.js — real helper is helpers/fetch.js, smoke lives at unit/smoke.test.js); 'node --test web/test/' → 'web/test/unit/.test.js' in 15 (x3) + 16 (x2, incl. woodpecker snippet — matches real pipeline.yaml:28); '/setup/assets/' → '/_ui/assets/' in 06 (x3: route table, setup-only list, Setup UI para); dropped phantom 'Solid-signal subscriptions' test case (no unit test imports solid-js) + fixed setup-form.test.js name; Solid batching/memo wording corrected to real Solid semantics.

Pre-existing observations (not this PR, left untouched): 12 §Decisions issue-#34 bullet cites web/src/components/Empty.jsx + lib/compare.js, neither exists in web/src; 06 §3.1 sketch shows r.Mount('/setup') vs real r.Get('/setup'); AGENTS.md 'web/dist/.keep is tracked' — no such file on main or branch (PR's removal of the .keep claim was itself a fix).

MERGE RECOMMENDATION: ready to merge (docs-only, verified accurate after 6c62bc7).

PR #85 review (docs-only verified: 13 docs files, zero product files — re-checked after my push). Accurate, cross-checked vs reality (package.json, vite.config.mjs base /_ui/ + emptyOutDir, web/embed.go all:dist, Makefile web/test-web targets, web/src + web/test layout, router.go, .woodpecker/pipeline.yaml): dep budgets, build order/load-bearing emptyOutDir, embed pattern, make snippets in 12 §5b/15 §7, Setup.jsx path, index.html excerpt, D-WEB-6 pointers in all 13 touched docs' Decisions sections. The health.go:353 webAsset comment (sdk/src/css paths) is confirmed the only stale product comment — correctly left alone (docs-only PR). Found + fixed (pushed 6c62bc7 to origin/docs/issue-76, docs only): 12_web_ui claimed lazy() code-split routes — index.jsx uses static imports (fixed in intro, §2.3, §4, 02/03 'router-lazy' wording); claimed web/src/components/*.jsx — nonexistent, shared UI is App.jsx (fixed §2.1, §4); §3 table '/assets/*' → '/_ui/assets/*' per router.go/health.go; main.js/pages/*.js/template leftovers → index.jsx/pages/*.jsx (fixed §5, incl. smoke skeleton which imported nonexistent helpers/server.js — real helper is helpers/fetch.js, smoke lives at unit/smoke.test.js); 'node --test web/test/' → 'web/test/unit/*.test.js' in 15 (x3) + 16 (x2, incl. woodpecker snippet — matches real pipeline.yaml:28); '/setup/assets/*' → '/_ui/assets/*' in 06 (x3: route table, setup-only list, Setup UI para); dropped phantom 'Solid-signal subscriptions' test case (no unit test imports solid-js) + fixed setup-form.test.js name; Solid batching/memo wording corrected to real Solid semantics. Pre-existing observations (not this PR, left untouched): 12 §Decisions issue-#34 bullet cites web/src/components/Empty.jsx + lib/compare.js, neither exists in web/src; 06 §3.1 sketch shows r.Mount('/setup') vs real r.Get('/setup'); AGENTS.md 'web/dist/.keep is tracked' — no such file on main or branch (PR's removal of the .keep claim was itself a fix). MERGE RECOMMENDATION: ready to merge (docs-only, verified accurate after 6c62bc7).
Author
Owner

Fixed by PR #85 incl. review-found accuracy fixes (lazy routes, components dir, asset paths, test paths), merged. Closing.

Fixed by PR #85 incl. review-found accuracy fixes (lazy routes, components dir, asset paths, test paths), merged. Closing.
crueber added this to the v1 milestone 2026-09-10 22:27:20 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crueber/walhub#76
No description provided.