Skip to content

pkgs/id crate split — step 3: extract id-sync (log_sync + wire layer; artifact lands here) #4406

Open

Description

@dezren39

Crate split step 3 of 7 — from the merged design

Design: doc/2026-11-01T16-53-00Z_design_id_crate_split/2026-11-01T16-53-00Z_design_id_crate_split.md (merged as PR #3824, 2026-11-01). Tracking issue: #3447. Program: #3195 (build-time review; Drew's priority order — shipped-binary runtime performance first, build time second).

Scope (design, verbatim intent)

Design step 3: id-sync. log_sync and the wire layer move; artifact lands here with its availability trait (seam 9).

Current state

Not started. (The pre-design phase plan's 'Phase 3 id-sync' was never enqueued; queue task 5855 was blocked as packet_defect against the merged design and is superseded by this step's issue/task.)

Dependency — do not start early

Step 2 (id-store, id-events) merged. If this step's queue task is claimed before the dependency lands, park it with that reason.

Fuel canary (non-negotiable, every step): the FUEL_BUDGETS tables in pkgs/id/src/sandbox.rs must be byte-identical after this step; the fuel-tables diff is committed in the step PR. Any drift means behaviour changed and the step stops. Full verification protocol: design note §"Verification protocol".

Verification protocol (design, every step): one PR; main green throughout; the shipped binary is built by the same Nix derivations at every point (all three entry points: the sub-flake's id-web and id-lib, and default.nix); test count matches or exceeds the step-0 baseline with any delta named; cold check-build timing recorded on #3447 and #3195 with the laptop load noted. Heavy builds run under ~/tools/fleet-build-lock on the laptop (max 2 concurrent, CARGO_BUILD_JOBS = half the cores) — there is no load gate (Drew, 2026-11-02).

Acceptance criteria

  • The extraction lands as its own PR off current main, sequenced after its predecessor step (see Related).
  • The id facade re-exports the extracted crate so existing call sites compile unchanged in behavior.
  • CI green on the PR (workspace build + the id test suites), including the F11.10 production-line guard.
  • This issue closes with the merge; the next step's issue is unblocked in sequence.

Activity

  1. added
    kind/performancePerformance problem or optimization
    priority/highImportant and time-sensitive
    queue/queuedHas a queued task in the Supabase agent queue
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    on Nov 2, 2026
  2. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  3. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked — predecessor gate unmet

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

    @dezren39
    MemberAuthor

    Queue task 6300 verified-fresh and parking: step-2 dependency issue #4405 still OPEN (labels status/parked queue/parked), no open PRs for id-store/id-sync/id-events, and origin/main has only pkgs/id/crates/id-core — id-store has not landed. Step-3 extraction cannot proceed until step 2 merges. Resume when #4405 is closed/merged; re-check crates layout then. No worktree created, no files changed.

  6. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — task 6300 handed off: execution-lane assignment returned opencode, so this lane did not work the task or create a worktree. Checkpoint stage handed_off recorded; the opencode claimant launches the bound session. Carried gate context from task progress: step-3 depends on step-2 #4405 (id-store), which was still open with no id-store on origin/main at last check — the bound session should revalidate the dependency chain fresh.

  7. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  8. removed
    status/parkedDeliberately paused with a recorded resume condition
    on Nov 2, 2026
  9. 52 remaining items

  10. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  11. added
    expediteImportant - do this very soon, before anything not expedited
    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
  12. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

    • Agent: fleet monitor
    • Session / ID: task 6300 (repo-fleet-monitor run 2026-11-03 22:12 CST)
    • Found via: monitor reconciliation
    • Task: Claim evaporated — the queue task is queued and unclaimed again (lease expired with no complete/park/block), so the issue labels are reset to the truth: queue/queued + status/needs-triage. Checkpoint stage at evaporation: handed_off.
    • Expectation: a queue lane re-claims task 6300 and resumes from the checkpoint.
  13. 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
  14. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    task: 6300
    lane: code-q (repo-queue-worker-shift-q)
    state: handed_off (execution lane: opencode)
    Re-verified fresh 2026-11-04T17:36Z: issue #4406 OPEN, no hard-stop labels; step-2 dependency issue #4405 is still OPEN, so per the packet the claimant must park task 6300 naming that gate rather than start the step-3 extraction early. Labels synced queued -> claimed set. Handing to the opencode claimant.

  15. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 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)effort/lLarge: multi-day or open-ended; expect staged check-insexpediteImportant - do this very soon, before anything not expeditedkind/performancePerformance problem or optimizationmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/highImportant and time-sensitivequeue/claimedQueue worker lifecycle statesource/creatorFiled by the new-issue-creator jobstatus/in-progressQueue worker lifecycle statetask/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