Skip to content

id(phase-14): Scale & performance hardening — core topic (research + design) #6281

Open

Description

@dezren39

Scale & performance hardening — Phase 14 core topic (research + design)

Filed from the next-horizons discussion #1240, decided by Drew on 2026-11-05: all themes are planned. This issue is the core topic for Scale & performance hardening. Its job is research and design — broaden the idea beyond what is already understood, set up multiple next steps, and produce implementation plans. No implementation starts here; the output is design documents and implementation issues.

Drew's principles for everything in Phase 14 (from #1240, 2026-11-05)

  • Local-first is always the goal, AND a hosted version is intended: central coordination supporting a large graph of broadly accessible objects.
  • Anything built must be completely usable by others hosting a small or large server themselves. P2P-hosted worlds and data behave the same as a large hosted public server; differences live in backend scale elements and access controls.
  • Users connect to each other and transfer/interact directly wherever possible, so hosted resources are an offloadable backstop, not a requirement. The app must not technically need us to function. Collaborative / shared / federated / local-first / p2p.
  • Our hosted instance is essentially public; other operators open theirs only as much as they want. Publishing paths: share to a big server, publish on pkarr, or self-host. All comms through iroh on the backend; first-class clients.

The idea, broadened

Phase 12 makes worlds data; this topic makes them big. Broaden beyond benchmarks: the failure shapes of large worlds (journal growth, replay time, fan-out cost per frame, memory on small hosts), graceful degradation (what a world sheds first under load), and the difference between a big world on a laptop and a big world on the public server — same behavior, different budgets. Every claim here needs the harness (#539) and baselines (#542) to already exist; they now do.

Research questions (first pass)

  • Limits inventory: entities, journal entries, members, programs per world — measured, not guessed (stress harness on the laptop + CI)
  • Journal growth economics: snapshot/compaction policy, replay-time budget, cold-start of an old world
  • Fan-out: bytes/frame per member (extends id(world): F11.9 bytes-per-frame baseline table #542 baselines), backpressure, slow-member isolation
  • Degradation ladder: what sheds first — presence detail, history depth, program fuel — and who decides

Dependencies and existing pieces

Builds on #539 benchmark harness and #542 bytes-per-frame baselines (done), F11.7 metrics (#553, done), F12.10 scheduling (#1067), F12.12 presence at scale (#557), F12.13 replication (#806).

Next steps — the version ladder

  • v1 — first-iteration design — its own issue, filed in the same pass and linked in the first comment below
  • v2 — outline: growth policy — its own issue, filed in the same pass and linked in the first comment below
  • v3 — outline: multi-node chaos — its own issue, filed in the same pass and linked in the first comment below
  • v4 — outline: public-server targets — its own issue, filed in the same pass and linked in the first comment below

Plus a standing rule for this topic: anything the research surfaces that doesn't fit v1–v4 gets its own issue (Drew's rule: every feature, concept, or idea gets an issue), and future investigations are listed as comments here rather than lost.

Sequencing

Design queue order: F12.4 provider registry (#1061) and F12.10 scheduling/quotas (#1067) designs land first; Phase 14 v1 designs then run hosted worlds → discovery → agents spike → the rest. Implementation follows Phase 13. The drop rule applies throughout: anything that proves blocked, wrong, or superseded gets parked or closed with a note — never a silent stall.

Acceptance criteria

  • A research + design output exists for Scale & performance hardening: design documents broadening the topic beyond the current understanding, per the Phase 14 principles in the body (local-first plus hosted coordination).
  • Multiple concrete next steps are produced as implementation plans / implementation issues filed from this topic.
  • No implementation starts under this issue itself (per its own charter).

Activity

  1. developing-today commented on Nov 5, 2026

    @developing-today
    Contributor
  2. added
    source/humanFiled directly by a human
    priority/lowNice to have; do when convenient
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    on Nov 5, 2026
  3. added
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Nov 6, 2026
  4. dezren39 commented on Nov 6, 2026

    @dezren39
    MemberAuthor

    Intake review

    🤖 Fleet monitor intake (repo-fleet-monitor), 2026-11-06.

  5. added
    queue/queuedHas a queued task in the Supabase agent queue
    task/triageQueue packet kind: verify, reproduce, and route this item
    on Nov 6, 2026
  6. dezren39 commented on Nov 6, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  7. 2 remaining items

  8. 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
    on Nov 6, 2026
  9. dezren39 commented on Nov 6, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

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

    @dezren39
    MemberAuthor

    agent-note:v1
    task 11053 picked up by lane code-q and handed off: execution lane assigned opencode per fleet queue lane assignment. The laptop opencode claimant should launch the bound session; this lane will park task 11053 for 1200s to await binding. Issue #6281 verified OPEN with no hard-stop labels at handoff (fresh gh check).

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

    @dezren39
    MemberAuthor

    agent-note:v1

    • task: 11053
    • lane: code-v
    • event: handed_off
    • detail: Claimed by lane code-v; execution-lane assignment is opencode. Checkpointed handed_off and parked 1200s for the opencode claimant to launch the bound session.
  14. dezren39 commented on Nov 6, 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

No one assigned

    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 requestmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/lowNice to have; do when convenientqueue/parkedQueue task is parked (waiting on CI, time, or an event)source/humanFiled directly by a humanstatus/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