S32 · Redundancy & Failover

Declared state: **partially missing at the architecture level** — model failover is real; there is one host. Replication, promotion and split-brain prevention are deferred pending an owner decision on whether there is ever a second brain host..

This is the repository plan and evidence, not a live health reading. A task marked done may still depend on credentials, devices, deployment or a newer acceptance test.

Dependencies

S30

Tasks and gates

32.F1 · LLM provider failover chain. *gate:* `test_brain_llm.py`, `test_resilience.py`

Tier F · done · Verification: exempt-test

Gate: `test_brain_llm.py`, `test_resilience.py`

  • unverified-import · undated · docs/SYSTEMS-DETAILS.md:3347

32.F2 · Single-instance enforcement (no two brains, no two edges).

Tier F · done · Verification: hermetic-test

Gate: `test_singleton_and_macro_guard.py`

  • unverified-import · undated · docs/SYSTEMS-DETAILS.md:3348

32.F3 · **Explicit degraded modes.** Define and implement three: brain-down (edge answers what it

Tier F · done · Verification: hermetic-test

Gate: `test_degraded_modes.py`

  • recorded-note · 2026-09-13 · docs/SYSTEMS-DETAILS.md:3350

32.F4 · Health of the *other* host is known to each host, not assumed.

Tier F · done · Verification: hermetic-test

Gate: `test_connectivity.py` [32.F4]

  • recorded-note · 2026-09-13 · docs/SYSTEMS-DETAILS.md:3365

32.R1 · State replication: memory and task stores mirrored between hosts on a schedule, with a

Tier R · deferred · Verification: hermetic-test

Gate: `test_backup_restore.py` [cross-host]

  • owner-decision · undated · docs/DECISIONS.md D-42

32.R2 · Automatic promotion — the laptop takes over brain duties when the VPS is unreachable for

Tier R · deferred · Verification: hermetic-test

Gate: `test_degraded_modes.py` [promotion]

  • owner-decision · undated · docs/DECISIONS.md D-46

32.R3 · Split-brain prevention when both come back. *gate:* `test_degraded_modes.py` [reconcile]

Tier R · deferred · Verification: hermetic-test

Gate: `test_degraded_modes.py` [reconcile]

  • owner-decision · undated · docs/DECISIONS.md D-46

32.E1 · A live drill: pull the VPS for an hour; Mushegh stays usable and reconciles cleanly

Tier E · open · Verification: manual

Gate: recorded drill.

    HUD screen contracts

    All subsystems · Source: docs/systems-plan.json.