Objective
Land a reviewable tool that plans and atomically applies downstream modification notices before any repository-wide notice mutation. This supersedes the unsafe broad application in #55.
Approved decomposition
- Read-only revision/path/header planner and policy tests.
- Descriptor-relative mutation/rollback engine with adversarial tests.
- Only after both land, a separately reviewed deterministic application PR.
Current local checkpoints
- planner:
4a2cab664cac337548acf4423b200962a4b40c18 (review-sized, not pushed)
- mutation WIP: local-only; still under correction
Remaining gates
- content-strong fingerprint; same-size/restored-mtime edits must not pass
- verify both displaced original and installed candidate around atomic exchange
- mismatch recovery must never delete a newer concurrent write
- rollback must verify backup content before reporting success
--check and --dry-run must remain portable without mutation support
- no staging-file leaks on write/chmod/fsync/stat failure
- generated Python headers with encoding cookies remain excluded
- legal existing notices after copyright headers remain idempotent
- all diagnostic line separators escaped and aggregate output bounded
- focused adversarial tests, Ruff, formatter, and diff checks
No mass source-file mutation is authorized by this issue.
Objective
Land a reviewable tool that plans and atomically applies downstream modification notices before any repository-wide notice mutation. This supersedes the unsafe broad application in #55.
Approved decomposition
Current local checkpoints
4a2cab664cac337548acf4423b200962a4b40c18(review-sized, not pushed)Remaining gates
--checkand--dry-runmust remain portable without mutation supportNo mass source-file mutation is authorized by this issue.