Skip to content

id: implement #3870 phase 2 — program transfer contract + source export/fence #3901

Open

Description

@dezren39

Phase 2 of #3870 (journaled region-seam export/import, design #2818, doc doc/2026-11-01_design_id2818.md in PR #3875, §8 packet 2). GATED on Phase 1 (journal/schema foundation phase issue) landing.

Scope: Program transfer contract + source export/fence — no external route exposes it yet.

  • Pure WorldProgram::prepare_entity_transfer hook (typed Export/Import variants; default returns unsupported) alongside the current trait at pkgs/id/src/world/mod.rs:871-925.
  • Region-sharded mode gate: state-changing commands in sharded mode must be entity-addressed; legacy unscoped Input rejected in that mode only.
  • Complete bounded entity payload: 16 KiB v1 cap, oversize refused BEFORE the source is fenced.
  • Source path order is prepare/validate → persist EntityExported → apply in-memory → acknowledge (persist-before-apply precedent pkgs/id/src/world/actor.rs:882-900; do NOT route through WorldActor::deliver, actor.rs:401-440). No receipt until apply/replay succeeds.
  • Source-side stale-write rejection: after the export entry is durable, the actor rejects entity-targeted input for that entity_ref.

Acceptance: tests prove deterministic replay, persist-before-apply, durable fence, oversize-before-fence refusal, and no receipt on apply failure (recovery by replay).

Parent: #3870. Design: #2818.

Activity

  1. added
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    on Nov 1, 2026
  2. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — task 5864 picked up by OpenChamber scheduled lane (2026-11-01). Revalidated that #3901 is open. The packet gate requires #3900 to land first; it is still open and actively owned by queue task 5863 on queue/5863-3900-journal-foundation. No files changed; parking this task for 30 minutes until #3900 lands.

  3. added
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    status/parkedDeliberately paused with a recorded resume condition
    and removed
    queue/claimedQueue worker lifecycle state
    on Nov 1, 2026
  4. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — task 5864 parked (2026-11-01). Blocker: gated predecessor #3900 has not landed; it remains open and actively owned by task 5863 on queue/5863-3900-journal-foundation (#3900 (comment)). Queue task 5864 parked for 30 minutes; resume only after fresh verification that #3900 is closed / its fix is merged. No branch or worktree created; no files changed.

  5. added
    queue/claimedQueue worker lifecycle state
    and removed
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Nov 1, 2026
  6. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — task 5864 picked up again by OpenChamber scheduled lane (2026-11-01). Freshly verified #3901 is open and gated predecessor #3900 is still open with active task 5863 on queue/5863-3900-journal-foundation (#3900 (comment)). No files changed; checking in and parking again until the predecessor lands.

  7. 94 remaining items

  8. developing-today commented on Nov 7, 2026

    @developing-today
    Contributor

    Released by repo-worker-code-f (outcome: done). Triage CONFIRMED: gate cleared (phase 1 #3900 CLOSED); EntityExported foundation on main be7346d, prepare_entity_transfer absent (unbuilt); fix routed on #3901 (task/fix + status/triaged + queue/queued).

  9. added
    task/fixhas a fix task queued
    status/triagedTriaged and routed (see agent note)
    queue/queuedHas a queued task in the Supabase agent queue
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    task/triageQueue packet kind: verify, reproduce, and route this item
    on Nov 7, 2026
  10. dezren39 commented on Nov 8, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  11. added
    work/assignedQueue worker lifecycle state
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    status/parkedDeliberately paused with a recorded resume condition
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 8, 2026
  12. developing-today commented on Nov 8, 2026

    @developing-today
    Contributor

    🤖 Agent note · handed off

  13. developing-today commented on Nov 8, 2026

    @developing-today
    Contributor

    🤖 Agent note · handed off

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

Metadata

Metadata

Assignees

Labels

app/idPackage/app: id (pkgs/ or apps/ in this repo)queue/parkedQueue task is parked (waiting on CI, time, or an event)source/creatorFiled by the new-issue-creator jobstatus/parkedDeliberately paused with a recorded resume conditionstatus/triagedTriaged and routed (see agent note)task/fixhas a fix task queuedwork/assignedQueue worker lifecycle state

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions