Skip to content

ops: fleet hardening backlog from the 2026-08-30 hub incidents #651

Description

@aarontrowbridge

Important

Problem — The 2026-08-30 hub incidents left a wake of smaller infra problems recorded only in incident debriefs, where they rot. This is the backlog, promoted to tracked work so each item graduates to its own slice when picked up.

Approach — Six known items, each with its owner surface and first move. None blocks the hub-restart path that just landed; all of them erode fleet trust.

Acceptance Criteria

  • Ops sudo, scoped — the ops user gets NOPASSWD for exactly the commands hub ops need (or the root requirement is dropped); the recurring failed sudo /usr/bin/true / /boot/efi/EFI probes either work or are removed (why do they exist?).
  • erlich vault sync healed — resolve the unmerged-files pull failure and the detached-HEAD mount; add a sync-health check to the fleet status collector so silent rot becomes a visible alert.
  • armonissima mount on erlich — read-only and partial (27 top-level dirs vs the source's 60; suspected hopper-sync failure); re-sync and re-verify, then assert completeness in the collector.
  • Distiller queue mirror — 66 pending + 195 .failed on erlich; decide drain-vs-purge, and check whether the mini-side distiller process (pid 17303 at incident time) is hung or dead.
  • Tailscale path + tunnel flakiness — erlich currently relays via NYC; the MacBook tunnel agent has 64 lifetime respawns (last exit 255). Copy the mini's LAN-first Match exec fast-fallback pattern if a direct path exists; alert on respawn storms.
  • Scheduled chat-DB backups — the 2.1 GB canonical DB has only ad-hoc backups; a nightly sqlite .backup (live-safe, WAL-consistent, N retained) makes every future upgrade cheap to roll back. Pair with the upgrade verb's smoke test.

Metadata

Metadata

Assignees

No one assigned

    Labels

    hitlNeeds human decision or review

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions