- scripts/gitea_auth.py: single credential ladder (env -> 0600 token file -> git credential fill); 6 consumers migrated off direct os.environ reads - rune_operator: consolidate 5 duplicated failure blocks into _terminalize_execution_failure; fix 3 fault-injection gaps: (1) dual-module PreparedTool identity split crashed approval-path saves, (2) fallback-model failure escaped send_task (created/pending orphan), (3) running-transition save uncaught (running-with-no-owner) - envelope task.status now agrees with canonical ledger (awaiting_approval) - orphan task_ac35f4e287c8 terminalized failed with durable evidence - tests: gitea auth ladder (6), lifecycle fault matrix (9 boundaries + restart/reload + helper contract); 1280 green in ci-venv; ratchet 352/80
- tests/test_recall_mode_regression.py: deterministic fixture proving association-merged entries carry mode=association_merged (fails on old impl). #314 closed FIXED_VERIFIED. - scripts/gitea_auth.py: canonical Gitea API auth helper (GITEA_TOKEN env or git credential fill, never remote URL parsing) - tests/test_task_lifecycle.py: fault injection at route/model_selection/ execute boundaries — all terminalize, no immortal RUNNING - tests/test_route_isolation.py: task-scoped route instruction isolation - tests/test_release_convergence.py: correct target-version algorithm 1268 tests green; ratchet 352/80; henxels clean.