This runbook covers triage for Sprint readiness CI failures in:
.github/workflows/ci-pr.yml.github/workflows/slack-notify.ymlscripts/ci/run_health_gate.shscripts/ci/run_smoke.sh
- backend_v2 integration smoke tests
- frontend integration smoke testbackend_v2/tests/integration/cli_hooks_smoke.py
- placeholder synthetic checks for upcoming CLI doctor and data commandsscripts/ci/validate_chart_exports.py (non-blocking in current wave)
- CSV: header/schema + row quality + fixture content diff checks
- PDF: header/EOF/page-marker integrity checks when artifact exists
- JPEG: SOI/EOI/dimension integrity checks when artifact existsbash scripts/ci/run_health_gate.shpytest import/module errors in backend_v2 testsAction: verify Python deps in scripts/ci/run_smoke.sh are still sufficient
Frontend smoke failures
Action: run npm --prefix frontend/trademaster_ui run test:integration-smoke locally
Chart export QA warning/failure signals
warn/fail findingsartifacts/chart-export-validation.json:summary.semver_signalsummary.actionable_failures[]summary.actionable_warnings[]Use check_code, message, and remediation to triage quickly.
Slack message not sent
SLACK_WEBHOOK_URL secret exists; if not, this is expected safe behaviorslack-notify.yml never prints webhook values.SLACK_WEBHOOK_URL is absent, workflow records a summary message and exits without failure.--strict.doctor command checks.actionlint or equivalent workflow lint enforcement in CI.