Repository navigation
feat(OMN-14858): wire required-check skip-vector guard into omnibase_compat - #178
Conversation
…compat Fan-out of the required-check skip-vector guard (OMN-14854, omniclaude canary, merged omniclaude#1917) into omnibase_compat — the first fan-out repo after the canary. - .github/workflows/required-check-skip-guard-caller.yml: local caller invoking the canonical reusable workflow (OmniNode-ai/omniclaude/.github/workflows/required-check-skip-guard-reusable.yml@main) on every pull_request + merge_group, no paths filter (self-wedge prevention per the design spec). - .github/required-checks.yaml (schema v3): generated from the LIVE omnibase_compat dev branch protection (21 contexts, fetched via gh api on 2026-07-20). Each context resolved to its producing job/caller using the same context->job algorithm the validator itself uses. One pre-existing real finding (schema-compat fork-safety `if:` in onex-schema-compat.yml, vector-2 UNGATED_CONDITIONAL) is documented with skip_semantics: neutral_ok, tracked in OMN-14862 (mirrors OMN-14856's disposition for the omniclaude canary's own findings). Local validator run (validate_no_required_check_skip_vectors.py against this manifest + these workflows): PASS, 0 findings. NOT done in this PR (explicit scope, matches OMN-14854/OMN-14857 ordering): - Branch protection is NOT modified. The guard's own composed context (required-check-skip-guard / check-skip-vectors) runs on every PR advisory-only; the manifest row for it is mode: ADVISORY. Flipping it to REQUIRED is a follow-up PR gated on 2+ independent green runs on dev. - No pre-commit hook is added in this PR. omniclaude does not yet expose the validator as an installable pre-commit "repo:" hook (no .pre-commit-hooks.yaml manifest) or a pip-installable package containing .github/actions/required-check-skip-guard/*.py, so a local hook here would require vendoring/duplicating the canonical validator script — which the CI side deliberately avoids via the reusable workflow's single-source-of-validator pattern. Wiring a local hook is a tracked follow-up once omniclaude ships a consumable distribution mechanism (repo: hook manifest, or an installable package entry point). Closes OMN-14858
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 30 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
omniclaude's main has not yet been promoted past OMN-14854 (verified 2026-07-20: raw.githubusercontent.com/.../omniclaude/main/.github/workflows/ required-check-skip-guard-reusable.yml -> 404; .../dev/... -> 200). The @main ref caused the check-suite to fail with zero jobs ("workflow file issue") on every PR (github#178 first push). Pin to @dev until omniclaude promotes dev -> main and the file is confirmed present there; flip back to @main as a follow-up at that point. Manifest cross_repo_ref updated to match. Closes OMN-14858
…#178 Manual squash merge by Codex merge controller. Evidence companion for OmniNode-ai/omnibase_compat#178 / OMN-14858. Verified on 2026-07-20T22:33Z: occ-preflight success, Receipt Gate success, CI Summary success, no review threads.
Summary
Fan-out of the required-check skip-vector guard (OMN-14854, omniclaude canary, merged omniclaude#1917) into
omnibase_compat— the first fan-out repo after the canary..github/workflows/required-check-skip-guard-caller.yml: local caller invoking the canonical reusable workflow (OmniNode-ai/omniclaude/.github/workflows/required-check-skip-guard-reusable.yml@dev) on everypull_request+merge_group. Nopaths:/paths-ignore:filter — this is the one required-check workflow that must never be dodgeable by a path filter (design spec §4c)..github/required-checks.yaml(schema v3): generated from the LIVE omnibase_compatdevbranch protection —gh api repos/OmniNode-ai/omnibase_compat/branches/dev/protection/required_status_checks --jq '.contexts', 21 contexts, fetched 2026-07-20. Every context resolved to its producing job/caller using the same context->job algorithm the validator itself uses (_workflow_model.py::resolve_context_to_job), not guessed.schema-compatjob in.github/workflows/onex-schema-compat.yml(required context"ONEX Change Control Schema Compatibility") has a job-levelif:referencinggithub.event.pull_request.head.repo.full_name(an ordinary fork-vs-same-repo guard) — the classifier treats anygithub.event.*reference besides.repository/.actionasUNGUARDED_CONDITIONAL(vector-2), no partial credit. Documented withskip_semantics: neutral_ok+ rationale, tracked in OMN-14862 (mirrors OMN-14856's disposition for the omniclaude canary's own findings — not remediated here).Local validator run (
validate_no_required_check_skip_vectors.pyagainst this manifest + these workflows):PASS: no required-check skip vectors found.Known blocker: the new guard check itself is red (non-required, documented)
The
@mainref for the reusable workflow 404s — omniclaude'smainhas not yet been promoted past OMN-14854 (verified:main404s,dev200s onraw.githubusercontent.com/.../required-check-skip-guard-reusable.yml). Fixed the caller side by pinning to@devinstead (commite0f373f), but that surfaced a second, upstream defect:required-check-skip-guard-reusable.yml's own "Fetch validator (omniclaude canonical source)" step also hardcodesref: mainfor its cross-repo checkout of the validator scripts, independent of the ref the caller used to reach the reusable workflow itself. That 404s the same way, so the validator script is missing and the job fails onpython: can't open file ... [Errno 2] No such file or directory.Filed as OMN-14868 (blocks every fan-out repo, not just this one — OMN-14857's omnimarket fan-out will hit the identical wall). Not fixed in this PR — out of scope for omnibase_compat, needs an omniclaude-side fix (parameterize the fetch-step ref).
This does not block this PR.
required-check-skip-guard / check-skip-vectorsismode: ADVISORYin the manifest and is not inrequired_status_checks— its red state is informational only. All 21 real REQUIRED contexts on this PR are green.Explicitly NOT done in this PR (scope matches OMN-14854 / OMN-14857 ordering)
required-check-skip-guard / check-skip-vectors) runs on every PR advisory-only; its manifest row ismode: ADVISORY. Flipping it toREQUIREDondevbranch protection is a follow-up PR, gated on 2+ independent green runs ondev(which in turn is gated on OMN-14868 landing) — never in the same PR that introduces the workflow (self-wedge prevention).repo:hook (no.pre-commit-hooks.yamlmanifest in omniclaude) or a pip-installable package containing.github/actions/required-check-skip-guard/*.py. Vendoring a local copy of the script into omnibase_compat would duplicate the canonical validator — the exact thing the CI side avoids via the reusable workflow's single-source-of-validator pattern (mirrorsdeploy-gate-reusable.yml@main). Wiring a local pre-commit hook is a tracked follow-up once omniclaude ships a consumable distribution mechanism.Test plan
validate_no_required_check_skip_vectors.pyrun against the new manifest +.github/workflows/— PASS, 0 findingspre-commit run --files .github/workflows/required-check-skip-guard-caller.yml .github/required-checks.yaml— all applicable hooks passgh pr checks— all 21 real REQUIRED contexts green; only the new non-required advisory guard check is red (documented above, OMN-14868)required-check-skip-guard / check-skip-vectorstoREQUIREDin omnibase_compat branch protection + manifestmode: REQUIREDschema-compatfork-safetyif:findingCloses OMN-14858
Evidence-Ticket: OMN-14858
Evidence-Source: OCC#4514