Your .ci/update_readme.py already has a useful --dry-run, but its custom heading parser appends generated documentation when an expected heading is missing. I reproduced the git/README.md “Available tasks” update at commit f7b166b with Texio 0.1.2. The named-section update preserved every byte outside that section; missing and duplicate headings stopped without writing.
Would you be open to a small trial that keeps the existing Python generator and uses a pinned, checksum-verified Texio binary only for the two final “Available tasks” and “Details” replacements? The behavior change would be deliberate refusal instead of appending content under a missing anchor. I would measure installation time and keep the current dry-run and lint steps.
Reproduction and source hashes: Texio workflow pilot.
Texio is an MIT-licensed early preview; I maintain it.
Your
.ci/update_readme.pyalready has a useful--dry-run, but its custom heading parser appends generated documentation when an expected heading is missing. I reproduced thegit/README.md“Available tasks” update at commitf7b166bwith Texio 0.1.2. The named-section update preserved every byte outside that section; missing and duplicate headings stopped without writing.Would you be open to a small trial that keeps the existing Python generator and uses a pinned, checksum-verified Texio binary only for the two final “Available tasks” and “Details” replacements? The behavior change would be deliberate refusal instead of appending content under a missing anchor. I would measure installation time and keep the current dry-run and lint steps.
Reproduction and source hashes: Texio workflow pilot.
Texio is an MIT-licensed early preview; I maintain it.