Skip to content

epic(cluster): storage assembly & design validation #1085

Open

Description

@dezren39

Storage assembly & design validation

Purpose

The sketched storage tiers become real, tested pools with per-drive records.

Scope

Validate then build: HDD tier 3 hosts x 4x16 TB RAID 10 for RustFS cold buckets; fast NVMe tier (all Samsung 990s); mid tier striped x3 / mirrored x2 'RAID 100'. Install the 8 still-boxed HDDs and capture their baseline SMART/firmware data (NVMe baseline already exists on a backup drive). Per-drive records/passports so TALM and LINSTOR decisions have real data.

Execution mode

Physical: drive installation and machine assembly are hands-on; design validation, benchmarks, and record-keeping online. Physical tasks must state location, tools, and verification (photo/SMART output).

Dependencies

Depends on epics 1 (selection) and 3 (power). Feeds epics 6 and 8.

Acceptance

Design validated or revised in writing; first-node drives installed with baseline data recorded; pool layout per first node committed as config, not folklore.

Structure

Part of the basement cluster program. Project home: planning/roadmaps/basement-cluster.md in this repo. Full program register: goal workspace files/idea-register-2026-10-20.md (Muse goal goal_ba17a5777c21). Detailed task issues are filed as sub-issues of this epic; dependencies use blocks / blocked-by links.

Hard rules for the whole program: no HashiCorp anything; everything bootstrappable from config, no hand-built state.

Activity

  1. added
    area/infraInfrastructure, deployment, and operations
    epicMeta-issue grouping multiple items (org Project Type=Epic)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 27, 2026
  2. developing-today commented on Oct 27, 2026

    @developing-today
    Contributor
  3. added
    mode/physicalNeeds physical hands on site: build, install, cable, or configure devices
    on Oct 27, 2026
  4. dezren39 commented on Oct 27, 2026

    @dezren39
    MemberAuthor

    Epic map — basement cluster program

    # Epic Issue
    1 Hardware inventory & first-node selection #1080
    2 Firmware / BIOS / BMC audit #1081
    3 Basement power & space #1083
    4 Network fabric #1084
    5 Storage assembly & validation #1085
    6 TALM + Talos bootstrap #1086
    7 Cozystack platform #1087
    8 Platform services #1088
    9 Observability, backup & recovery #1090
    10 Cloud extension (OCI & egress) #1091
    11 First workload: ID app #1092
    12 ESP32 wing #1093

    This epic: #1085 — Storage assembly & validation
    Dependencies: Blocked by #1080, #1083; feeds #1086, #1088

    Filed in the 2026-10-26 cluster seed. Project home: planning/roadmaps/basement-cluster.md.

  5. dezren39 commented on Oct 27, 2026

    @dezren39
    MemberAuthor

    Predecessor: this epic supersedes dezren39/darwin-nix#504 (filed 2026-10-20 in the nix repo during the program's first filing pass). A superseded-pointer comment is on that issue; work happens here.

  6. added
    queue/queuedHas a queued task in the Supabase agent queue
    source/creatorFiled by the new-issue-creator job
    task/triageQueue packet kind: verify, reproduce, and route this item
    on Nov 3, 2026
  7. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    agent-note:v1
    state: triaged (coverage pass)
    Coverage pass 2026-11-03: reviewed in the fleet-wide per-issue pass (drift / overlap / already-handled / stale / blockers / ordering). Verdict: still live; queued in repo-health-code-pilot as triage at priority 30 (priority/none). If this is already handled at current main, the triage closes it with evidence; if it needs splitting, the triage files the split.
    Found via: coverage pass 2026-11-03

  8. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    Queue note (triaged, task 7642): verdict — still live, and not queue-workable yet. It is gated by the Now bucket and by hands-on hardware work.

    What it is

    Roadmap Next bucket (planning/roadmaps/basement-cluster.md): build the HDD RAID 10 pools and NVMe tiers, validated against per-drive records — 3 hosts × 4 × 16 TB in RAID 10 for RustFS cold buckets, an all-990-Pro NVMe fast tier, a striped-and-mirrored mid tier, plus the DRBD + LINSTOR replication design from epic 5, including the quorum/witness question (spare PC or Pi as tie-breaker).

    Why it cannot be worked from the queue right now

    Blocker State Why it gates this epic
    #1080 hardware inventory & first-node selection OPEN, status/needs-triage You cannot lay out pools before the first 3–5 nodes are chosen and their drives recorded
    #1081 firmware/BIOS/BMC audit OPEN, currently queue/claimed by another lane Drive/controller settings must be uniform before validation means anything
    #1083 basement power & space OPEN, user/owned, mode/physical Dedicated 20A circuits and rack layout are a Drew/human job; the machines cannot both run and be rebuilt without it

    Two further gates are inherent, not queue policy: the epic is mode/physical — it needs hands on the drives (cable, label, build pools) — and its acceptance requires per-drive records and a node-loss replication test, neither of which a code worker can perform.

    Gap found

    subIssues for #1085 is empty, as for #1088: the roadmap names the epic but no child tasks are filed. Filing children now would be premature — the pool layout per node depends on #1080's drive inventory. The right first child is the per-drive record format plus the inventory table, and it should be filed once #1080 closes.

    Verdict

    Keep open as roadmap content; do not re-queue for triage. Labels set to status/blocked + queue/blocked (was status/needs-triage + queue/queued).

    Unblock condition: #1080 selects the first nodes and #1083's power/space work is done, then a human-supervised session builds and validates the pools on the physical machines.

  9. added
    status/blockedQueue or user escalation state
    queue/blockedQueue or user escalation state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area/infraInfrastructure, deployment, and operationseffort/lLarge: multi-day or open-ended; expect staged check-insepicMeta-issue grouping multiple items (org Project Type=Epic)meta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedmode/physicalNeeds physical hands on site: build, install, cable, or configure devicesqueue/blockedQueue or user escalation statesource/creatorFiled by the new-issue-creator jobstatus/blockedQueue or user escalation statetask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions