Raxx · internal docs

internal · gated

RCA — Two independent, non-blocking CI findings surfaced during release-2026.08.19 staging shepherd

Incident ID: 2026-08-19-ci-boundary-velvet-deploy-false-positive-refspec Date: 2026-08-19 Severity: SEV-3 (non-blocking; discovered proactively, not user-reported) Duration: N/A — no outage; both findings were latent/undetected until this shepherd run exercised the paths Blast radius: CI infrastructure only. deploy-staging (the tag-scoped pipeline gating actual staging deploys) was unaffected and completed 8/8 green. No customer-facing impact. Author: sre-agent

Summary

While shepherding the tag-scoped deploy-staging pipeline for release-2026.08.19 (develop HEAD 3506b3e02), the companion push-triggered pipeline (ci-boundary, ci-console, deploy-velvet, deploy-queue, deploy-antlers-next-staging, infra-ci-validate, terraform-validate — all fired by the same gatekeeper push to release) surfaced two independent, non-blocking findings: (1) a gitleaks false positive on a brand-new Wave 3 idempotency test file that follows an already-allowlisted convention but was never added to the allowlist, compounded by a separately-broken report-upload step that has silently failed to publish itemized findings for an unknown period; and (2) a deploy-velvet.yaml bug — introduced 2026-07-08, latent for ~6 weeks — that silently corrupts the Heroku push refspec to empty, which Heroku's pre-receive hook correctly rejects. Both are CI-only; deploy-staging and the actual staging deploy were unaffected.

Timeline (all times UTC)

Impact

What went well

What didn't go well

Root cause analysis

Detection

Resolution

Action items

# Action Owner Due Issue
1 Fix deploy-velvet.yaml ${SUBTREE_SHA}$SUBTREE_SHA (exact diff in issue) operator / next write-capable agent 2026-08-26 #4513
2 Add test_idempotency_billing_wave3_4149.py to .gitleaks.toml chronic-FP allowlist (or generalize the regex to the whole test_idempotency_* family) operator / next write-capable agent 2026-08-22 #4514
3 Provision AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY for raxx-ci-boundary-gitleaks-report-writer at /MooseQuest/aws/ci-boundary/gitleaks-report-writer/ (verify Terraform-side IAM user exists first) operator 2026-08-26 #4514
4 Convert ci-woodpecker.md's Failure mode E-4 "Lint check" from a manual grep instruction into an actual CI gate over all .woodpecker/*.yaml (flagging ${LOCAL_VAR} where LOCAL_VAR isn't a WP built-in / environment: key) so this class can't recur a sixth time operator / sre-agent 2026-09-02 (file separately if not folded into #4513)
5 Route ci-console console-tests failure (11 tests, FileNotFoundError: node — missing node binary in the WP ci-console test image) to feature-developer/CI-image owner; out of sre-agent scope (test-tooling gap, not app logic or deploy-blocking) operator 2026-08-22 (not yet filed — flagged in shepherd report)

References