fix: point statusline setup nudge at CLAUDE_CONFIG_DIR/settings.json#256
fix: point statusline setup nudge at CLAUDE_CONFIG_DIR/settings.json#256halindrome wants to merge 1 commit into
Conversation
The hook reads settings.json from getClaudeDir() (which honors CLAUDE_CONFIG_DIR) but the setup nudge text still hardcoded ~/.claude/settings.json. With CLAUDE_CONFIG_DIR set, ponytail detected the missing statusline in the custom dir, then directed the user to the wrong file. Interpolate the already-computed settingsPath instead. Fixes DietrichGebert#250 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JtkLaBmBSih5fPkT6UrT5r
QA Round 1Contract source: issue #255. Branch synced (already up-to-date with The fix is correct and minimal. Both source nudge branches now interpolate the resolved Finding 1: Manual-fallback nudge branch is fixed but never tested —
|
| Criterion | Verdict | Evidence |
|---|---|---|
Nudge uses resolved settingsPath not literal ~/.claude/settings.json |
pass | activate.js both nudge sites interpolate settingsPath |
| Both nudge branches fixed | pass (source) / partial (test) | Both edited in source; only shell-safe branch test-exercised |
Test asserts nudge references CLAUDE_CONFIG_DIR/settings.json and not ~/.claude/settings.json |
pass | Confirmed the assertion fails when the fix is reverted |
Schema Change
No schema-affecting files or DDL detected.
Summary
| Severity | Count |
|---|---|
| Critical | 0 |
| Major | 0 |
| Minor | 2 |
| Total | 2 |
SAST review skipped
Code scanning is not available for DietrichGebert/ponytail (no enabled CodeQL/SARIF analysis). No SAST delta computed — graceful skip. Dependabot alerts unavailable (not enabled or token scope). Non-blocking.
QA performed by Claude Code (claude-opus-4-8). Note: the global pr-qa-reviewer sub-agent was not registered in this session (CLAUDE_CONFIG_DIR/agents not loaded); review ran via the general-purpose agent with the identical reviewer contract.
What
The statusline setup nudge in
ponytail-activate.jshardcoded~/.claude/settings.json. WhenCLAUDE_CONFIG_DIRis set, settings live elsewhere, so the nudge pointed at the wrong file.How
Use the already-resolved
settingsPath(honorsCLAUDE_CONFIG_DIRviagetClaudeDir()) in both nudge branches. Test asserts the nudge referencesCLAUDE_CONFIG_DIR/settings.jsonand not~/.claude/settings.json.npm testpasses.Closes #255