Skip to content

Stop tracking .claude/settings.local.json - #247

Merged
jodavis merged 1 commit into
mainfrom
fix/untrack-settings-local-json
Jul 27, 2026
Merged

Stop tracking .claude/settings.local.json#247
jodavis merged 1 commit into
mainfrom
fix/untrack-settings-local-json

Conversation

@jodavis-claude

Copy link
Copy Markdown
Collaborator

Summary

  • .claude/settings.local.json was committed to git despite the .local. naming convention (and existing *.local.* gitignore pattern) marking it as machine-local state.
  • Every fresh worktree spawn where Claude Code rewrites this file's local permission state diverges from the committed version, so git status is never clean on a brand-new worktree.
  • This was silently tripping dev-team:watch-pr's step 1 worktree-freshness hard-stop (and any other check expecting a clean tree) on essentially every spawn — discovered while multiple agents got stuck unable to start monitoring PR ADR-338: Wire mypy --strict static analysis into ml/ build #246 for ADR-338.

Test plan

  • Confirmed git check-ignore --no-index matches the file against the existing *.local.* pattern, so no .gitignore changes are needed.
  • After merge, verify a fresh git worktree add shows a clean git status --short.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NhMgWJeN4ytrcZdaWZYgqY

Being tracked defeats the point of a *.local.* file: every fresh
worktree spawn where Claude Code rewrites this file's local permission
state diverges from the committed version, so git status is never
clean on a brand-new worktree. This silently trips any hard-stop that
checks for a clean working tree (e.g. dev-team:watch-pr's step 1
worktree-freshness check) on every single spawn.

Already covered by the existing *.local.* gitignore pattern - just
needed to be untracked.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NhMgWJeN4ytrcZdaWZYgqY
@jodavis
jodavis enabled auto-merge (rebase) July 27, 2026 23:51
@github-actions

Copy link
Copy Markdown

Test Results

401 tests  ±0   401 ✅ ±0   2m 31s ⏱️ +26s
  5 suites ±0     0 💤 ±0 
  5 files   ±0     0 ❌ ±0 

Results for commit da86708. ± Comparison against base commit 8f1b8b7.

This pull request removes 3 and adds 2 tests. Note that renamed tests count towards both.
,False)
AdaptiveRemote.Services.ProgrammaticSettings.PersistSettingsTests ‑ PersistSettings_Set_ValidatesKeyNameAsync (Hello
AdaptiveRemote.Services.ProgrammaticSettings.PersistSettingsTests ‑ PersistSettings_Set_ValidatesValueAsync (Invalid
AdaptiveRemote.Services.ProgrammaticSettings.PersistSettingsTests ‑ PersistSettings_Set_ValidatesKeyNameAsync (Hello
,False)
AdaptiveRemote.Services.ProgrammaticSettings.PersistSettingsTests ‑ PersistSettings_Set_ValidatesValueAsync (Invalid
,False)

@jodavis
jodavis merged commit e720a36 into main Jul 27, 2026
4 checks passed
@jodavis
jodavis deleted the fix/untrack-settings-local-json branch July 27, 2026 23:57
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