Skip to content

ci(base-std-sync): route base-std docs/b20 to the B20 section - #2105

Merged
soheimam merged 1 commit into
masterfrom
feat/update-base-std-automation
Oct 12, 2026
Merged

soheimam merged 1 commit into
masterfrom
feat/update-base-std-automation

Conversation

@soheimam

@soheimam soheimam commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

What changed? Why?

base-std is becoming the Base Standard Library, with one docs/<feature>/ folder per standard. base-std#240 (approved) moves every B20 doc from docs/ to docs/b20/ (Slack thread). Once it merges, the current route table would stop matching any B20 doc. This PR updates the base-std docs sync so that changes in base-std's docs/b20/ map to the B20 section of Base Docs.

  • B20 docs → B20 section. The 15 B20 product-doc rules now match docs/b20/.... The Base Docs pages each rule updates are unchanged. docs/b20/integration-architecture.md, which never had a rule, now routes to the B20 overview and the precompiles page. docs/b20/README.md and the root AGENTS.md are ignored.
  • Changelog entries scoped to B20. The changelog-entry pattern only matches B20 products: B20*, PolicyRegistry and ActivationRegistry. Entries for other standards are reported as unrouted, and their rows are skipped on the B20 changelog summary. Before this, the BaseTime entry from base-std#238 was filed as a B20 changelog page (see docs: feat(base-time): expose the BaseTime predeploy read surface (base-std@740ee5d) #2095).
  • Pure moves are skipped. The workflow derives a trusted unchanged_renames list from the commit API: renames with zero changes. The script skips those files and lists them under "Moved source files". Without this, merging base-std#240 would send every B20 page to the model with a header-only diff. Renames that also edit content still route by their new path.
  • The sync README documents how feature folders map to Base Docs and how to onboard a new standard.

How has it been tested?

  • node --test scripts/sync-from-base-std/__tests__/*.test.mjs: 114 pass. npm test: 125 pass. node scripts/validate-docs-structure.js passes. The workflow YAML parses.
  • New fixture code-change-docs-b20-move.json uses base-std#240's real file list. It checks that every surviving file is routed or ignored, that pure moves and removed paths produce no work, and that edited renames route by their new path.
  • Replayed base-std@740ee5d (the commit behind docs: feat(base-time): expose the BaseTime predeploy read surface (base-std@740ee5d) #2095) through the old and new tables:
    • The old table creates a B20 changelog page and summary row for BaseTime.
    • The new table creates neither and lists the BaseTime files as unrouted.

Screenshots

N/A (no user-facing changes)

Generated with Toshi

…pe changelog entries to B20

base-std#240 moves every B20 doc under docs/b20/ so each Base standard gets
its own docs/<feature>/ folder. Update the route table to match:

- Point the 15 B20 product-doc rules at docs/b20/... (same Base Docs targets).
- Route docs/b20/integration-architecture.md (previously unrouted) to the B20
  overview and the precompiles page; ignore docs/b20/README.md and AGENTS.md.
- Limit changelog-entry rules to B20 products (B20*, PolicyRegistry,
  ActivationRegistry). Other standards (e.g. BaseTime, see #2095) are
  reported as unrouted and their rows are skipped on the B20 changelog summary.
- Skip renames with no content change (new unchanged_renames list derived from
  the commit API) so a folder move does not send every page to the model.
- Add a base-std#240 fixture, tests for the changelog scope and pure moves, and
  fix a stale errors/events expectation.
@cb-heimdall

cb-heimdall commented Oct 12, 2026 •

Copy link
Copy Markdown
Collaborator

✅ Heimdall Review Status

Requirement Status More Info
Reviews ✅ 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@soheimam
soheimam merged commit 8cf2ce6 into master Oct 12, 2026
14 checks passed
@soheimam
soheimam deleted the feat/update-base-std-automation branch October 12, 2026 19: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.

3 participants