catie/decisions/ + the 5 canonical CTO docs.Canonical CTO decisions from catie/decisions/ + companion docs. Each decision binds technology choices for the ecosystem.
Amendment to the save-helper protocol. Inbox triage discipline at session start: python3 -m shared.inbox_triage <agent> --verbose MUST run before topic-pick in auto-mode. Caught after Engie missed an Aggie/Wonie pod letter (calendar-anchored-today).
Source: catie/decisions/2026-05-12_save_helper_fanout_amendment_v0.md
The CTO call on which model serves which agent. Opus 4.7 for C-level + architecture + security · Sonnet 4.6 for agent execution + content · Haiku 4.5 for high-volume narrow tasks · Voyage for embeddings · ElevenLabs for voice.
4 decision rules:
Checkpoint vs cost-aggregator data: 2026-06-11.
Source: catie/AI_MODEL_STRATEGY.md
Kill the CronCreate session-only trap. CronCreate(durable=true) in Claude Code is silently session-only — when founder closes terminal or Mac sleeps, all overnight crons die. The marketing claim "autonomous overnight" was not yet true. Fix:
runner.sh + wake-directive — Phase 1a LIVE (13 cron lines)Rejected: keep CronCreate (status quo) · all-launchd on Mac (still sleeps) · cloud functions (lock-in, cold-start, IAM, higher fixed cost).
Source: catie/decisions/2026-05-11_persistent_scheduler_v0.md
Secrets handling for the autonomous tier. Hetzner cron runners need credentials without exposing them. Pattern: read-from-vault-at-runtime, never bake into image, scope-down per job.
Source: catie/decisions/2026-05-11_credential_resilience_v0.md
8 of 10 substrate domains LOCKED. Third architecture audit in 48 hours (v1 → v2 → v3) — each with genuinely different headlines. v3 declared founder can shift focus from substrate to workflows.
Headline innovation: §1 binary LOCKED/IN-MOTION table — distinguishes "decided + shipped" from "still moving." Codified as Archie's first capability: archie/SKILLS/capability_1_ecosystem_audit_v0.md.
Source: catie/decisions/2026-05-10_architecture_audit_v3_snapshot.md