Repository navigation
ci(OMN-20074): fold the thread, handshake policy and propagate dry-run gates into ci.yml - #1934
Merged
Merged
Conversation
jonahgabriel
enabled auto-merge (squash)
October 10, 2026 12:19
jonahgabriel
pushed a commit
to OmniNode-ai/onex_change_control
that referenced
this pull request
Oct 10, 2026
…13547) * evidence(OMN-20074): author OCC companion for OmniNode-ai/omnibase_core#1934 OCC companion by node_pr_lifecycle_fix_effect (OMN-13317 F1 / OMN-13990 / OMN-14285). Product PR head eb5d91a3fa935b3201d0a13940ec628deba2853b. * evidence(OMN-20074): self-bind OCC#13547 + rebind contract_sha256 --------- Co-authored-by: omnimarket-bot <bot@omninode.ai>
Rebase the verification gate folds and workflow budget test pin onto dev at 4a41773. Resolve adjacent additions in contracts/OMN-20074.yaml by retaining upstream AC7 and AC8 and branch AC9 through AC12 with their evidence entries.
jonahgabriel
force-pushed
the
jonah/omn-20074-core-fold-gates
branch
from
October 10, 2026 12:35
eb5d91a to
7a030ab
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
OMN-20074. Applies RULING 2026-10-10T11:04:20Z lane=orchestrator-9f8a (R5, "Yes to all recs"): a verification job whose only enforcing context was the embedded occ-preflight runs in
ci.yml, where the requiredCI Summarypoller fails on it. No new required context, annotation, allowlist or baseline entry is added. omnibase_core#1930 rebases onto this branch: with its head 096d4b1 the omniclaudeadvisory_job_gate(pinned at 966d61ce9f0c2eb6e18b317c2453bdfbe9eeb7d0, live dev required contexts) reports 6 UNENFORCED_VERIFICATION_JOB findings; with this branch merged under it, 3 remain, all automation.Classification
cr-thread-gate-caller.ymlgate: Verification gate by shape. The reusablecr-thread-gate.ymlis a no-op that exits 0 while CodeRabbit is retired, so it decides nothing today. Folded as is; a deletion belongs to the CodeRabbit removal the reusable's header names.handshake-policy-gate.ymlpolicy-gate: Verification gate. Its only pull-request-reachable trigger wasmerge_group(it also runs weekly and on dispatch). It was not a required context, and its header called a required-context flip a separate staged decision. Folding makes it blocking in the merge queue.propagate-config.ymldry-run-ci-check: Verification check of the propagator script and targets file, filtered on five paths.auto-merge.ymlpre-checkandauto-merge,propagate-config.ymlpropagate: Automation (act, decide nothing).What changed
ci.ymlgains jobgate(uses./.github/workflows/cr-thread-gate.yml, unconditional, no needs, composed contextgate / CodeRabbit Thread Checkunchanged).ci.ymlgains jobhandshake-policy-gate(uses./.github/workflows/handshake-policy-gate.yml,if: github.event_name == 'merge_group', permissions contents read and actions read, secrets inherit).ci.ymlgains jobpropagate-dry-runnamedPropagate Config Dry-run (OMN-20074)(same steps and read-only token scope as the old job; the five-path filter ofpropagate-config.ymlis matched in-run:pull_requestandpushcompare against their base,workflow_dispatchalways runs,merge_groupandscheduleskip, no computable diff runs the check).cr-thread-gate-caller.ymlis deleted.handshake-policy-gate.ymldropsmerge_groupand its embedded preflight and gainsworkflow_call(schedule and dispatch stay).propagate-config.ymldropsdry-run-ci-check.scripts/ci/ci_summary_gate.pyaddsgate / CodeRabbit Thread CheckandPropagate Config Dry-run (OMN-20074)toGATE_JOBSandSTRICT_SUCCESS_JOBS; themerge_group-only caller is not anchored because it is skipped on everypull_requestrun, and a failure of it still fails CI Summary through the default-deny sweep..github/required-checks.yamlrow forgate / CodeRabbit Thread Checknow namesci.yml.architecture-handshakes/pull-request-workflow-budget.yamlbudget 30 to 29, withEXPECTED_BUDGETintests/validation/test_pull_request_workflow_ratchet.pyand the pin intests/ci/test_repo_evidence_caller_omn20074.pylowered to 29.contracts/OMN-20074.yamlgains AC9, AC10, AC11, AC12.Not changed
auto-merge.ymlpre-checkandauto-merge.propagate-config.ymlpropagate.advisory_job_gatealready has a way to classify automation: the# advisory-ok: OMN-nnnnn <reason>annotation and the per-repository census baseline in omniclaude. Neither is used here; whether automation should be annotated is an open operator question.Rebase notes for #1930
The merge was resolved in a scratch tree:
cr-thread-gate-caller.ymlmodify/delete conflict, resolve by deleting.propagate-config.ymlconflict, resolve by taking the deletion ofdry-run-ci-check.pull-request-workflow-budget.yamlbudget 28 (both PRs lower it from 30), keep both waiver comment blocks.EXPECTED_BUDGET28 and the pin intests/ci/test_repo_evidence_caller_omn20074.py28.contracts/OMN-20074.yamlkeep AC7, AC8 then AC9 to AC12 in each of the three lists.Tests
tests/ci/test_ci_fold_gates_omn20074.py(29 tests), written first: before the change 23 of its 29 tests failed (6 passed as controls), and the two edited existing tests (tests/scripts/test_propagate_config.py,tests/validation/test_pull_request_workflow_ratchet.py) failed too.evaluatereturn failure for all three, a skipped anchored job returns failure, an absent anchored job returns pending.gate / CodeRabbit Thread CheckandPropagate Config Dry-run (OMN-20074)are derived from the reusable's job name and the job'sname:, and a test pins them to those files.Lab: host h201 (lane occ-ret-core-fold-c6-5d21), branch head eb5d91a.
advisory_job_gate(omniclaude 966d61ce9f0c2eb6e18b317c2453bdfbe9eeb7d0, live dev required contexts) on ci(OMN-20074): omnibase_core S6 part 2, delete the OCC callers and stop comparing with OCC #1930 head 096d4b1 alone: exit 1, 6 findings.occ-preflight / eligibilityremoved: exit 1 both times, 3 findings, namedauto-merge.ymlpre-check,auto-merge.ymlauto-merge,propagate-config.ymlpropagate. On this branch alone the gate exits 0.tests/ci,tests/unit/scripts/ci,tests/unit/validation,tests/validation,tests/scriptsandtests/unit/scripts/test_policy_gate_app_token.pythroughonex_lab_run.pyon host h200 at eb5d91a: 8071 passed, 9 skipped, 30 failed, exit 1. All 30 failures are intests/ci/test_receipt_gate_caller_evidence_omn20070.pyandtests/ci/test_receipt_gate_merged_fix_control_omn17427.py; those two files pass (62 passed) on h201 at the same head. The cause on h200 was not investigated.Evidence-Ticket: OMN-20074
Evidence-Source: OCC#13547