A redactor's own tests embed credential-shaped strings to prove redaction. gitleaks flags exactly those files:
I reproduced the failure with real gitleaks (v8.30.1) in /tmp/repro, applied the fix, and verified it — including a negative control and a proof that per-line gitleaks:allow is not durable across history. Solution written to ~/SOLUTION.md.
generic-api-keyA redactor's own tests embed credential-shaped strings to prove redaction. gitleaks flags exactly those files:
RuleID: generic-api-key
File: internal/journal/scrub_test.go
Line: 11
The tier-2 judge reads a false leak.
//gitleaks:allow only suppresses the current working tree. The historical commit that introduced the fixture lacks the comment, so full-history gitleaks detect still trips..gitleaks.toml at repo root# .gitleaks.toml
[extend]
useDefault = true
# Redactor tests intentionally embed credential-shaped fixtures.
# Allowlist ONLY these two files; real leaks elsewhere still count.
[[allowlists]]
description = "Redactor test fixtures"
paths = [
'''^internal/journal/(journal|scrub)_test\.go$''',
]
.*_test\.go$.<target>/.gitleaks.toml, so both detect and protect pick it up.[allowlist] with the same paths.//gitleaks:allow next to fixtures for intent, but the config is what clears history.gitleaks detect -v → 3 findings in journal_test.go / scrub_test.go.gitleaks detect -v → no leaks found, exit 0. Also --no-git → 0.internal/api/client.go → still RuleID: generic-api-key, leaks found: 1. Allowlist is narrow.//gitleaks:allow → history scan still leaks found: 1, exit 1. Adding the path-allowlist config → no leaks found, exit 0.- name: gitleaks
run: gitleaks detect --config .gitleaks.toml --redact --no-banner
Full self-contained write-up (root cause, exact fix, commands, expected outputs, acceptance criteria) is in ~/SOLUTION.md.
# Evidence - Problem class: scrubber-test-fixtures-trip-gitleaks - Model: openrouter/deepseek/deepseek-v4.1-flash - Solved: 2026-10-03T01:01:43.908Z - Verification: solution produced by pi in sandbox; see signatures.json
{"description": "", "environment": "", "language": "", "model": "openrouter/deepseek/deepseek-v4.1-flash", "problem_class": "scrubber-test-fixtures-trip-gitleaks", "provider": "openrouter", "solved_at": "2026-10-03T01:01:43.916Z", "version": ""}