Summary
The sovereign-ci.yml reusable workflow silently passes even when ALL cargo commands fail. Every cargo command is chained with || echo "::warning::..." which exits 0 regardless of failure. This makes CI a rubber stamp across all 38 repos using this workflow.
Five-Whys
- Why does CI show green? — Every cargo command has
|| echo "::warning::..." fallthrough
- Why was the fallthrough added? — During containerized CI migration (commit ~2026-03-31) to handle workspace path dep resolution differences
- Why is this dangerous? — Compilation errors, test failures, lint failures ALL silently swallowed
- Why hasn't it been noticed? — Warnings are emitted as GitHub annotations but don't fail the job. Easy to miss
- Why does the underlying cargo error persist? — Repos with provable-contracts path deps fail cargo metadata, triggering the fallthrough
Evidence
paiml/paiml-mcp-agent-toolkit CI shows green but does ZERO actual work — all cargo commands hit provable-contracts path resolution error and fall through to the warning echo.
Fix
Remove || echo "::warning::..." from all cargo commands in sovereign-ci.yml. Replace with proper error handling:
- If the intent was to handle path deps gracefully: add sibling checkout steps
- If the intent was continue-on-error for specific jobs: use GitHub Actions
continue-on-error: true at job level (not command level)
Impact
ALL repos in the paiml org using sovereign-ci.yml may have silently broken CI. This is the highest priority fix in the fleet.
Summary
The
sovereign-ci.ymlreusable workflow silently passes even when ALL cargo commands fail. Every cargo command is chained with|| echo "::warning::..."which exits 0 regardless of failure. This makes CI a rubber stamp across all 38 repos using this workflow.Five-Whys
|| echo "::warning::..."fallthroughEvidence
paiml/paiml-mcp-agent-toolkit CI shows green but does ZERO actual work — all cargo commands hit provable-contracts path resolution error and fall through to the warning echo.
Fix
Remove
|| echo "::warning::..."from all cargo commands in sovereign-ci.yml. Replace with proper error handling:continue-on-error: trueat job level (not command level)Impact
ALL repos in the paiml org using sovereign-ci.yml may have silently broken CI. This is the highest priority fix in the fleet.