Autonomous Claude System

Synoptic — generated from Nextcloud/Brain/System/SYSTEM_MODEL.md

The One Root

Root failure mode (shared by all components)

Built-but-never-assembled/deployed + the DB lies + silent rot with no fail-loud. (= the open-loop disease.) Robustness ≠ six fixes; it's killing this one mode.

Governing Principle

Governing principle (Reverse): reality defines truth; the DB is a DERIVED CACHE, not the source. (process list > status field; the ✻ <N>s marker > DB "idle".)

Robustness Primitive

The robustness primitive: no feed/component without (a) a fail-loud freshness signal + (b) a registered consumer.

Components

Master_Claude.db WARN
ispersistent store — sessions, orchestrator_messages, decisions, glossary_entries, pages, breaks, prompt_ledger.
depends onfilesystem.
SSOT fordurable structured state.
health⚠️ LIES ~30% — status field stale; treated AS reality when it's a cache. ROOT carrier.
launcher (:5111) BROKEN
isspawns/tracks sessions; /status, /launch, /api/future-prompts, permissions.
depends onMaster_Claude.db, OS process list, terminal window titles.
SSOT forsession lifecycle (claims to).
health🔴 attribution BROKEN — /status active-list = 0 while 46 claude.exe live; window/uuid resolution returns NULL. Fix direction: derive liveness from PROCESS TRUTH, not the status field.
messaging (orchestrator_notifier_service.py + orchestrator_messages + check_orchestrator_inbox hook) BROKEN
isinter-session + user↔Claude delivery (push-inject + pull-on-hook).
depends onlauncher window-resolution, Master_Claude.db, the per-turn pull hook.
SSOT formessages (DB row); delivery is best-effort.
health🔴 push fails (no-window → dead_letter), IDLE SESSIONS NEVER WAKE; pull only fires when already active. FIX: #5817 focus-safe wake doorbell (shadow-first).
claudehalt OK
isDEFINED TERM (literal) = the ✻ <N>s characters Claude Code shows EVERY TIME IT GOES IDLE. NOT a mechanism — an observable marker. (def: glossary entry_id 9, Loop_Engineering/raw.)
depends onnothing (it's on-screen ground truth).
SSOT for"Claude is idle" — the TRUE idle signal (vs the launcher's lying status). Observe THIS.
health✅ as a marker. The optional claudehalt_close_gate.py (turn-end check the 14 Stop hooks consolidate into) is DESIGNED-not-built. Do NOT over-construct the term into the gate.
wordlogger (londonserver :8082, gunicorn) PARTIAL
isJulian's dictation/photo capture → entries; OCR; research_daemon + vision_daemon.
depends ongunicorn, wordlogger.db + medical_words.db, cloudflare tunnel (wordlogger.hansenhome.uk).
SSOT forJulian's logged requests/observations.
health🟡 photo-discard FIXED (#5805); text/URL input dropped → #5811; summary page built-but-unreachable → #5807; no fulfillment loop → #5809; claudehalt input-sentinel staged-not-deployed → #5814.
questionspage BROKEN
issurfaces questions/decisions to Julian.
depends onclaude_user_messages, orchestrator_messages, decision_* tables (2 of 4 EMPTY).
SSOT forquestions/forks surfaced to Julian — currently NONE consolidated.
health🔴 FRAGMENTED across 6+ pages (/waiting, /prompts, /notifications, claudeweb, session-intelligence, command_center); forks not surfaced. Consolidation downstream of spotter #5815 + the fleet walkthrough.
brain (Nextcloud/Brain) PARTIAL
iscanonical knowledge wiki — topics, dreamer-folded (raw → _wiki.md).
depends onthe dreamer loop (scheduling fragile, hits classifier wall), /new_topic + /update_topic.
SSOT fordurable knowledge + DEFINED TERMS.
health🟡 folds planned-but-not-done (claudehalt was absent until #5730); dreamer scheduling unreliable.
freshness-gate (daily_anomaly_rollup.py + signals_to_watch.yaml) ← the robustness instrument OK
isthe fail-loud SSOT for "is this feed still updating / this URL alive."
depends on
SSOT forcomponent health signals. RED→ntfy phone; AMBER→report.
health✅ live; #5808 adds pages link-health. Phase 2: SYSTEM_MODEL health fields auto-derive FROM here → the live synoptic.

How to Use This Model

Generated from Nextcloud/Brain/System/SYSTEM_MODEL.md at 2026-06-25 18:07 UTC — live page
DO NOT hand-edit this file. Run generate_autonomous_flow.py to regenerate.