# Cognitive Strata Second orchestration plan (after the foundation): the cognitive consumption layer over the durable spine, per design section S8. ## Components (src/rune/orchestration/) - cadence.py — CadenceConfig + durable per-cadence cursor - no_change.py — content_fingerprint + per-cadence NoChangeGate - reflex.py — deterministic reflex engine (facts, never judgments) - proposals.py — bounded ProposalSink with dead letter - workers.py — CognitiveWorker protocol + WorkerRegistry (independent toggles) - deadline.py — DeadlinePolicy for forced runs - health.py — CadenceHealth ledger (per-cadence accounting) - cognitive.py — build_cognitive composition + DeadlineRunner ## Contracts - Disabling or failing one cadence never affects another (S8/A1). - Unchanged evidence is skipped by the no-change gate (>=80% avoidance goal). - Workers only emit proposals; canonical state is untouched by this plan. - Deadline policies force a run so quiet periods cannot starve a cadence. ## Run PYTHONPATH=src:. python3 -m pytest tests/ -k orchestration --ignore=tests/test_message_widgets.py -q PYTHONPATH=src:. python3 src/rune/canary_cognitive_strata.py