I read this as an implementation task limited to Todo 2 - I’ll inspect the contract and existing configuration flow, establish baseline and red tests, then implement and verify the typed default-off boundary.


I read this as a scoped capability-boundary implementation - the live profile remains default-off with no enabled customers, and I’m adding a passing characterization test before introducing any v1.4 source.


I read this as completing the narrow config/authority contract - the red contract is now green, so I’m running the focused regression, existing config seams, static gates, and source audit without wiring runtime behavior.


I read this as final evidence and cleanup for Todo 2 - I’ll preserve the inherited dirty worktree, remove only generated bytecode from this task, and record the adversarial probes plus exact QA transcript.


task: Todo 2 - default-off weekly-operations capability contract

focused: 19 passed; config subset 18 passed

existing_config_seams: 3 targeted tests passed

static: ruff, ty, compileall, and no-excuse audit passed

default_off: enabled=False; 20:00:00; 23:00:00; weekday=0; stable digest

invalid_authority: issue/expiry ordering rejected with exit 1 before side effects

malformed: pass

stale_expired_and_wrong_bindings: pass

dirty_worktree: preserved

flaky: no sleep/polling

prompt_injection: not applicable

cancel_resume: not applicable

status: No Todo 2 scope risks. No dispatcher, storage, Telegram, provider, config, or registry wiring was added.

post_write_review: Single responsibility, typed boundary parsing, exhaustive-state applicability, escape hatches, defensive layers, helper scope, regression tests, parameter count, cleanup verification, positive naming, and logging review all pass.


I read this as a Todo 2 repair - I’ll eliminate the reported diagnostics, create independently reproducible baseline/RED evidence from the Todo 1 state, then rerun every stated gate without expanding runtime scope.


task: Todo 2 weekly-operations config and authority contract - r2 PASS

baseline: 1 passed, 1 deselected; exit 0

red: 1 failed, 1 deselected; exit 1; MISSING_WEEKLY_OPERATIONS_AUTHORITY_CONTRACT_IN_TODO1_SNAPSHOT

invalid_authority: exit 1; WeeklyOperationsAuthorityError issue expiry ordering; mutation_events=0; row_writes=0; provider_writes=0

invalid_cases: 16/16 denied; exit 0

focused: 18 passed, 1 deselected in 0.17s

full: 19 passed in 0.32s

existing_seams: 3 targeted seams passed

ruff: pass

ty: pass

compileall: pass; 4 isolated artifacts removed

no_excuse: pass

loc: all changed Python files below 250 LOC

long_commands: all commands completed once with recorded durations and no truncation


I read this as an evidence-harness repair - I’ll make the RED reproduction self-contained and manifest-verified, then prove it twice from fresh disposable roots without touching product behavior.


task: Todo 2 evidence harness r3

status: PASS

command: PYTHONDONTWRITEBYTECODE=1 UV_OFFLINE=1 uv run python .omo/evidence/nutricoach-v140-weekly-operations/task-2-red-r3-runner.py

baseline: exit 0; 1 passed, 1 deselected

red: exit 1; 1 failed, 1 deselected; MISSING_WEEKLY_OPERATIONS_AUTHORITY_CONTRACT_IN_TODO1_SNAPSHOT

temp_parent: created uniquely and cleaned on both runs

negative_fixture: exit 2 before pytest; SNAPSHOT_MANIFEST_VERIFICATION_FAILED:missing_modified_or_extra_input

focused: 18 passed, 1 deselected

full: 19 passed

manual: default-off, typed invalid-authority rejection, and all 16 invalid cases passed

quality: ruff, ty, compileall, and no-excuse passed


I read this as an evidence-only SIGTERM repair - I’ll reproduce the r3 owned-child leak in an isolated copy, add an r4 owned-child cancellation runner and FIFO fixture, then verify interruption cleanup twice and rerun Todo 2 gates.


task: Todo 2 evidence-only SIGTERM repair r4

r3_control: FIFO-synchronized disposable r3 copy leaked .task-2-red-r3-1ppi7wwh after SIGTERM; raw exit -15 / shell-equivalent 143

r4_command: PYTHONDONTWRITEBYTECODE=1 UV_OFFLINE=1 uv run python .omo/evidence/nutricoach-v140-weekly-operations/task-2-red-r4-sigterm-probe.py

r4_result: runner exit 143; interrupted=true; success=false; child reaped; zero runner/child survivors; zero .task-2-red-r4-* roots

modified_manifest: exit 2 before pytest

existing_seams: 3 passed

manual: default-off, typed invalid-authority, and all 16 invalid cases passed

static: LSP zero; ruff, ty, compileall, no-excuse passed