Skip to content

id: implement hosted Worker API + per-user DO provisioning and metering (from #2046/#2852 slice 3) #3811

Open

Description

@dezren39

Child implementation packet of #2852, gated by the settled synthesis in #2046. Implement the first hosted data plane from #2044/#2045 and #2258 spec §5.

Scope: one Worker HTTPS/WebSocket front door; lazy per-user Durable Object with SQLite; account-to-DO lookup by stable binding_id (not email and not a rebindable key); R2 for content-addressed blobs with references in SQLite; schema bootstrap, metering, ceilings, and read-only + export-at-cap behavior. Use the binding/account records from slice 1. Reuse the HTTP/WS application seam; do not try to run Iroh QUIC inside Workers.

Gate: honor #2283's jurisdiction-aware routing design before choosing namespace/bucket bindings; if its design is still open, preserve an explicit jurisdiction seam and park before deployment configuration. Only hibernating WebSockets; no always-on per-user process/container.

Acceptance: local Worker/DO tests prove lazy creation, user isolation, R2 indirection, metering/cap behavior, and fail-closed routing; PR references this issue and #2852.

Activity

  1. added
    kind/featureNew feature or capability request
    task/small-fixQueue packet kind: bounded fix with reproduction and targeted tests
    source/queue-workerFiled or worked by the queue/worker pilot
    priority/highImportant and time-sensitive
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    on Nov 1, 2026
  2. developing-today commented on Nov 1, 2026

    @developing-today
    Contributor
  3. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  4. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

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

  7. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  8. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: picked-up

  9. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: triaged — live, split for implementation

    Verdict: the requested data plane is still unimplemented, but the old packet was too broad for small_fix and its blockers are stale. The prerequisites have moved: #2283 is CLOSED and design PR #3843 MERGED; #3808/#4854 and #3809/#4885 are MERGED; the #2046 ruling settled the parameters. pkgs/id/src/hosted_binding.rs now supplies the binding contract. Main has no production per-user hosted Worker/UserDO data plane. pkgs/id/worker-poc / PR #2848 is a world/Plaza isolate semantics PoC, not this per-user store.

    Split / next action: filed #5199 as the first bounded local-only implementation step and queued task 8897 (repo-health-code-pilot). It covers the Worker/UserDO foundation, stable binding_id, restricted jurisdiction routing, lazy versioned SQLite bootstrap, local tests, and reconciliation of the stale google:<sub> example in the jurisdiction design doc. R2 blob/reference accounting and metering/cap behavior remain later ordered steps under this umbrella; do not launch them in parallel with the base. Production deployment/bindings remain out of scope: #2285 is still OPEN with user/escalated (Drew authorization and deployed-account/vendor evidence absent), and #3403 remains blocked. No production residency claim is made. The signed-object sync bridge remains #3818.

    No code or tests were changed in this triage. #3811 stays open as the umbrella until its implementation steps land.

  10. removed
    task/small-fixQueue packet kind: bounded fix with reproduction and targeted tests
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Nov 3, 2026
  11. dezren39 commented on Nov 8, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · blocked (packet_defect)

  12. dezren39 commented on Nov 8, 2026

    @dezren39
    MemberAuthor

    Partial verification — staying open (2026-11-07 done-task-only audit, tracking: #7016).

    Queue task(s) [6882] were marked done, and some work did land:

    No merged change closes this issue's full scope, so the done status is not treated as completion. Remainder re-queued as triage task 11675.

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/featureNew feature or capability requestpriority/highImportant and time-sensitivequeue/blockedQueue or user escalation statesource/queue-workerFiled or worked by the queue/worker pilotstatus/blockedQueue or user escalation statework/assignedQueue worker lifecycle state

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions