Skip to content

id: implement verified resumable user-store migration and safe cleanup #3402

Open

Description

@dezren39

Follow-up to #2283. Implement versioned export/import and migration orchestration after fenced control plane: preserve signed bytes and journal, manifest reachable blobs, copy across jurisdiction-specific buckets, verify content, hashes and signatures before CAS switch, then retain and clean source safely.

Acceptance: fault-injection tests cover interrupted copy/import, corruption, pre-switch abort, post-switch recovery and signature preservation; shared source blobs are never deleted without jurisdiction-local concurrency-safe reachability and retention proof; staging exercises one-account migration runbook. Depends on fenced migration and hosted storage interfaces; no cross-jurisdiction shared worlds (#2284).

Activity

  1. developing-today commented on Nov 1, 2026

    @developing-today
    Contributor
  2. added
    kind/infrastructureInfrastructure / host-portability work
    priority/normalOrdinary priority (the default)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    source/humanFiled directly by a human
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Nov 1, 2026
  3. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    Intake review

    Related: #2283 (parent), #3404 (fenced control plane — dependency), siblings #3399–#3401, #3403.

    Notes: Inline Acceptance present, with a strong fault-injection list (interrupted copy/import, corruption, pre-switch abort, post-switch recovery, signature preservation). Largest item in the set — effort/l. Sequenced last among the implementation children for a reason: it consumes the control plane and the storage interfaces.

    Risks: Source-blob deletion safety (jurisdiction-local reachability + retention proof before any delete) is the irreversible-step hazard; keep deletion behind its own verified gate.

    Suggested approach: Export/import + manifest verification first with fault injection in CI; CAS switch second; cleanup last, behind the retention proof.

    — fleet monitor intake (2026-11-01)

  4. added
    queue/queuedHas a queued task in the Supabase agent queue
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 1, 2026
  5. 138 remaining items

  6. added
    queue/queuedHas a queued task in the Supabase agent queue
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Nov 4, 2026
  7. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

    • Agent: fleet monitor (repo-fleet-monitor)
    • Session / ID: task 8235 · repo-fleet-monitor run 2026-11-03 18:12 CST
    • Found via: monitor reconciliation
    • Task: Claim evaporated — task 8235 returned to queued and unclaimed in repo-health-code-pilot after the holding run ended without a terminal verb (checkpoint stage: handed_off). Labels reset to the truth: queue/queued + status/needs-triage. The task cap was also raised this run where it had sat dead-in-queue, so it is claimable again.
    • Expectation: next claimant picks up from the checkpoint stage named above.
  8. added
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 4, 2026
  9. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    event: picked-up
    task: 8235 (repo-health-code-pilot)
    worker: repo-worker-code
    lane: OpenChamber scheduled lane c8b9355e-319a-4640-8096-7ad19480d151
    state: claimed; resuming the coverage triage at fresh GitHub state.
    next: verify parent/dependency issues and current-main artifacts, then route as ready work or park with exact gate evidence.

  10. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: triaged (current-main coverage)
    task: 8235 (repo-health-code-pilot)
    worker: repo-worker-code
    lane: OpenChamber scheduled lane c8b9355e-319a-4640-8096-7ad19480d151

    Verdict: #3402 remains live and is not implemented/superseded. Fresh GitHub state: #3402 OPEN; parent design issue #2283 CLOSED; design PRs #3406 and #3843 MERGED. Search for PRs mentioning #3402 found only the merged design PR #3406, no implementation PR.

    Current-main check: fetched origin/main at d42a183. In pkgs/id/src, no jurisdiction-aware migration/routing identifiers or implementation were found; the fencing matches are unrelated world-handoff and sandbox comments. The primary clone is locally ahead 1/behind 2 and has two untracked files, so I preserved it and did not fast-forward or alter its worktree.

    Blockers and order: #2285 is OPEN and explicitly queue/blocked + user/escalated; #3399 is OPEN/blocked/escalated; #3400 is OPEN/parked; #3401 is OPEN/blocked/escalated; #3404 is OPEN with claimed/in-progress labels. Phase 5 cannot safely start yet. Resolve the existing provisioning/authorization gate (#2285), land the directory and restricted-routing prerequisites (#3399/#3400), then provide the hosted storage/write interfaces (#3401) and fenced migration control plane (#3404) in their declared dependency order. Implement #3402 last: resumable export/import, manifest/hash/signature verification before CAS switch, then cleanup only with jurisdiction-local reachability and retention proof. Keep #2284 out of scope. Existing escalation is on the upstream gate issues; no duplicate escalation label or follow-up task added here.

    No code/worktree changes or tests were needed for this triage.

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)effort/lLarge: multi-day or open-ended; expect staged check-inskind/infrastructureInfrastructure / host-portability workmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)source/humanFiled directly by a humantask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions