feat(leak-guard): suggest a scrub command on block #25

Merged
clawdie merged 1 commit from feat/leak-guard-suggested-scrub into main 2026-07-04 11:08:28 +02:00
Owner

On a leak block, leak-guard now prints a review-gated, ready-to-run scrub instead of leaving you to hand-edit:

  • tailnet IP / MagicDNS leaks → a copy-paste sed -i.bak -E (single-quoted; the patterns only match real leaks, so a 100.x.x.x placeholder or <tailnet-name> is never touched)
  • config-listed public IPs → pointed at, told to replace with <osa-public-ip>

Deliberately not silent auto-masking — rewriting under the author would hide that a real value was in the diff and risk clobbering legitimate example IPs. Block-by-default stays; the fix is one reviewed command away.

Self-test unchanged (asserts exit codes, not output) and still passes.

🤖 Generated with Claude Code

On a leak block, leak-guard now prints a **review-gated, ready-to-run scrub** instead of leaving you to hand-edit: - tailnet IP / MagicDNS leaks → a copy-paste `sed -i.bak -E` (single-quoted; the patterns only match *real* leaks, so a `100.x.x.x` placeholder or `<tailnet-name>` is never touched) - config-listed public IPs → pointed at, told to replace with `<osa-public-ip>` **Deliberately not silent auto-masking** — rewriting under the author would hide that a real value was in the diff and risk clobbering legitimate example IPs. Block-by-default stays; the fix is one reviewed command away. Self-test unchanged (asserts exit codes, not output) and still passes. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
feat(leak-guard): suggest a scrub command on block (not silent auto-mask)
All checks were successful
leak-guard / guard (pull_request) Successful in 11s
01b9810e25
When leak-guard blocks, it now prints a ready-to-run, review-gated scrub:
- tailnet IP / MagicDNS leaks → a copy-paste `sed -i.bak -E` with
  single-quoted expressions that only match REAL leaks (a 100.x.x.x
  placeholder or <tailnet-name> won't match), across the offending files
- config-listed public IPs → pointed at (no single canonical placeholder
  to guess), told to replace with <osa-public-ip>

Deliberately NOT silent auto-masking: rewriting under the author would hide
that a real value was in the diff and risk clobbering legitimate example
IPs. Block-by-default stays; the fix is now one reviewed command away.

Self-test unchanged (asserts exit codes, not output) and still passes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
clawdie deleted branch feat/leak-guard-suggested-scrub 2026-07-04 11:08:37 +02:00
Sign in to join this conversation.
No reviewers
No labels
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
clawdie/layered-soul!25
No description provided.