8000 T33 — Rotate audit segments with the chain carried across and revocations restored · Issue #2290 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

T33 — Rotate audit segments with the chain carried across and revocations restored #2290

Closed

Description

@norrietaylor

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 audit still 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 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
    • cargo nextest run -p bep segment_rotation_continues_chain
    • cargo nextest run -p bep revocations_restored_from_every_segment_on_start
    • cargo 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:

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

Activity

  1. added
    kind:taskA task the plan skill rendered; the body carries ## Task
    size:M200 to 500 net lines; one PR
    model:standardA standard model: work that needs care, or routine work that is large
    on Oct 17, 2026
  2. norrietaylor commented on Oct 22, 2026

    @norrietaylor
    MemberAuthor

    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 to BoxRedeemer::with_revocations and drops the revocation interim and its clause from the startup warning (#2486, thread 4343746515).


    Generated by Claude Code

  3. minimal-foundry commented on Oct 25, 2026

    @minimal-foundry
    Contributor

    Done. #2583 merged.

    branch agent/2290-rotate-audit-segments-with-the-chain-carried-acr · epic #1501 · PR #2583

    round outcome job
    1 pushed 5200bc89
    2 pushed 3bc04a93
    3 pushed 978dca42
    4 pushed 2a6a886d

    Updated 2026-10-26T05:17:41.914Z.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind:taskA task the plan skill rendered; the body carries ## Taskmodel:standardA standard model: work that needs care, or routine work that is largesize:M200 to 500 net lines; one PR

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0