Skip to content

id: investigate: TigerBeetle cluster topology decision — 3 vs 6 replicas, site placement, commit latency #2064

Closed

Description

@dezren39

Source: the TigerBeetle investigation (on #2040). Cluster size cannot be changed after formatting, so this decision gates any deployment: 3 replicas tolerate ONE failure; the vendor production recommendation is 6 across 3 sites (2 per site, sites within a few ms); cross-cloud commits pay inter-site RTT on every transfer. Compare the three-machine idea (maybe one per cloud) against the recommendation with failure cases and latency numbers; end with a recommendation. Specialist-grade: the ramifications are the point.

Program: Drew's 2026-10-28 directive (full text: hatch-personal memory/topics/id-program-2026-10-28.md). Parent epic: #2056.
Working pattern: parallel investigations, then the named synthesis issue merges them into a full design. Route guidance: Workhorse by default; Specialist/Summit for synthesis and ramification-heavy work. A result that says "done" is not the endpoint — the orchestrator reviews it and may commission another round. Deliverables: a markdown design/investigation doc (mermaid/SVG diagrams welcome) linked from this issue, plus follow-up issues for anything buildable. Build a proof of concept where the design calls for one, but do NOT build the permanent feature on top of an unreviewed PoC.

Acceptance criteria

  • A markdown investigation doc is linked from this issue comparing 3-replica vs 6-replica TigerBeetle topologies, including site placement options.
  • Failure cases are enumerated for each option (failures tolerated: 3 replicas = 1, 6 across 3 sites = vendor production recommendation) and commit-latency numbers are given, including cross-cloud inter-site RTT cost per transfer.
  • The doc ends with a single recommendation, since cluster size cannot be changed after formatting and the decision gates any deployment.
  • Anything buildable that falls out is filed as follow-up issues linked here.

Activity

  1. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    Parent epic: #2056 — ID platform expansion (2026-10-28 directive). Filed as batch 2 from PREPARED-ACTIONS.md.

  2. added
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    on Oct 29, 2026
  3. developing-today commented on Oct 29, 2026

    @developing-today
    Contributor
  4. added
    kind/questionQuestion or design decision to resolve
    source/humanFiled directly by a human
    priority/normalOrdinary priority (the default)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 29, 2026
  5. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    Intake review

    Related: parent epic #2056; source investigation #2040; gates any TigerBeetle deployment and therefore #2062/#2063/#2065.

    Notes: flagged Specialist-grade in the body ('the ramifications are the point') — this is the one irreversible decision in the currency track, so depth beats speed here.

    Risks: latency numbers need a stated measurement basis (vendor figures vs measured RTT between candidate sites); an ungrounded comparison would not settle the decision.

    Suggested approach: Specialist-grade investigation per program route guidance; end with one recommendation, not a menu.

    — Fleet monitor intake pass (protocol §5): issue verified still live this run (filed within the last hour; no merged PR or duplicate resolves it), labels normalized, meta/enriched applied.

  6. added
    priority/highImportant and time-sensitive
    queue/queuedHas a queued task in the Supabase agent queue
    on Oct 29, 2026
  7. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    Top priority — ID program wave-1. Drew directed this be picked up in the next runs (2026-10-29): enqueued directly as triage task 3366 in repo-health-code-pilot at queue priority 20 (only breakage-class work at priority 10 outranks it). Wave-1 is the ungated investigations and designs; syntheses and PoCs stay gated on their named inputs. Investigation route: Workhorse.

  8. 19 remaining items

  9. 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 Oct 29, 2026
  10. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  11. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  12. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked (merge queue stall)

  13. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · triaged / done

  14. removed
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    work/assignedQueue worker lifecycle state
    on Oct 29, 2026
  15. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done

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/questionQuestion or design decision to resolvemeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/highImportant and time-sensitivepriority/normalOrdinary priority (the default)source/humanFiled directly by a humanstatus:done

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions