Skip to content

chore(release): prepare v0.45.0 beta-57 - #2544

Merged
jeremi merged 8 commits into
mainfrom
release/v0.45.0
Nov 3, 2026
Merged

jeremi merged 8 commits into
mainfrom
release/v0.45.0

Conversation

@jeremi

@jeremi jeremi commented Nov 3, 2026 •

Copy link
Copy Markdown
Member

Prepare Registry Stack v0.45.0 (beta-57), including #2543. Registry Evidence sources move into reviewed Adapter packs, and the Adapter adds governed ingestion jobs that deliver source records to BReg or the Registry Coordinator. BReg adds Record timers and a registry time zone; the Coordinator can follow BReg Proposals and read the record in force on a date. Every operator tool writes one shared report envelope.

The notes cover fresh BReg and Coordinator state, the runtime configuration file ownership check, and the shared operator report envelope. The Adapter and Document Store remain source-only in this release. The Discovery client compatibility metadata now declares Discovery 0.45.

The identifier catalog also changes: the BReg ODRL vocabulary record (vocab/breg-odrl/) no longer declares an artifact. The identifier publisher serves a slash-terminated URI as a page and could not build that record, so every catalog sync since it was added refused; publication needs that sync to pin this release. The read-policy profile URI still serves the JSON-LD. The catalog generator now refuses an artifact on a slash-terminated URI, with a test. The manifest binds the new catalog digest.

The shared test helper for value-free diagnostic captures also changes. While only one tracing dispatcher is registered, tracing-core decides a newly reached callsite's interest from the reaching thread alone, so a parallel test thread with no subscriber could disable a shared diagnostic for a scoped capture. That made the Casework, Scheduling, Messaging and BReg diagnostic tests fail at random, including on this PR. The helper now keeps one permanently registered no-op dispatcher; a single-test binary reproduces the race and fails without the fix. The helper is test-only and is linked by no shipped binary.

Evidence:

  • Strict release rehearsal on the final release branch: running. Earlier rehearsals passed before the review-date fix and before the test-helper fix; an earlier one, before the catalog fix, passed 10 of 10 jobs.
  • Identifier publisher: its import, build, pinned-upstream check and full test suite pass against this branch's catalog (306 identifiers; 88 artifact and 215 problem routes resolve; the vocabulary page builds).
  • Fresh image evidence: passed. Renewal moved only the application layers of all 10 images; the runtime base, OCI process contracts, the 12 existing exceptions per image and their 2027-01-26 expiry are unchanged. Each renewed exception records 2026-11-03, the UTC review date, because the candidate gate refuses a review dated after the UTC day. Exposure reports match the reviewed evidence except Evidence, which gains gethostname, sendto and recvfrom imports from the resolver that Adapter pack Sources link; its rationale records them. Dry run, reviewed write, rationale update and final zero-change dry run passed; baseline and renewal tests: 77 passed, one Linux-only test skipped on macOS.
  • Final clean-source planner (registry-release prepare): ready on the final head. Manifest validation, the identifier catalog check and reference closure, and redacted Gitleaks passed. The catalog is not compiled into any image, so the image evidence above still applies.

The protected-main candidate build and publication follow after this PR merges.

DCO:

  • Every commit includes a Signed-off-by trailer.
  • I reviewed the submitted changes and am responsible for the contribution.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-03T20:07:18.994170Z c85b7fc New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Bind the existing image advisory decisions to the Linux evidence rebuilt from the prepared release source after the Adapter and Evidence pack changes merged. Only application layers moved; the runtime base, process contracts, findings and expiry are unchanged. The Evidence rationale now records the resolver socket imports the Adapter pack Sources add.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fcde3c8a2a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

The identifier publisher serves a slash-terminated URI as a directory
page and has no path for an artifact at the same URI, so it could not
build the BReg ODRL vocabulary record and refused every catalog sync
that carried it. The vocabulary now cites the read-policy profile as its
source, like the Registry Record vocabulary; the profile URI still
serves the JSON-LD artifact. The catalog generator refuses an artifact
on a slash-terminated URI so the publisher never receives one again.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
The ODRL vocabulary fix changes the committed catalog bytes; the manifest binds the new digest. The entry count is unchanged.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
…reads

While only one dispatcher is registered, tracing-core computes a newly
reached callsite's interest and the global level limit from the reaching
thread's default alone. A parallel test thread with no subscriber that
reached a shared diagnostic callsite first disabled it for the capture
too, so value-free diagnostic tests in Casework, Scheduling, Messaging
and BReg captured nothing at random. The capture helper now keeps one
permanently registered no-op dispatcher, so every interest computation
sees the live capture. A single-test binary reproduces the race
deterministically.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
…w date

The renewal wrote the reviewer's local date, a day ahead of UTC. The
candidate gate compares reviewed_at with the UTC date and refuses a
future review, so a candidate built before UTC midnight would refuse
all ten baselines. The runbook records reviewed_at as date -u.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
@jeremi
jeremi added this pull request to the merge queue Nov 3, 2026
Merged via the queue into main with commit e9361a8 Nov 3, 2026
85 checks passed
@jeremi
jeremi deleted the release/v0.45.0 branch November 3, 2026 21:19
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