Skip to content

chore: pre-release fixes and documentation for 0.28.0 - #948

Merged
jeremi merged 4 commits into
mainfrom
chore/pre-release-0.28.0
Sep 9, 2026
Merged

chore: pre-release fixes and documentation for 0.28.0#948
jeremi merged 4 commits into
mainfrom
chore/pre-release-0.28.0

Conversation

@jeremi

@jeremi jeremi commented Sep 8, 2026

Copy link
Copy Markdown
Member

Summary

Content fixes from the v0.27.0..main pre-release review, ahead of the 0.28.0 release. This PR does not bump the version, write release notes, or touch the release manifest; a separate release PR does that on top of this one.

Decisions applied (recorded in products/breg/DECISIONS.md):

Commits

  1. feat(evidence): preview source add by default and hide bregctl dev prepare-source: source_add.rs, source_cli.rs, bregctl dev/mod.rs (hide = true), tests, verify-composition.py review-path coverage, CI comment, starter clients.yaml to dev-clients.yaml renames, BReg evidence READMEs, DEV.md, EVIDENCE.md.
  2. docs(breg): record composition boundaries and align product contracts: root AGENTS.md (seven map rows, composition paragraphs, generated-outputs rule), products/breg AGENTS, README, DECISIONS, IMPLEMENTATION (W5 capability table), DEFINITION-OF-DONE and contracts/definition-of-done.yaml (nine rows), ACCEPTANCE-JOURNEYS (fifteen projects), external/README.md, release/notes/behavioral-guarantee-claims.md (thirteen links pinned to v0.19.0), Evidence deployment CONFIG.md (sourceConnections.*.baseUrl row).
  3. docs(site): publish the CLI reference and add the re-stamp rule: cli-reference.yaml stamped at 0.27.0, cli-reference-digest.mjs and npm run cli-reference:digest, sidebar seats for every published command page, tests, docs/site/AGENTS.md, release/OPERATIONS.md.
  4. docs(site): describe the unreleased BReg and Evidence changes: three explanation pages, retention page section, changelog Unreleased rewrite, pin advances v0.21.0 to v0.26.1, Evidence-from-BReg tutorial, sidebar and information-architecture test entries.

Security-sensitive review notes

  • evidencectl source add behavior change: the command now applies nothing unless --apply is passed. The interactive confirmation is removed; the entity, field, facts, and scope prompts remain when omitted in a terminal. The JSON report carries status: "preview" with a next sentence. Test every_bregctl_invocation_names_the_public_flags_source_add_declares and verify_source_add_review in verify-composition.py cover it.
  • Boundary statements (root AGENTS.md, products/breg/AGENTS.md): a governed action is an Evidence relying party and inherits no Evidence authorization; source add drives bregctl on PATH and neither product depends on the other's tooling crate.
  • Retention page: erase-expired deletes assertion bytes and verification context; receipts stay replayable. Wording is the command's help text.
  • No authentication, signing, or audit code changed.

