Skip to content

Operational History

Tommy in the archive stacks — every migration labeled, every incident filed, every bad decision preserved for science

This page exists for one reason: architecture docs rot when they try to be architecture, changelog, postmortem, and victory lap at the same time. Sanctum had started doing that. This is the drawer where the dated material goes so the doctrine pages can stay readable.

DateEventWhy it mattered
2026-08-19The Engine That Wasn’t ThereOrbStack.app was already gone; Homebrew completions, DOCKER_HOST, /var/run/docker.sock, Castellan env, and a pinned Mini HA docker rescue still behaved as if the engine were live. Retired the leftovers; HA Green and Lima socat forwards are the path.
2026-03-22Living Force redesign after the bridge100 cascadeDependency-aware healing, quarantine, and graph-based reasoning became first-class concepts
2026-03-28Great AlignmentService manifest validity and cross-system naming improved materially
2026-03-30Bootstrap and Force Flow pushNotification routing, boot reliability, and test fixes moved from theory into operations
2026-04-03Workspace and runtime audit consolidationCanonical workspace catalog, runtime drift remediation, and audit pages landed
2026-04-07Model routing overhaul and provider hardeningFive independent provider paths, self-healing fallbacks, Signal migration to native, fnm removal, vision/multimodal enablement, and OpenClaw 2026.4.5
2026-04-08DenchClaw updated to 2026.4.8Mac-side CRM gateway (Jocasta) updated from 2026.4.5 to latest. Three-day turnaround from the April 7 OpenClaw update.
2026-04-08Backup retention policy implementedDaily backups kept 14 days, then bi-weekly archives, everything else purged. Script at ~/.sanctum/scripts/backup-retention.sh, runs weekly via automated job. Initial cleanup freed ~23 GB from iCloud.
2026-04-08Qui-Gon promoted to version watchdogversion-check.sh deployed to track OpenClaw, DenchClaw, DuckDB, signal-cli, Node.js, and sanctum-proxy across npm and Homebrew. Weekly Monday 7 AM LaunchAgent with Signal alerting. Born from the April 7 version drift incident where fnm-vs-Homebrew OpenClaw installs and a three-patch-behind DenchClaw caused confusion.
2026-04-10Holocron release pipeline hardenedThe Electron shell moved from “works on this machine if you squint” to explicit Developer ID signing, notarization, stapling, and release-safe installed-app validation. The extra App Store Connect cleanup key was revoked, because credential archaeology is not a growth industry.
2026-04-13Military-Grade Omnichannel ETL PipelineJocasta’s 5-channel (Email, iMessage, WhatsApp, Signal, Telegram) CRM sync completely overhauled. Added file locking, Force Flow dead-man alerts, timezone hardening, Keychain-based Telethon integration, and DB snapshots.
2026-04-14Sanctum-wide pnpm migrationAll Mac and VM core runtimes and workspaces migrated from npm-global/npm-local to workspace-owned pnpm. Eradicated package-lock.json files and legacy node_modules drift. Upgraded all systems to OpenClaw 2026.4.14.
2026-04-17Full-Stack Health SweepA narrow CLI fix surfaced four hours of drift across nine components; several “healthy” services were not.
2026-04-18Off-Catalogue AuditFive services found running outside the manifest, five registered, the catalogue-sync-check guardrail born.
2026-04-19The Reasoner That Went QuietTwenty-five hours of green probes, then silence on a real question — telemetry caught what probes could not.
2026-04-20The A+ Roadmap ClosesPrinciples 1–6 all finished becoming code in a single day; HA failover finally tested in anger.
2026-04-20Pressure Valve TrilogyA kernel panic, a Rust daemon shipped before lunch, and the same daemon killing the service it was meant to protect by dinner.
2026-04-21The mTLS DayMorning brings five probes onto certs; late-night ships the sanctum-server router’s code; overnight proves the full failover matrix on the MBP shadow.
2026-04-24Every Jedi Answers to Their NameLM Studio coder-14b and the eight Jedi Council system prompts get a Living Force roll-call — memory-gated auto-load plus an hourly self-identification probe.
2026-04-24Five Locks on the Voice Doorsanctum-xtts becomes sanctum-tts. Adapter dispatcher on :8007 with five independent defense layers — mTLS, bearer-token ACL, reference-clip pinning, Ed25519-signed WAVs, hashed audit log.
2026-04-26Wisdom Informs Reflexchitti grows the rest of its koshas (mood + posture + samskara + attention). Watchdog learns multi-action remediation; the picker rotates compose-upcolima-restart-then-up within minutes of deploy. Direction loops. Heart broken open.
2026-04-26Pressure-Valve Trilogy ReduxSix days after the trilogy, the same shape on a different vector — the valve hammered LM Studio coder-14b every 2 minutes for hours because pick_candidate_from_rows didn’t filter on T-state. Three-line fix, two new tests, live-verified. Sweep surfaced two latent bugs the trilogy never closed: Colima 0.10.1 SSH-forwarding instability and the memory-vault re-shed loop (phase-4).
2026-04-27Two Gates, One SubscriptionHub and mobile node now run the same claude-max-api-proxy on :3456. Retired the per-request CLI-spawn proxy on :2001, migrated five consumers, kept retired plist + script for archaeology. Each host has its own Max OAuth session — no cross-machine routing required for local consumers, tailnet routing available for failover. Capacity doctrine’s third leg now matches the first two.
2026-04-27The Vajrayogini CutTwo carryovers from the trilogy redux closed at the root, not papered over: Colima 0.10.1’s SSH ControlMaster lifecycle bug retired by migrating HA + outline to OrbStack (native networking, no SSH-forwarded ports, 3-second cold start); pressure-valve gained phase-4 shed-effectiveness gating so the memory-vault re-shed loop closes itself when sheds aren’t moving swap_used. 49 valve tests pass, all live-deployed.
2026-04-28The Clean StageThree-layer permanent fix for git working-tree drift across every sanctum repo: canonical gitignore template, daily git-drift-sentinel LaunchAgent, refusal-grade pre-commit hook (sensitive=refuse, untracked=warn). yoda-voice-agent dropped from 10,782 untracked files to 1. Doctrine: “if it’s not in git, it’s either gitignored or it doesn’t exist. No third state.”
2026-07-16The Governor EdgesFinished the P4 Governor integrations by wiring sanctum-triage to Castellan’s admission control, reading Chitti posture directly, and deploying the spend tracker loop for Thalamus.
2026-07-16Emergence Autonomous BuildoutAutonomously repaired V1 doc drift and completed phases P1 (Thalamus), P2 (Dreams), P3 (Interoception), P6 (Living Weights), and P7 (Phi). The P5 World Model line in this row was a local-only script that died uncommitted two weeks later — see 2026-08-16.
2026-08-16The World ModelP5 actually landed. Predictor lives in sanctum-emergence, LaunchAgent points at the repo, surprises go to Thalamus, top-3 to Tommy preflight. The July script is not coming back.
2026-07-17The Long NightProxied Claude Code broke with “empty or malformed response (HTTP 200)”: a provider: anthropic seat had been given a bridge api_base, so Anthropic requests came back as OpenAI-shaped bodies on /v1/messages. Root-caused at the config layer and wrapped in a 41-check e2e harness so it cannot regress silently. The same night closed a cluster of adjacent debt: the identity sync-war (agent-markdown-sync was overwriting Bert-signed genesis on both machines), a batch of recurring Force Flow false alarms (swap-sentinel recalibrated to the dual-residency baseline, council-drift plist-normalized, tailscale-skew nag capped, ha-guardian’s false-heal loop retired), secrets-doctor consolidated onto the always-on Mini, and the automation-secret read moved SOPS-first (fifteen login-keychain secrets migrated; the age keys that bootstrap SOPS deliberately left in place).
  1. A green test suite is useless if it is testing the wrong world.
  2. LaunchAgents drift quietly until someone looks at the target path instead of the plist name.
  3. Hardcoded coordinates always feel harmless right before they become archaeology.
  4. Dated migration notes do not belong in stable architecture prose.

The original long-form narrative remains available as living-force.md for archival context. It is useful as history and incident narrative. It is not the best single source for the current system shape.