Summary
staging — the integration branch every release is promoted from — has no branch protection at all:
$ gh api repos/f5devcentral/bnk-forge/branches/staging/protection
{"message":"Branch not protected","status":"404"}
So the CI jobs, including the new gitleaks / shellcheck / version-consistency security gates (#182, #180), run but are not required checks. Nothing blocks a merge to staging when a gate is red — a secret, a shellcheck failure, or a version-drift could land and then be promoted.
Found in a pre-4.0.0-release critical review, alongside #184.
Why it matters
Suggested fix (repo-admin, not a code PR)
- Add branch protection to
staging requiring the aggregate CI Gate status check (and a review, matching main's intent).
- Reconcile
main's lock so the release automation can complete (tracked separately with the release-lock work).
- Confirm the new P1 gates (
Secret Scan, ShellCheck, Version Consistency, Script Self-Tests) are included in the required set once they've merged.
Scope
Governance/config, not code — hence no code PR. Severity medium: active human review is the current backstop (workaround exists), but the automated security gate is not actually enforcing.
Summary
staging— the integration branch every release is promoted from — has no branch protection at all:So the CI jobs, including the new gitleaks / shellcheck / version-consistency security gates (#182, #180), run but are not required checks. Nothing blocks a merge to
stagingwhen a gate is red — a secret, a shellcheck failure, or a version-drift could land and then be promoted.Found in a pre-4.0.0-release critical review, alongside #184.
Why it matters
mainis protected to the point the release automation itself can't push (lock_branch: true— see the release-lock discussion), whilestagingis wide open. Both ends want squaring before a public release leans on these gates.Suggested fix (repo-admin, not a code PR)
stagingrequiring the aggregateCI Gatestatus check (and a review, matchingmain's intent).main's lock so the release automation can complete (tracked separately with the release-lock work).Secret Scan,ShellCheck,Version Consistency,Script Self-Tests) are included in the required set once they've merged.Scope
Governance/config, not code — hence no code PR. Severity medium: active human review is the current backstop (workaround exists), but the automated security gate is not actually enforcing.