Skip to content

docs(conformance, catalog): refresh universal-storyboards tables#3099

Merged
bokelley merged 2 commits into
mainfrom
bokelley/compliance-catalog-universal-table-refresh
Apr 25, 2026
Merged

docs(conformance, catalog): refresh universal-storyboards tables#3099
bokelley merged 2 commits into
mainfrom
bokelley/compliance-catalog-universal-table-refresh

Conversation

@bokelley

Copy link
Copy Markdown
Contributor

Summary

Both docs/building/conformance.mdx and docs/building/compliance-catalog.mdx carry an index of universal storyboards. Both had drifted from the truth in static/compliance/source/universal/ — the directory has 9 graded storyboards, the docs listed 5–7. Caught while sweeping for post-#3077 cleanup.

Changes

conformance.mdx — adds two missing rows:

compliance-catalog.mdx — adds four missing rows (the catalog was further behind than conformance.mdx):

compliance-catalog framing fix — the lead-in said "Every agent runs every storyboard… regardless of which protocols or specialisms it claims," which reads incorrectly against capability-gated rows (deterministic-testing, signed-requests). Reworded to acknowledge the gate explicitly, plus a closing paragraph: gated storyboards cannot be partially implemented; declare the capability false if you don't ship the full surface.

Why this is a docs PR

No new normative content. Both pages now reflect the 9 graded universal storyboards in matching order. The truth lives in static/compliance/source/universal/; this PR brings the index pages back into sync.

Out of scope

  • Adding a build-time check that asserts the doc tables ↔ filesystem are aligned. Worth a follow-up; would have caught this drift in CI.

Test plan

  • node scripts/build-compliance.cjs passes (✓ 12 universal, 6 protocols, 19 specialisms — the 12 includes 3 non-graded files: fictional-entities, runner-output-contract, storyboard-schema).
  • Mintlify broken-links / SEO checks (will run in CI).
  • No schema or task-definition changes — empty changeset per repo convention.

🤖 Generated with Claude Code

Both docs/building/conformance.mdx and docs/building/compliance-catalog.mdx
had stale universal-storyboards tables. static/compliance/source/universal/
now contains 9 graded storyboards; the docs listed 5–7. Drift accumulated
as new storyboards landed without back-filling the index pages.

- Add webhook-emission (universal since #2417 / 3.0; never indexed)
- Add pagination-integrity (recently landed; missing from both)
- Add idempotency to compliance-catalog (had it in conformance.mdx only)
- Add signed-requests to compliance-catalog (had it in conformance.mdx only,
  added there in #3077)

Framing fix in compliance-catalog: the lead-in claimed every agent runs
every universal storyboard regardless of claims — true in scope, but
confusing on capability-gated rows. Reworded to acknowledge the gating
(deterministic-testing, signed-requests) plus a closing paragraph that
gated storyboards can't be partially implemented (advertise false rather
than ship a partial surface).

Both index pages now reflect the same 9 graded universal storyboards in
the same order, matching the published /compliance/{version}/universal/
directory.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…tem (#3102)

* chore(compliance): lint that universal-storyboard doc tables match the filesystem

Prevents the drift #3099 just fixed from re-accumulating. Every graded
universal storyboard MUST appear in both docs/building/conformance.mdx
and docs/building/compliance-catalog.mdx; every backtick-quoted slug in
those tables MUST resolve to a real graded storyboard on disk.

Catches:
- New universal storyboard ships without a doc-table row (forward).
- Doc keeps a row for a renamed/deleted storyboard (reverse).
- Either index page loses its "Universal" heading.

Wiring:
- scripts/lint-universal-storyboard-doc-parity.cjs — new module exporting
  lint({ sourceDir, repoRoot }) plus helpers, with a CLI entrypoint.
- scripts/build-compliance.cjs — calls lint inside generateIndex, so the
  compliance build fails loudly on drift.
- tests/lint-universal-storyboard-doc-parity.test.cjs — 10 tests:
  source-tree guard, clean fixture, non-graded fixtures filtered out,
  forward parity (both docs), reverse parity (both docs), missing
  heading, helper unit tests.
- package.json — test:storyboard-doc-parity wired into the umbrella
  test target alongside other storyboard lints; CI picks it up
  automatically via npm run test.

"Graded" = YAML has a phases:[] array. Filters out the three non-graded
fixtures (storyboard-schema.yaml, runner-output-contract.yaml,
fictional-entities.yaml) that live alongside graded storyboards.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore(compliance): apply DX-review nice-to-haves to doc-parity lint

Two cheap improvements from the DX-expert review:

1. Forward-parity error message now mentions the slug form (kebab-case
   filename slug for compliance-catalog, snake_case YAML id for
   conformance). Parallels the reverse error which already had this hint.
   Helps a contributor adding a brand-new storyboard pick the right
   form without comparing existing rows.

2. JSX comment above each universal-storyboards table pointing at the
   lint script. Discoverability for contributors editing the docs
   directly — they see the rule before the build fails.

Tests still pass 10/10; build clean.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@bokelley bokelley merged commit 71cd18d into main Apr 25, 2026
20 checks passed
@bokelley bokelley deleted the bokelley/compliance-catalog-universal-table-refresh branch April 25, 2026 12:06
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