Repository navigation
Closed
Labels
kind:taskA task the plan skill rendered; the body carries ## TaskA task the plan skill rendered; the body carries ## Taskmodel:standardA standard model: work that needs care, or routine work that is largeA standard model: work that needs care, or routine work that is largesize:M200 to 500 net lines; one PR200 to 500 net lines; one PR
Description
Task
| slice | size | difficulty | model | who | estimated lines |
|---|---|---|---|---|---|
| Audit segments rotate and the chain is checked | M | needs care | standard | an agent | 490 (250 code, 240 tests) |
After rotation,
min box auditstill shows a box's whole trail, and a restart still refuses a destroyed box.
Covers:
- BEP-068
Layers:
- audit:
- crates/bep/src/audit.rs: segments rotated with the chain carried, revocation segments retained (BEP-068)
- crates/bep/src/main.rs:
bep servepasses the revocations restored from every retained segment toBoxRedeemer::with_revocations, and drops the revocation interim and its clause from the startup warning (T41) - crates/bep/src/revoke.rs: restores every revocation from every retained segment at start
cargo nextest run -p bep segment_rotation_continues_chaincargo nextest run -p bep revocations_restored_from_every_segment_on_startcargo nextest run -p bep segment_with_live_revocation_is_retained
- cli:
- crates/minimal/src/cmd/box_audit.rs: reads every retained segment
cargo nextest run -p minimal box_audit_reads_across_segments
Waits on:
- T19 — Clone, push and gh from a box with no token in it, end to end #2276
- T20 — Record a revocation when a live box is destroyed and refuse its values within a minute #2277
Plan block
### T33 — Rotate audit segments with the chain carried across and revocations restored
slice: S5
kind: task
covers: BEP-068
size: M
est: 250 code, 240 tests
executor: agent
difficulty: needs care
model: standard
diagnostics: `min box audit <box>` reads across every retained segment, so a box's trail is whole after rotation
observability: one info log line per rotation with the closed segment and its final hash, and one at start with the revocations restored
layers:
- audit:
- crates/bep/src/audit.rs: segments rotated with the chain carried, revocation segments retained (BEP-068)
- crates/bep/src/main.rs: `bep serve` passes the revocations restored from every retained segment to `BoxRedeemer::with_revocations`, and drops the revocation interim and its clause from the startup warning (T41)
- crates/bep/src/revoke.rs: restores every revocation from every retained segment at start
test: cargo nextest run -p bep segment_rotation_continues_chain
test: cargo nextest run -p bep revocations_restored_from_every_segment_on_start
test: cargo nextest run -p bep segment_with_live_revocation_is_retained
- cli:
- crates/minimal/src/cmd/box_audit.rs: reads every retained segment
test: cargo nextest run -p minimal box_audit_reads_across_segments
produces: none
consumes:
- crates/bep/src/revoke.rs
proof: After rotation, `min box audit` still shows a box's whole trail, and a restart still refuses a destroyed box.
depends on:
- blocked by #2276
- blocked by #2277
Generated by Claude Code
Reacted by minimal-foundry
Metadata
Metadata
Assignees
Labels
kind:taskA task the plan skill rendered; the body carries ## TaskA task the plan skill rendered; the body carries ## Taskmodel:standardA standard model: work that needs care, or routine work that is largeA standard model: work that needs care, or routine work that is largesize:M200 to 500 net lines; one PR200 to 500 net lines; one PR
Activity
docs(bep): mark the redeemer's interims and their flip issues
norrietaylor commentedon Oct 22, 2026
One layer line added so that T41's arch residual has an owner: once the revocations are restored from every retained segment at start,
bep serve(crates/bep/src/main.rs) passes the restored set toBoxRedeemer::with_revocationsand drops the revocation interim and its clause from the startup warning (#2486, thread 4343746515).Generated by Claude Code
feat(bep): wire the redemption decision and each box's declared egres…
fix(bep): filter revocations to the value's box in the redeemer
minimal-foundry commentedon Oct 25, 2026
Done. #2583 merged.
branch
agent/2290-rotate-audit-segments-with-the-chain-carried-acr· epic #1501 · PR #25835200bc893bc04a93978dca422a6a886dUpdated 2026-10-26T05:17:41.914Z.
feat(bep): record a revocation when a live box is destroyed (T20) (go…