fix(ci): add push trigger for staging/main to check-commands workflow#1093
Conversation
…#1086) Direct pushes to staging bypassed the native-conflict CI check since check-commands.yml only triggered on pull_request events. Add a push trigger covering staging and main with the same paths filter so all code paths that modify commands/ or the check script run the conflict check regardless of how the change reaches the branch.
There was a problem hiding this comment.
APPROVED: commit 17aa8e3 after context-aware review (2 agents: Security + Infrastructure). 0 findings created. Safe to merge.
Review Details
Reviewed commit: 17aa8e3 | Domains: Infrastructure/CI | Agents: 2 (Security, Infrastructure)
Automated Checks
| Check | Result |
|---|---|
| Secrets detection | ✅ PASS — no credentials in diff |
| Env var audit | ✅ PASS — no new env vars |
| Python compile | ⏭ SKIPPED — no Python files |
| TypeScript build | ⏭ SKIPPED — no TS files |
| SQL migration | ⏭ SKIPPED — no SQL files |
| Builder contract scope | ✅ PASS — PR changes exactly the contracted file |
| Sibling workflow drift | ✅ PASS — no shared jobs across workflows |
| Integration assumptions | ✅ PASS — additive trigger, no activation path risk |
Security Assessment
- No write permissions or
GITHUB_TOKENusage in the job — read-only execution - The
check-native-conflicts.shscript is a pure file-scan with no network access, external calls, or side effects - Push trigger is path-filtered to
commands/**andscripts/check-native-conflicts.sh— no noise risk
Infrastructure Assessment
- The change is purely additive (7 lines, no deletions)
- Paths filter is identical to the existing
pull_requesttrigger — consistent coverage mainpush coverage is redundant withpublish.ymlinline step but adds defense-in-depth (runs without npm publish overhead)- No container restarts, no stateful services affected
Findings
None — clean review.
PR Review Summary: #1093 — fix(ci): add push trigger for staging/main to check-commands workflowReview IntegrityReviewed commit: `17aa8e3` | Current HEAD: `17aa8e3` | Status: CURRENT Verdict: APPROVEDContext-Aware ReviewDomains: Infrastructure/CI | Agents: 2 (Security, Infrastructure) Integration Checks (Phase 2.5)Code registration: ✅ PASS — additive YAML trigger, no activation path risk Risk Matrix
FindingsNone — clean review. Automated Checks
RecommendationClean additive change. PR merged to `staging`. Context-aware review complete. 2 agents + integration checks. 0 findings triaged. |
Graph Decision Record — Issue #1086 / PR #1093{
"schema_version": "1",
"issue": 1086,
"pr": 1093,
"repo": "RapierCraftStudios/forgedock",
"lane": "fast-lane",
"pr_base": "staging",
"branch": "fix/check-commands-push-trigger-1086",
"head_sha": "17aa8e375bda2217bbc73880caff955045abb73f",
"merge_commit": "2ccd8f97fc77c798e97438c50d3236f2d57e5d63",
"investigation": {
"verdict": "CONFIRMED",
"confidence": "HIGH",
"task_type": "Bug Fix"
},
"context": {
"historical_edges_referenced": 0,
"forge_annotations_read": ["FORGE:INVESTIGATOR", "FORGE:CONTRACT", "FORGE:BUILDER"]
},
"build": {
"files_changed": 1,
"quality_gate": "skipped",
"quality_gate_iterations": 0
},
"review": {
"verdict": "APPROVED",
"findings_created": 0,
"agents_run": 2
},
"merge": {
"merged_at": "2026-06-25T10:16:25Z",
"justification": "Investigation confirmed (CONFIRMED/HIGH), additive YAML change, security review passed, no blocking findings"
}
}Queryable: |
Summary
Adds a
pushtrigger tocheck-commands.ymlso the native-conflict check runs on direct pushes tostagingandmain, not only on pull request events.Previously, direct pushes to
staging(e.g. squash-merges) bypassed the CI guard added in #1074. Thepublish.ymlworkflow coverspush to mainwith an inline step, butstaginghad no push-based protection.Changes
.github/workflows/check-commands.yml— Addedpush: branches: [staging, main]trigger with the samepathsfilter (commands/**,scripts/check-native-conflicts.sh) as the existingpull_requesttriggerTesting
commands/directly tostaging— confirmcheck-native-conflictsjob triggers [type:manual]Closes #1086
Implementation branch:
fix/check-commands-push-trigger-1086Base:
staging