Skip to content

Phase D: shard lazy load/flush/idle-unload + recovery/compaction #122

Description

@brylie

Implements workspace-sharding.md §6, building on Phase B's real per-shard
docs.

  • Each shard unloads only when it has no authorized live connections,
    no active holds requiring it, and no unflushed state (extends
    workspace-store.ts's existing releaseContextIfIdle, unused since
    Phase 0 keeps its one workspace resident for the process lifetime).
  • Documented recovery/compaction behavior on restart.
  • Catalog stays small/resident enough to route and serve the sidebar
    without opening content shards.

Not in scope: the capacity benchmark re-run itself (Phase E) — this issue
implements the behavior §E measures.

Done when: an idle shard unloads and reloads correctly on next access, with
no data loss, verified by a restart/recovery test.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions