Repository navigation
Replace Python ingestion and audit tooling with TypeScript - #2
Merged
Merged
Conversation
This was referenced Sep 16, 2026
bcomnes
added this pull request to stack #4
September 16, 2026 04:29
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: 1 of 3 — merge this first
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.Base:
master. This is the tooling-only slice extracted from #1. Next: #3, which stacks the DOMStack website improvements on this branch.Summary
Replace Python ingestion, audit, and test-serving infrastructure with TypeScript/Node while keeping the current website implementation unchanged.
tools/audits/with a shared entry point. Derive expected raw outputs from committed source metadata; navigation JSON remains generated in this PR.tools/serve-output.ts.Scope boundaries
src/relative to master.package-lock.jsonare unchanged.The small
#lib/*package alias supports the extracted tooling. The public-copy helper moves to TypeScript, with its existing importer updated to reference the new extension.Validation
Full
npm run checkpassed in an isolated worktree with an independentnpm ciusing the unchanged lockfile:git diff master -- srcis empty; whitespace checks pass.Local browser validation used installed Brave through
ORO_BROWSER_EXECUTABLE; CI installs Playwright Chromium. Newly triggered CI results should be checked separately.History preservation
The original combined branch is preserved at
515761e. The initial stack split (#2 → #3) reproduced that exact tree, verified by matching Git tree IDs. Subsequent commits add fixes, dependency upgrades, and cleanup. See #1 for the prior discussion and design history.Cleanup validation
The tooling-test cleanup passed the full npm run check in the isolated tooling worktree, including 12 browser tests and reproducibility. No src or dependency changes were added to this layer.