You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Direct binary install instead of gitleaks-action: gitleaks/gitleaks-action v2 requires a paid GITLEAKS_LICENSE for organization repos, so gitleaks v8.30.1 is installed directly and invoked with --redact --verbose --exit-code 1
.gitleaksignore: 7 false-positive findings in commit 865de69b (file paths containing "api-key" in BMAD documentation CSV/markdown files) were suppressed via fingerprints
Monitor CI and fix failures (waiting for CI results)
Tag code owners for review
Why PR #107 didn't close the issue: PR #107 used a direct binary install of gitleaks. The compliance audit check (pp_check_secret_scan_ci_job) regex specifically looks for uses: gitleaks/gitleaks-action@ — binary install doesn't match. This PR switches to gitleaks/gitleaks-action@v2.3.9 (SHA-pinned).
⚠️ Action needed for CI:gitleaks-action v2 requires a freeGITLEAKS_LICENSE key for GitHub org repos. Please set this as a repo or org secret named GITLEAKS_LICENSE (get one at gitleaks.io). The CI job will fail without it.
• claude/issue-96-20260418-1841
Replace the manual gitleaks installation in the secret-scan CI job with the gitleaks/gitleaks-action GitHub Action, which is required by the org push-protection standard for the secret_scan_ci_job_present compliance check.
Implementation Checklist
.github/workflows/ci.yml — replace the "Install gitleaks" + "Run gitleaks" steps with a single gitleaks/gitleaks-action action step; add security-events: write permission to the job
Tests to Write
N/A — pure CI workflow configuration change; no application logic or unit-testable behavior. TDD Phase 2 skipped per the exception for configuration-only changes.
.github/workflows/ci.yml — replaced manual gitleaks install with gitleaks/gitleaks-action@ff98106e4c7b2bc287b24eaf42907196329070c7 # v2.3.9; added security-events: write permission; added GITHUB_TOKEN env var
Test Results
[lint] shellcheck: no .sh files found — skipping
[lint] all checks passed
Files Changed
.github/workflows/ci.yml: replaced the two-step manual gitleaks download/run with a single gitleaks/gitleaks-action step to satisfy the secret_scan_ci_job_present compliance check
Notes
TDD Phase 2 skipped: this is a pure CI configuration change with no application logic to unit-test.
The compliance check secret_scan_ci_job_present greps for gitleaks/gitleaks-action in ci.yml; the previous implementation used a manual curl install and binary invocation, which did not match that pattern.
SHA pinned per org Action Pinning Policy. fetch-depth: 0 retained for full history scanning. --redact and --exit-code 1 flags preserved.
The .github/checksums/gitleaks_8.30.1_linux_x64.sha256sum file is no longer referenced by any workflow step; it can be removed in a follow-up cleanup but is out of scope for this issue.
Activity
don-petry commentedon Apr 9, 2026
Weekly Compliance Audit (2026-04-09)
This finding is still open.
Detail:
ci.ymldoes not contain a job usinggitleaks— add the secret-scan job from the standardStandard: standards/push-protection.md#required-ci-job
don-petry commentedon Apr 9, 2026
Claude encountered an error —— View job
I'll analyze this and get back to you.
don-petry commentedon Apr 10, 2026
Weekly Compliance Audit (2026-04-10)
This finding is still open.
Detail:
ci.ymldoes not contain a job usinggitleaks— add the secret-scan job from the standardStandard: standards/push-protection.md#required-ci-job
don-petry commentedon Apr 14, 2026
Claude finished @don-petry's task in 9m 4s —— View job •
claude/issue-96-20260414-1305• Create PR ➔Issue #96: Add gitleaks secret-scan job to ci.yml
ci.ymland the org standardci.ymlgitleaks-actionv2 requiresGITLEAKS_LICENSEfor org repos — switched to direct gitleaks binary install (v8.30.1).gitleaksignorewith fingerprintsSummary
Added the required
secret-scanCI job per the push-protection standard. Key decisions:gitleaks-action:gitleaks/gitleaks-actionv2 requires a paidGITLEAKS_LICENSEfor organization repos, so gitleaks v8.30.1 is installed directly and invoked with--redact --verbose --exit-code 1.gitleaksignore: 7 false-positive findings in commit865de69b(file paths containing "api-key" in BMAD documentation CSV/markdown files) were suppressed via fingerprintsci: add gitleaks secret-scan job to ci.yml (closes #96)
don-petry commentedon Apr 17, 2026
Weekly Compliance Audit (2026-04-17)
This finding is still open.
Detail:
ci.ymldoes not contain a job usinggitleaks— add the secret-scan job from the standardStandard: standards/push-protection.md#required-ci-job
don-petry commentedon Apr 18, 2026
Claude finished @don-petry's task in 13s —— View job •
claude/issue-96-20260418-1841• [Create PR ➔](https://github.com/petry-projects/markets/compare/main...claude/issue-96-20260418-1841?quick_pull=1&title=Issue%20%2396%3A%20Changes%20from%20Claude&body=This%20PR%20addresses%20issue%20%2396%0A%0AGenerated%20with%20%5BClaude%20Code%5D(https%3A%2F%2Fclaude.ai%2Fcode)Issue #96: Add gitleaks secret-scan job to ci.yml
ci.ymland PR ci: add gitleaks secret-scan job to ci.yml #107 statussecret-scanjob usinggitleaks/gitleaks-action(compliance check requires this).gitleaksignorefor known false positives from git historyWhy PR #107 didn't close the issue: PR #107 used a direct binary install of gitleaks. The compliance audit check (
pp_check_secret_scan_ci_job) regex specifically looks foruses: gitleaks/gitleaks-action@— binary install doesn't match. This PR switches togitleaks/gitleaks-action@v2.3.9(SHA-pinned).gitleaks-actionv2 requires a freeGITLEAKS_LICENSEkey for GitHub org repos. Please set this as a repo or org secret namedGITLEAKS_LICENSE(get one at gitleaks.io). The CI job will fail without it.•
claude/issue-96-20260418-1841ci: add gitleaks secret-scan job using gitleaks-action
29 remaining items
don-petry commentedon Jun 10, 2026
Dev-Lead Implementation Plan
Issue: #96 — Compliance: secret_scan_ci_job_present
Scope
Replace the manual gitleaks installation in the
secret-scanCI job with thegitleaks/gitleaks-actionGitHub Action, which is required by the org push-protection standard for thesecret_scan_ci_job_presentcompliance check.Implementation Checklist
.github/workflows/ci.yml— replace the "Install gitleaks" + "Run gitleaks" steps with a singlegitleaks/gitleaks-actionaction step; addsecurity-events: writepermission to the jobTests to Write
Test Command
bash ".dev-lead/scripts/dev-lead-lint.sh"don-petry commentedon Jun 10, 2026
Dev-Lead: Implementation Complete
Plan Execution
.github/workflows/ci.yml— replaced manual gitleaks install withgitleaks/gitleaks-action@ff98106e4c7b2bc287b24eaf42907196329070c7 # v2.3.9; addedsecurity-events: writepermission; addedGITHUB_TOKENenv varTest Results
Files Changed
.github/workflows/ci.yml: replaced the two-step manual gitleaks download/run with a singlegitleaks/gitleaks-actionstep to satisfy thesecret_scan_ci_job_presentcompliance checkNotes
secret_scan_ci_job_presentgreps forgitleaks/gitleaks-actioninci.yml; the previous implementation used a manualcurlinstall and binary invocation, which did not match that pattern.fetch-depth: 0retained for full history scanning.--redactand--exit-code 1flags preserved..github/checksums/gitleaks_8.30.1_linux_x64.sha256sumfile is no longer referenced by any workflow step; it can be removed in a follow-up cleanup but is out of scope for this issue.feat: implement issue #96 — Compliance: secret_scan_ci_job_present (#263
ci: add gitleaks secret-scan job to ci.yml (#124)
feat: implement issue #96 — Compliance: secret_scan_ci_job_present (#263
feat: implement issue #96 — Compliance: secret_scan_ci_job_present (#263
feat: implement issue #301 — Compliance: non-stub-feature-ideation.yml (
feat: implement issue #96 — Compliance: secret_scan_ci_job_present (#263
feat: implement issue #325 — Compliance: ruleset-drift-pr-quality-req…
feat: implement issue #96 — Compliance: secret_scan_ci_job_present (#263
feat: implement issue #301 — Compliance: non-stub-feature-ideation.yml (
feat: implement issue #325 — Compliance: ruleset-drift-pr-quality-req…
feat: implement issue #400 — Compliance: ruleset-bypass-dependabot-co…