8000 T119 — Deliver cohort connections and redeem them for the named box · Issue #2855 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content

T119 — Deliver cohort connections and redeem them for the named box #2855

Closed

Description

@norrietaylor

Task

slice size difficulty model who estimated lines
Host-address boxes reach GitHub L unknown ground strongest an agent 620 (260 code, 360 tests)

A host-address box's request through the proxy is admitted for the box its sealed value names, checked against that box's egress, and recorded in that box's audit log as cohort-attributed.

Covers:

  • BEP-084

Layers:

  • delivery:
    • crates/switch/src/bep_host.rs: while the cohort's lane is open, the node address holds a share of the connection pool, box_id_for_source answers the cohort for it, and the delivery header carries the reserved cohort id, never a member's id
    • crates/minvmd/src/box_registry.rs: the box_id_for_source impl answers the cohort for the node address while a lane member is resident
    • crates/minvmd/src/cmd/run.rs: the second box_id_for_source impl answers the same
    • crates/bep/src/listener.rs: the header doc and its parse name the reserved cohort id, which maps to Attribution::HostIpCohort
    • cargo nextest run -p switch cohort_delivery_names_no_box
  • redeem:
    • crates/bep/src/redeemer.rs: under Attribution::HostIpCohort the egress re-check and the audit subject read the box the sealed value names, which must be a live host_ip box of this host; a value naming an own_ip box, an ended box or a box of another host is refused and audited cohort_misattributed
    • cargo nextest run -p bep cohort_redemption_uses_named_box_egress_and_subject
    • cargo nextest run -p bep cohort_value_naming_no_live_host_ip_box_is_refused

Waits on:

Plan block
### T119 — Deliver cohort connections and redeem them for the named box
  slice: S17
  kind: task
  covers: BEP-084
  size: L
  est: 260 code, 360 tests
  executor: agent
  difficulty: unknown ground
  model: strongest
  diagnostics: `min box audit <box>` shows a host-address box's requests marked `cohort_attributed` under the box the sealed value names, with that box's egress verdict
  observability: the proxy's existing audit record carries the attribution, `box` or `cohort`, and the subject box id it was evaluated for
  layers:
    - delivery:
      - crates/switch/src/bep_host.rs: while the cohort's lane is open, the node address holds a share of the connection pool, `box_id_for_source` answers the cohort for it, and the delivery header carries the reserved cohort id, never a member's id
      - crates/minvmd/src/box_registry.rs: the `box_id_for_source` impl answers the cohort for the node address while a lane member is resident
      - crates/minvmd/src/cmd/run.rs: the second `box_id_for_source` impl answers the same
      - crates/bep/src/listener.rs: the header doc and its parse name the reserved cohort id, which maps to `Attribution::HostIpCohort`
      test: cargo nextest run -p switch cohort_delivery_names_no_box
    - redeem:
      - crates/bep/src/redeemer.rs: under `Attribution::HostIpCohort` the egress re-check and the audit subject read the box the sealed value names, which must be a live `host_ip` box of this host; a value naming an `own_ip` box, an ended box or a box of another host is refused and audited `cohort_misattributed`
      test: cargo nextest run -p bep cohort_redemption_uses_named_box_egress_and_subject
      test: cargo nextest run -p bep cohort_value_naming_no_live_host_ip_box_is_refused
  produces:
    - cohort-attributed delivery
  consumes:
    - the cohort's proxy lane at the host gate
    - the revocation of an ended host-address grant box
  proof: A host-address box's request through the proxy is admitted for the box its sealed value names, checked against that box's egress, and recorded in that box's audit log as cohort-attributed.
  depends on:
    - blocked by #2854
    - blocked by #3032

Activity

  1. added
    kind:taskA task the plan skill rendered; the body carries ## Task
    size:L500 to 900 net lines; one PR, and the ceiling
    model:strongestThe strongest model available: unknown ground, or large work that needs care
    on Nov 2, 2026
  2. minimal-foundry commented on Nov 5, 2026

    @minimal-foundry
    Contributor

    Done. #3065 merged.

    branch agent/2855-deliver-cohort-connections-and-redeem-them-for-t · epic #1501 · PR #3065

    round outcome job
    1 pushed e66b248d

    Updated 2026-11-05T23:20:07.971Z.

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:strongestThe strongest model available: unknown ground, or large work that needs caresize:L500 to 900 net lines; one PR, and the ceiling

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0