office-repair
/office-repair — fix a workbook in place, or hand a generated file over to Ane
One job: an Office file Ane already owns needs work, and the version on disk is the one that counts.
All Office surgery lives in ane_package.officeops. This skill contributes judgement, not plumbing. If a mode needs a capability officeops lacks, add it to officeops and test it there — office-review-pass is the worked example of that rule holding, and Wave 3 added five capabilities that way rather than growing its own. references/officeops-excel-api.md carries the exact call signatures; read it before writing any code.
The line, so it does not get relitigated: anything that opens an Office file belongs in officeops. Diffing two lists of strings, spotting an autocorrect flip and rewriting a .py generator are not Office operations, so they live in scripts/office_repair.py and are tested there.
Mode routing
- repair — an Excel workbook Ane maintains is broken or needs a change, and it carries features a naive write would destroy.
- canonical — a generated artefact has been hand-edited, and the generator is now the stale copy.
The two meet when a repaired workbook also has a generator behind it. Run repair first, then canonical to retire the generator.