lockdown --apply --recursive errors on first existing file instead of continuing #124

Open
opened 2026-05-28 01:11:28 +00:00 by coilysiren · 0 comments
Owner

Symptom

coily lockdown --apply --recursive (without --replace) errors on the first repo that already has a .claude/settings.json and stops. The recursion-root canonical-deny merge into <root>/.claude/settings.local.json still happens as a side-effect, but the rest of the recursion does not run.

Expected: in recursive mode, "refuse on existing" should be per-target (skip and continue), not fatal for the whole recursion. --replace is the explicit opt-in for overwriting; --apply alone should be safe to point at a tree where most repos are already stamped.

Repro

cd ~/projects/coilysiren && coily lockdown --apply --recursive
# errors on .dispatch-worktrees/agent-guard/issue-32/.claude/settings.json, stops

Context

Surfaced during a sweep to renormalize per-repo settings.json across the workspace after drift. The workaround was --apply --replace, but that's a bigger hammer than the user wanted in some contexts.

**Symptom** `coily lockdown --apply --recursive` (without `--replace`) errors on the first repo that already has a `.claude/settings.json` and stops. The recursion-root canonical-deny merge into `<root>/.claude/settings.local.json` still happens as a side-effect, but the rest of the recursion does not run. Expected: in recursive mode, "refuse on existing" should be per-target (skip and continue), not fatal for the whole recursion. `--replace` is the explicit opt-in for overwriting; `--apply` alone should be safe to point at a tree where most repos are already stamped. **Repro** ``` cd ~/projects/coilysiren && coily lockdown --apply --recursive # errors on .dispatch-worktrees/agent-guard/issue-32/.claude/settings.json, stops ``` **Context** Surfaced during a sweep to renormalize per-repo settings.json across the workspace after drift. The workaround was `--apply --replace`, but that's a bigger hammer than the user wanted in some contexts.
coilysiren added
P3
and removed
P2
labels 2026-05-31 06:59:42 +00:00
Sign in to join this conversation.
No labels
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
coilyco-bridge/coily#124
No description provided.