Repository navigation
Improve DOMStack outputs, authoring, and incremental builds - #3
Merged
bcomnes merged 6 commits intoSep 19, 2026
Merged
Conversation
This was referenced Sep 16, 2026
Contributor
Author
|
Added the responsive sidebar fix: collapse the documentation index at 820px, matching the point where the docs grid moves the sidebar above the article. Previously it collapsed at 980px, leaving an empty sidebar column between 821px and 980px. Validated the build, 32 temporary Playwright assertions covering docs/spec layouts, resizing, mobile controls and no-JavaScript navigation, plus all 18 existing browser tests. No permanent tests added. |
bcomnes
added this pull request to stack #4
September 16, 2026 04:29
bcomnes
force-pushed
the
refactor/domstack-improvements
branch
from
September 18, 2026 23:58
311dc64 to
ef83d25
Compare
bcomnes
marked this pull request as ready for review
September 19, 2026 00:03
jwerle
approved these changes
Sep 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack: 2 of 3 — depends on #2
Full stack: #2 → #3 → #5, managed with
gh stack. #5 adds the blog, GitHub author registry/cache, feeds, source edit links, and related visual refinements. Those additions are intentionally excluded from this layer.Review this diff against
refactor/typescript-tooling, not master. Merge #2 first, then retarget/rebase this PR onto master as needed (especially if #2 is squash-merged).This is the website-improvements slice extracted from #1. The TypeScript tooling replacement is isolated in #2.
Summary
Native DOMStack data and outputs
src/globals/, co-locate search/LLM templates with outputs, and use shared import aliases.pageOutputshooks. Preserve raw URLs/bytes, skip unchanged raw writes, and clean up deleted/renamed outputs.Authoring and redirects
redirectFrommetadata. Retain full root-layout chrome, canonical/no-JavaScript fallback, and query/fragment behavior. Legacy?p=handling remains separate.Incremental global data
page.sourceId.Clients and assets
npm startfordomstack --watch; no separate dev/preview commands.Review guidance
Most changed-file count is the mechanical removal of one frontmatter title from each of 585 docs. Article bodies and raw exports are unchanged. Review runtime code separately from that mechanical migration.
Suggested order: global data/index and shared layouts; artifacts/page outputs; title and redirect helpers; registry/vars checks; clients/styles; tests and docs.
The initial split matched the preserved combined checkpoint exactly. Subsequent commits add the sidebar breakpoint fix, beta.8/beta.9 upgrades, and migration cleanup; the current tree intentionally differs from that checkpoint.
Validation
Full
npm run checkpassed on this stacked branch:Actual global-data work measured by the watcher:
All 1,238 output files were also verified byte-identical before/after the beta.7 index implementation. Raw output checks prove one body edit rewrites only its raw file and a title-only edit rewrites none.
Limits
State copying, projection, fingerprint traversal, and some page setup still have whole-site costs; beta.9 reuses unchanged Markdown source preparation. Dependency tracking has known import-alias/static-re-export limitations; restart watch mode after edits to such helpers. Navigation metadata changes still invalidate the shared navigation consumers by design. Ingestion remains manual and separate from builds.
Local browser tests used
ORO_BROWSER_EXECUTABLEwith Brave; CI installs Playwright Chromium. Newly triggered CI status is separate from local validation.Related framework work: bcomnes/domstack#325. Original application plan: #1 (comment).
Migration cleanup
Full npm run check passed after cleanup, including browser tests, actual watch checks, audits, and reproducibility. Historical conversion tooling remains in Git history.