Judgment calls worth a look

  • Sidebar seating. With the CLI reference published, the information-architecture seat gate named all 134 subcommand pages. cli-reference-sidebar.mjs now walks the generated tree and seats them in one flat collapsed CLI commands group, labeled by full command path (bregctl audit export). Flat because limitSidebarDepth flattens below the second level anyway; nested groups would render the same with ambiguous labels.
  • Definition of Done ids use a word suffix (BREG-V1-ACTION-HANDLERS), the precedent set by BREG-V1-PILOT, so validate_product.py needed no change. BREG-V1-ACTION-EVIDENCE-TRIAL and BREG-V1-EVIDENCE-RETENTION are the first partial rows; the journey mappings are best fit, not derived from the matrix.
  • products/breg/evidence/starter/README.md keeps its manual export path beside source add: source add --apply creates the Evidence project itself, refuses a settings-only targets/local, and exposes one selector, so the plain starter's teaching flow needs the hand path.
  • Changelog links for source add point at tutorials/first-breg because the two Evidence-from-BReg tutorials are still draft: true (Publish the BReg-to-Evidence tutorials on evidencectl source add #939).

Gates run

Rust (worktree, --locked): cargo fmt --check, cargo check --workspace --all-targets, clippy with -D warnings and tests for registry-evidencectl and registry-bregctl, products/evidence/scripts/check-contracts.sh, check-source-neutrality.sh, products/breg/scripts/check_source_neutrality.py, the non-live verify-composition.py path CI runs.

Products: validate_product.py and the products/breg unittests pass with the nine DoD rows.

Docs site: npm test 554 pass; npm run check exit 0 (check-llms 336 passed, SEO check passed, built link check 90388 internal links); npm run check:cli-reference exit 0; vale 0 errors on every changed or created page.

Left for the release PR

  • Bump the workspace version, then re-stamp cli-reference.yaml: npm run cli-reference:digest from docs/site, record both values and a fresh last_reviewed. The docs build refuses the release tree otherwise.
  • Older pins still on the site: tutorials/query-relay-client.mdx:249 and tutorials/itb-semic-evidence.mdx:34-35 (v0.20.0), reference/errors.mdx:147 and reference/apis/index.mdx:48 (v0.21.0), operate/breg.mdx:83 (bregctl 0.26.1, the majority pin on that page).

Out of scope, noted

  • crates/registry-bregctl/src/init_from_model/render.rs:1211: the generated project README still points readers at the hidden bregctl dev prepare-source.
  • products/breg/evidence/README.md:52 still documents --clients-file ./registry/clients.yaml for the copied fixture registry; that fixture was deliberately not renamed.

Follow-up tickets filed

#930 #931 #932 #933 #934 #935 #936 #937 #938 #939 #940 #941 #942 #943 #944 #945 #946 #947

…epare-source

`evidencectl source add` reviews the connection it would make and applies it
only with `--apply`; `--dry-run` and the interactive confirmation are gone.
`bregctl dev prepare-source` stays runnable but leaves `bregctl dev --help`,
because `source add` is the documented local BReg-to-Evidence path. Registry
starters ship `core/dev-clients.yaml`, the file a first `bregctl dev` reads
without `--clients-file`. The composition check in CI exercises the review
path, and the BReg evidence starter READMEs describe the same flow.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
Root AGENTS.md maps the seven crates it omitted and states both directions of
the BReg and Evidence composition: a governed action as an Evidence relying
party, and `evidencectl source add` driving `bregctl` on PATH with no crate
dependency either way. products/breg records the 0.28.0 decisions (the
unconditional Evidence dependency, the 24 h retention with operator-run
erasure) and brings IMPLEMENTATION, the Definition of Done and its contract,
and ACCEPTANCE-JOURNEYS in line with the shipped governed actions, native
patterns, membership boundaries, model derivation, starters, and dev
lifecycle. external/README.md carries the PublicSchema snapshot reachability
caution, behavioral-guarantee-claims.md pins its 13 links to v0.19.0, and the
Evidence CONFIG.md states the baseUrl constraint the runtime enforces.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
Stamp `cli-reference.yaml` current at workspace version 0.27.0 so the 135
generated CLI pages publish, and seat every published command page in the
sidebar in command order. `npm run cli-reference:digest` prints the two values
the record carries; docs/site/AGENTS.md and release/OPERATIONS.md require a
re-stamp in the same change as any clap or workspace version change, because
the generator refuses a build whose digest differs from the record.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
Add explanation pages for governed registry actions, native field patterns,
and membership read boundaries, adapted from products/breg; document
`bregctl evidence-retention erase-expired` and the 24 h Evidence-use
retention scope on the retention page; rewrite the Unreleased changelog
section with the breaking `bregctl dev` positional project; advance the
v0.21.0 pins on the operations and Mint pages to v0.26.1; and update the
Evidence-from-BReg tutorial to the report-then-`--apply` flow.

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

chatgpt-codex-connector Bot commented Sep 8, 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-09-08T19:00:25.074570Z c33e18c PR opened
ℹ️ 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.

@jeremi
jeremi merged commit 3d38cf8 into main Sep 9, 2026
50 checks passed
@jeremi
jeremi deleted the chore/pre-release-0.28.0 branch September 9, 2026 02:48
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