aboutsummaryrefslogtreecommitdiff
path: root/scripts/tests/audit.bats
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-30 21:41:06 -0500
committerCraig Jennings <c@cjennings.net>2026-05-30 21:41:06 -0500
commit9a1bea9bfc066312bf9743dc23c88f191a36cc16 (patch)
tree1916eb07c27e83b3f82bc5743587517061acd899 /scripts/tests/audit.bats
parent1f79945dd4ab386a9ea4ac58fb2161c174a26bba (diff)
downloadrulesets-9a1bea9bfc066312bf9743dc23c88f191a36cc16.tar.gz
rulesets-9a1bea9bfc066312bf9743dc23c88f191a36cc16.zip
fix(startup): skip the .ai/ template sync when rulesets has uncommitted WIP
From jr-estate's handoff: Phase A's =rsync -a --delete= copies the rulesets working tree by disk presence, so a downstream session that starts while rulesets has in-flight WIP pulls that WIP into its own =.ai/workflows/= and =.ai/scripts/=, where it reads as drift the user never authored. I guarded the three rsyncs behind a =git status --porcelain= check on the synced source paths (=claude-templates/.ai/{protocols.org,workflows/,scripts/}=). It syncs when those are clean and skips with a message when dirty, catching up on the next clean session. The check is scoped to those paths, so unrelated rulesets dirt (a stray session-context.org, scratch files) doesn't block the sync. The handoff's secondary anomaly (two workflow files that didn't reach jr-estate) was a timeline artifact, not a Phase A bug. Both were added in 664bf01 on 2026-05-29, after jr-estate's rsync had already run, so they correctly didn't exist to copy yet.
Diffstat (limited to 'scripts/tests/audit.bats')
0 files changed, 0 insertions, 0 deletions