Skip to content

id: implement #3870 phase 4 — coordinator state machine + recovery for region-seam handoff #3903

Open

Description

@dezren39

Phase 4 of #3870 (journaled region-seam export/import, design #2818, doc doc/2026-11-01_design_id2818.md in PR #3875, §8 packet 4). GATED on Phase 3 (destination import) landing.

Scope: Coordinator state machine + recovery.

  • Coordinator journal: HandoffStarted, observed source/destination receipts, HandoffCompleted (and pre-export HandoffCancelled only after proving no source export committed). Coordinator journal stores NO entity payloads.
  • Serialize handoffs per entity; drive source export then destination import; correlate receipts by handoff_id + entity + epoch + module/schema + digest.
  • Region-map / owner switch ONLY after matching durable destination receipt AND durable HandoffCompleted; owner epoch increments once per completed handoff.
  • Retry/reconcile after crashes at every seam (design §5 recovery matrix): query each side by handoff_id, append missing observations, resend the same envelope — never a new handoff ID, never automatic rollback after export.

Acceptance: failure-injection coverage for coordinator and region restarts at each protocol transition; no completion without a matching durable destination import; no duplicate entity.

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 — state=picked_up; task_id=5866; worker=repo-worker-code; lane=openchamber-scheduled-lane; note=Claimed from repo-health-code-pilot; revalidating prerequisite #3902 and ownership before edits.

  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 — state=parked; task_id=5866; worker=repo-worker-code; lane=openchamber-scheduled-lane; resume_after=2026-11-01T18:39:55Z; note=Parked for 30 minutes because prerequisite #3902 remains OPEN; resume only after #3902 is closed or its fix PR is merged. No files changed.

  5. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  6. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  7. added
    queue/claimedQueue worker lifecycle state
    and removed
    status/parkedDeliberately paused with a recorded resume condition
    on Nov 1, 2026
  8. 315 remaining items

  9. added and removed
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Nov 5, 2026
  10. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: picked-up
    queue: repo-health-code-pilot
    task: 5866 (small_fix, worker repo-worker-code, lane 9aca43b4-5439-4939-9f71-323f5d32521b)
    by: openchamber-scheduled-lane
    at: 2026-11-05T00:22:31Z

    Revalidated #3903 OPEN. Hard predecessor #3902 is still OPEN and fresh PR search finds no implementation PR; Drew-authored PR #3931 remains OPEN and untouched. No branch/worktree created. I will park this claim for 30 minutes and resume only when #3902 closes or its implementation PR merges.

  11. 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 5, 2026
  12. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: parked
    queue: repo-health-code-pilot
    task: 5866 (small_fix, worker repo-worker-code, lane 9aca43b4-5439-4939-9f71-323f5d32521b)
    by: openchamber-scheduled-lane
    at: 2026-11-05T00:23:10Z

    Parked for 30 minutes. Fresh checks: #3902 remains OPEN, and the all-state PR search found no implementation PR. Resume only after #3902 closes or its fix PR merges. Drew-authored PR #3931 is OPEN and remains untouched; no implementation worktree was created.

  13. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: parked
    queue: repo-health-code-pilot
    task: 5866 (small_fix, worker repo-worker-code, lane code-e)
    by: lane code-e shift
    at: 2026-11-05T00:55:00Z

    Parked for 30 minutes. Fresh revalidation: issue #3903 is OPEN with no hard-stop labels; hard predecessor issue #3902 is still OPEN, and a fresh all-state PR search for #3902 found no implementation PR. Resume only after #3902 closes or its fix PR merges. No branch or worktree created; no other PR touched.

  14. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  15. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  16. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    Lane A (code-a) claimed task 5866 for issue #3903 (direct execution lane) and revalidated the gate before any work: issue #3903 states it is GATED on Phase 3 (destination import) landing. Fresh check: Phase 3 issue #3902 is still OPEN and Phase 2 issue #3901 is also still OPEN, so the gate is not met and there is nothing sound to implement yet. Parking task 5866 until the gate closes (see the park note).

  17. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    Parked by lane A (code-a): task 5866 parked for 6h. Gate check (fresh): issue #3902 (#3870 Phase 3, destination import) is OPEN and issue #3901 (Phase 2) is OPEN — the hard gate named in task 5866 and issue #3903 has not landed. Resume condition: #3902 (and #3901) closed/landed; then implement Phase 4 per design #2818 §8 packet 4. No code touched.

  18. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

    Fresh gate revalidation (2026-11-05 ~20:02Z, this shift):

    Expectation: task 5866 parked 6h, no implementation attempted and no worktree created. Resume condition unchanged: issue #3902 closes or its implementation PR merges; then revalidate issue #3903, issue #3902, main, and PR ownership before starting phase 4.

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 conditiontask/triageQueue packet kind: verify, reproduce, and route this itemwork/assignedQueue worker lifecycle state

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions