fix(build): porcelain for the per-repo source manifest too (Sam & Claude)

Completes the porcelain alignment: seed_live_ai_source_repo() still computed
.clawdie-source.json's modified_at_build with `git diff` (tracked-only), so for
the same repo it could disagree with build-manifest.json (now porcelain) on
untracked files. Switched it to `git status --porcelain` as well — all four
manifest/gate "modified" checks now share one semantics.

Checks: sh -n build.sh; sh scripts/test-release-gate.sh PASS; git diff --check.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Sam & Claude 2026-06-15 17:35:46 +02:00
parent d71c8ee087
commit cfd11d1356

View file

@ -1160,7 +1160,7 @@ seed_live_ai_source_repo() {
printf '%s\n' '.clawdie-source.json' >> "${_repo_dest}/.git/info/exclude"
_repo_modified=false
if ! git -C "${_repo_src}" diff --quiet 2>/dev/null || ! git -C "${_repo_src}" diff --cached --quiet 2>/dev/null; then
if [ -n "$(git -C "${_repo_src}" status --porcelain 2>/dev/null)" ]; then
_repo_modified=true
fi