[TT-16977] fix: prevent dep-guard from skipping downstream jobs on push #971
probelabs / Visor: architecture
failed
Apr 17, 2026 in 1m 0s
🚨 Check Failed
architecture check failed because fail_if condition was met.
Details
📊 Summary
- Total Issues: 2
- Error Issues: 2
🔍 Failure Condition Results
Failed Conditions
- global_fail_if: output.issues && output.issues.some(i => i.severity === 'critical' || i.severity === 'error')
- Severity: ❌ error
Issues by Category
Architecture (1)
- ❌ .github/workflows/release.yml:311 - The logic in the
ifconditions added to jobstest-controller-api,api-tests,test-controller-distros,upgrade-deb, andupgrade-rpmdoes not align with the stated goal of the pull request. The goal is to prevent downstream jobs from being skipped when an upstream dependency is skipped (e.g., on a push event). However, the added conditionneeds.<dependency>.result == 'success'will explicitly cause the job to be skipped if the dependency's result is'skipped'. This enforces the default skip propagation behavior rather than preventing it.
Logic (1)
- ❌ system:0 - Global failure condition met: output.issues && output.issues.some(i => i.severity === 'critical' || i.severity === 'error')
Powered by Visor from Probelabs
💡 TIP: You can chat with Visor using /visor ask <your question>
Annotations
Check failure on line 508 in .github/workflows/release.yml
probelabs / Visor: architecture
architecture Issue
The logic in the `if` conditions added to jobs `test-controller-api`, `api-tests`, `test-controller-distros`, `upgrade-deb`, and `upgrade-rpm` does not align with the stated goal of the pull request. The goal is to prevent downstream jobs from being skipped when an upstream dependency is skipped (e.g., on a push event). However, the added condition `needs.<dependency>.result == 'success'` will explicitly cause the job to be skipped if the dependency's result is `'skipped'`. This enforces the default skip propagation behavior rather than preventing it.
Raw output
To allow these jobs to run when their dependencies have either succeeded or been skipped, the condition should be modified to check for both outcomes. For example, for the `test-controller-api` job, the condition could be `(needs.goreleaser.result == 'success' || needs.goreleaser.result == 'skipped')`. This ensures the jobs run on push events (when dependencies might be skipped) but still do not run if a dependency fails.
Loading