Parent: #50 Train position: **13 of 22** Phase: **P2 — Operational completeness** ## Problem Logging is human-formatted only, and machine consumers lack stable versioned success and error envelopes. ## Acceptance criteria - [ ] Opt-in JSON logs have a versioned schema including timestamp, level, logger, message, and `run_id`. - [ ] Success and failure use documented versioned JSON envelopes with stable code, type, message, details, and `run_id` fields. - [ ] Exit mappings are deterministic; machine output never mixes human prose or ANSI on stdout. - [ ] Sensitive fields remain redacted and persistent logging has bounded, privacy-conscious defaults. - [ ] Human defaults remain compatible, with schema and contract tests. ## Dependencies - #52 - #58 - #59
Parent: #50
Train position: 13 of 22
Phase: P2 — Operational completeness
Problem
Logging is human-formatted only, and machine consumers lack stable versioned success and error envelopes.
Acceptance criteria
run_id.run_idfields.Dependencies