Skip to content

ci(13.x): use checked-in registry schema for generated checks - #2892

Merged
bokelley merged 2 commits into
13.xfrom
conductor/13x-registry-determinism
Sep 14, 2026
Merged

bokelley merged 2 commits into
13.xfrom
conductor/13x-registry-determinism

Conversation

@bokelley

@bokelley bokelley commented Sep 14, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Make the 13.x generated-file gate deterministic by generating registry types from the checked-in schemas/registry/registry.yaml snapshot instead of the live unpinned registry endpoint.

The workflow hashes the checked-in schema, generates twice without --sync, verifies the second output is byte-identical, and retains the tracked generated-file diff gate so meaningful schema or type drift still fails.

Exact stack

Evidence

  • Rebase range-diff: both reviewed commits =; P2 binary patch and workflow blobs are unchanged
  • npm ci — passed
  • npm audit — 0 vulnerabilities
  • Workflow lint — 16/16 passed
  • Two offline registry generations — schema and type hashes unchanged
  • Detached normal generated-check sequence — passed with no tracked diff
  • Workflow-only changeset simulation — passed
  • Repository format and diff checks — passed
  • Fresh independent exact-stack review — no blockers

Release and protection boundary

This PR is workflow-only and does not change package versions, release triggers, permissions, tags, npm state, or GitHub settings. Checks remain advisory because 13.x is currently unprotected.

The workflow changes cannot self-prove their new 13.x pull-request trigger on these PRs because the base workflows exclude 13.x. After P3 lands, maintainers must observe exact new checks, configure protection separately, and refresh #2890. No auto-merge is requested.

@aao-secretariat aao-secretariat Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ladon verdict: Approve

Approve — workflow-only PR (+7/-3, two files: .github/workflows/changeset-check.yml, .github/workflows/ci.yml).

Checked:

  • Makes the 13.x registry-types generated-file gate deterministic by dropping --sync, hashing the checked-in schema, generating twice, and verifying byte-identical output. The determinism block does not flake on the // Generated at: timestamp because writeFileIfChanged skips writes when only the timestamp differs; the unchanged git diff -I gate still catches real schema drift.
  • Changeset correctly not required — .github/workflows/** is exempt, and the exemption is correctly extended to ci.yml.
  • No touches to src/lib/**, bin/**, or transport clients; witness-not-translator and official-transport rules not implicated.

No blocking or medium findings. high_risk false, gated_paths false, no author team gate. Falls through to row 9.

Base automatically changed from conductor/repair-13x-dependency-audit to 13.x September 14, 2026 11:45
@bokelley
bokelley merged commit ac23688 into 13.x Sep 14, 2026
8 checks passed
@bokelley
bokelley deleted the conductor/13x-registry-determinism branch September 14, 2026 11:46
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