Skip to content

Webapp: correct the mapping count and record the data repair on the About timeline - #113

Merged
emmanuelgjr merged 1 commit into
mainfrom
fix/webapp-count-correction
Sep 18, 2026
Merged

emmanuelgjr merged 1 commit into
mainfrom
fix/webapp-count-correction

Conversation

@emmanuelgjr

Copy link
Copy Markdown
Contributor

Item 1 of the three follow-ups to #35.

Changes

  1. Landing paragraph: 3,781 → 3,771 control mappings. Fix #35: parse control identifiers by framework grammar, not by column position #110 removed ten rows that were table header lines the parser had mistaken for mappings, so the claim was stale by exactly those ten.
  2. A new row on the About timeline recording the repair: identifiers now parsed by each framework's own grammar rather than by column position (611 rows had held requirement text where an identifier belongs), the registries migrated off the ids that produced (1,541 → 991 controls), and the MITRE ATLAS re-transcription with 34 rows left DRAFT.

The earlier timeline rows — including v4.0's "1,372 controls" — are left exactly as they are. They record what shipped at the time, which is what a timeline is for; the new row is what tells a reader the number moved and why.

Scope

Data-fed content only, two lines. No structural change, no new markup, no script. C1 respected: the row names no person.

Verification

  • The new row renders: the About page shows 9 timeline rows, the last being this one, with both its date and text populated.
  • npm run test:scripts: 85 passed, 0 failed — including the route smoke test from Test the webapp: render every route in CI #104, which walks all 15 routes and checks every timeline row has a date and text.
  • node scripts/validate.js: 0 errors.

Still hardcoded

That landing sentence holds 51 entries, 26 frameworks and the mapping count as literal text, so it can drift again — this is the second time it has. The page already computes registry totals live from the data bundles. Say the word and I'll render those three figures the same way, which would need a small script change rather than a data edit, so I have not done it under C2.

🤖 Generated with Claude Code

…imeline

The landing paragraph still claimed 3,781 control mappings; #110 removed ten
rows that were table header lines the parser had mistaken for mappings, so
the figure is 3,771.

The About timeline gains a row for the repair itself — identifiers now parsed
by each framework's grammar rather than by column position, the registries
migrated off the ids that produced (1,541 → 991 controls), and the MITRE
ATLAS re-transcription. The earlier rows are left as they are: they record
what shipped at the time, which is what a timeline is for.

Data-fed content only; no structural change.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@emmanuelgjr
emmanuelgjr merged commit a741f31 into main Sep 18, 2026
6 checks passed
@emmanuelgjr
emmanuelgjr deleted the fix/webapp-count-correction branch September 18, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant