8000 feat(bep): name the kid when a store handle is refused as unknown_key (T70) by minimal-foundry[bot] · Pull Request #2592 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

feat(bep): name the kid when a store handle is refused as unknown_key (T70) - #2592

Merged
norrietaylor merged 1 commit into
mainfrom
agent/2580-name-the-kid-when-a-store-handle-is-refused-as-u
Oct 26, 2026
Merged

norrietaylor merged 1 commit into
mainfrom
agent/2580-name-the-kid-when-a-store-handle-is-refused-as-u

Conversation

@minimal-foundry
Copy link
Copy Markdown
Contributor

T70 — Name the kid when a store handle is refused as unknown_key

slice: S10
kind: task
covers: BEP-063
size: S
est: 20 code, 60 tests
executor: agent
difficulty: routine
model: standard
diagnostics: the store handle checked log line names the handle's header kid when the handle is refused as unknown_key
observability: the existing debug line gains the kid
layers:
- handle:
- crates/bep/src/handle.rs: read() puts the header kid in the store handle checked line for an unknown_key refusal; the store_handle_invalid audit marker and jti stay as they are
test: cargo nextest run -p bep an_unknown_key_refusal_names_the_kid
produces: none
consumes: none
proof: A store handle signed under a key the proxy does not hold is refused, and the log line names that key's kid.
depends on:
- assumes OQ3 (the mint reads the root certificate's own expiry, and the root is generated with a fixed default validity in one constant that gominimal/arch#85's ruling replaces)
- blocked by #2543


Generated by Claude Code

Proof

A store handle signed under a key the proxy does not hold is refused as store_handle_invalid, and its store handle checked debug line now reads outcome=unknown_key with kid="<that key's kid>". The test an_unknown_key_refusal_names_the_kid shows this and also shows that a bad_signature refusal carries no kid.

Notes from the agent: The kid comes from the unverified header, so it is logged escaped (Debug), the same as store and id. Only an unknown_key refusal logs the kid. The store_handle_invalid audit marker and the jti stay as they were. cargo clippy -p bep --all-targets and cargo fmt --check are clean.

Tests

line exit tail
cargo nextest run -p bep an_unknown_key_refusal_names_the_kid 0 Applying loadouts: default Running task runtime-implement-test-0 in session task-runtime-implement-test-0-3998... Compiling bep v0.0.1 (/workbench/crates/bep) Finished 'test' profile [unoptimized] target(s) in 15.28s ──────────── Nextest run ID e64b9295-d7ea-4b3a-90ca-5a70b53ac32d with nexte

Verify

min task run agent-verify passed ([tasks.verify]).

Closes #2580

The store handle checked debug line now carries the header kid for an
unknown_key refusal, so an operator can see which client key the proxy
does not hold (T70, BEP-063).
@coderabbitai
coderabbitai Bot commented Oct 26, 2026
Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 6e68c269-83bb-4873-9262-e8a2783b2450

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@minimal-foundry
minimal-foundry Bot commented Oct 26, 2026 •
Copy link
Copy Markdown
Contributor Author

Approved: no findings at 82cb748c73e6.

Nothing to do.

Verdict APPROVE, posted as a comment: the App cannot review its own pull request; the check and the label carry it.

Clobber: none seen.

@minimal-arch minimal-arch 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.

arch-review: PASS · the full ruling

This change conforms to Gatehouse §6.10 line 842. An unknown-key handle is still refused and audited as store_handle_invalid, and jti does not change. The kid goes only into the debug line. The design does not name fields for that line, and the value is escaped. The test proves the refusal and the new field. There are no conditions.

Ruled at 82cb748 against gominimal/arch@109541a48c31 by claude-opus-5-5.

@minimal-foundry minimal-foundry Bot left a comment
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

minimal-review — approved

Verdict APPROVE — No findings.

Panel: 3 of 3 personas ran (correctness, security, supply-chain).

@minimal-foundry minimal-foundry Bot added the review:approved minimal-review approved the current head label Oct 26, 2026
@norrietaylor norrietaylor left a comment
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Own review at 82cb748: the kid is read from the unverified header only when verify fails with UnknownKey, it is logged escaped (?kid), and the test pins both the named line and its absence for a bad signature. No findings.


Generated by Claude Code

@norrietaylor norrietaylor changed the title T70 — Name the kid when a store handle is refused as unknown_key feat(bep): name the kid when a store handle is refused as unknown_key (T70) Oct 26, 2026
@norrietaylor norrietaylor left a comment
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Babysitter approval at 82cb748: every merge gate passes at this head (arch PASS at 82cb748, zero open threads, every lane aggregator green). Squash title feat(bep): name the kid when a store handle is refused as unknown_key (T70) and the squashed message pass commitlint. Queued for squash merge.


Generated by Claude Code

@norrietaylor
norrietaylor added this pull request to the merge queue Oct 26, 2026
Merged via the queue into main with commit a1e65c5 Oct 26, 2026
37 checks passed
@norrietaylor
norrietaylor deleted the agent/2580-name-the-kid-when-a-store-handle-is-refused-as-u branch October 26, 2026 05:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review:approved minimal-review approved the current head

Projects

None yet

Development

Successfully merging this pull request may close these issues.

T70 — Name the kid when a store handle is refused as unknown_key

1 participant

0