Skip to content

docs(skill): record the conflicted-.gitignore hazard from the v0.38.0 fan-out#254

Merged
gtauzin merged 1 commit into
mainfrom
chore/fanout-skill-gitignore-hazard
Jul 26, 2026
Merged

docs(skill): record the conflicted-.gitignore hazard from the v0.38.0 fan-out#254
gtauzin merged 1 commit into
mainfrom
chore/fanout-skill-gitignore-hazard

Conversation

@gtauzin

@gtauzin gtauzin commented Jul 26, 2026

Copy link
Copy Markdown
Member

The v0.38.0 fan-out hit a failure mode the skill did not describe, on yohou.

That project had added reviews/ to the same ignore block the template removed, so .gitignore came out unmerged. Three independent signals reported the repo clean:

copier update  -> exit 0
.rej sweep     -> no files
git status     -> the newly-delivered CLAUDE.md not listed

All three wrong. The unresolved .gitignore still contained CLAUDE.md, so git treated the delivered file as ignored and omitted it from status, while the file sat on disk the whole time. Only a conflict-marker grep caught it.

.gitignore is the one file whose own conflicted content changes what git status reports, so it can conceal the very delivery being verified. The skill now says to sweep for markers as a first-class check equal to the .rej sweep, and not to treat git status as evidence of delivery when .gitignore is among the changed files.

Also corrects the _skip_if_exists list, which had not been updated for CLAUDE.md.

Both skill mirrors edited identically, as the byte-identity test added in #252 requires.

… fan-out

yohou's .gitignore came out unmerged because the project had added reviews/
to the same block the template removed. Three independent signals reported
the repo clean and all three were wrong: copier exited 0, the .rej sweep
found nothing, and git status did not list the newly-delivered CLAUDE.md --
because the unresolved .gitignore still contained CLAUDE.md, so git treated
the delivered file as ignored. The file was on disk throughout.

.gitignore is the one file whose own conflicted content changes what git
status reports, so it can conceal the delivery being verified. The skill now
says to sweep for conflict markers as a first-class check rather than a
follow-up, and not to treat git status as evidence when .gitignore is among
the changed files.

Also corrects the _skip_if_exists list, which had not been updated for
CLAUDE.md.
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@gtauzin
gtauzin merged commit ec994ac into main Jul 26, 2026
18 checks passed
@gtauzin
gtauzin deleted the chore/fanout-skill-gitignore-hazard branch July 26, 2026 15:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants