Repository navigation
ci(OMN-20074): take omnibase_core's last live callers and the doc-scan exemption off onex_change_control - #2009
Merged
Merged
Conversation
jonahgabriel
enabled auto-merge (squash)
October 15, 2026 21:01
jonahgabriel
added a commit
that referenced
this pull request
Oct 15, 2026
…ry clone list (#2010) * fix(OMN-20074): correct workflow shape check rejecting retired boundary clone list Separate check-only fix for #2009. The existing test_cross_repo_boundary_validation_clones_all_boundary_repos expects onex_change_control for every action revision. The audited #1942 action de3398d requires eight repositories; #1972 c1f8e8f has no change-control boundary and uses seven. The test now validates the exact action/list pair, with negative controls rejecting every missing peer, mismatched list, unknown action or owner and duplicate peers. Only tests/unit/validation/test_ci_workflow_shape.py and contracts/OMN-20074.yaml change, with appended AC55 and dod_evidence plus a hosted deploy check. Focused tests: 125 passed for the workflow shape file and two contract validation files against base dev, 25 passed for boundary cases reading PR #2009 dispatch workflow. Ruff and yamlfmt passed. * fix(OMN-20074): align contract node selector with pytest evidence token format PR #2010 dispatched at 71e2cd3. Tests (Split 14/40) and repo-evidence / dod-verify fail because test_every_repo_contract_binds_every_criterion requires an existing relative .py path token in pytest evidence and the new hosted deploy check uses a file.py::test_name token. Only contracts/OMN-20074.yaml changes: replace that node selector with the same file path plus -k test_cross_repo_boundary_validation_clones_all_boundary_repos in both the evidence_requirements command and dod_evidence check_value. Test assertions and validation stay unchanged. Local verification: 19 contract/caller tests passed, 22 boundary_repo_contract tests passed, selected hosted workflow check 1 passed; yamlfmt and git diff --check passed. CI status is unverified.
…_control - ci.yml boundary-validation: the validate-boundaries pin moves from de3398d (omnibase_core#1942) to c1f8e8f (omnibase_core#1972, which dropped the only boundary whose producer lived in onex_change_control); the repos input drops onex_change_control. The pin and the repos input move together, as omniclaude#2757 did. - main-target-guard.yml: the promotion-receipt exception (a body line "promotion-receipt: OCC-<n>") is removed and every pull request onto main is refused. release.yml moves main by fast-forwarding it to the release tag and opens no pull request against main. - Tests written first and failing at the merge base: tests/ci/test_validate_boundaries_caller_omn20962.py (new pin test, repos assertion) and tests/ci/test_main_target_guard_prepush_omn20780.py (promotion PR onto main refused whatever its body; the guard reads no receipt). - Dead text removed: the ruff per-file ignore for the deleted scripts/ci/occ_preflight_wait.py, the dependency-cascade header naming onex_change_control as a target, the required-check-skip-guard docstring example naming the deleted occ-preflight.yml, and the pre-commit comment that said onex_change_control owns the ticket-contract schema. - contracts/OMN-20074.yaml gains AC52 and AC53 with their dod_evidence; no existing criterion line changes.
… during rebase PR #2009 was dispatched at a89a252 with green CI and merge_state=DIRTY. It was rebased onto dev b637775. Mechanical contract conflicts were resolved by retaining both base AC55 and PR AC52, AC53, AC54 requirements and all corresponding dod_evidence entries. The base workflow-shape test from merged PR #2010 was retained unchanged; the old one-line test edit became redundant. The doc-content scan removes the onex_change_control path exemption and retains contracts path exemption. No push was performed; the controller will push.
jonahgabriel
force-pushed
the
omn-20074-core-occ-residue
branch
from
October 15, 2026 23:45
a89a252 to
0ee4655
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.
Summary
OCC retirement for omnibase_core (OMN-20074). Base dev; merge base 4bb0b7e, head 85fcb3f.
Changes
.github/workflows/ci.ymlboundary-validation job: the validate-boundaries pin moves from de3398d (omnibase_core#1942) to c1f8e8f (omnibase_core#1972, which dropped the only boundary whose producer lived in onex_change_control), and the repos input drops onex_change_control. The job id, name and required context are unchanged. omniclaude#2757 made the same move..github/workflows/main-target-guard.yml: the promotion-receipt exception (a PR body linepromotion-receipt: OCC-<n>admitted a dev or promotion/* PR onto main) is removed; every PR onto main is refused, and PRs onto other bases are not affected. release.yml moves main by fast-forwarding it to the release tag and opens no PR against main. omnibase_infra's guard already refuses every PR onto main._workflow_model.pydocstring example naming the deleted occ-preflight.yml; the .pre-commit-config.yaml comment that said onex_change_control owns the ticket-contract schema.src/omnibase_core/validation/doc_content_scan/): theonex_change_control/path exemption for OMN ticket references is removed; thecontracts/exemption and the local-environment rules stay. No tracked path in omnibase_core sits underonex_change_control/, and of the ten repositories checked (onex_change_control included) only omnibase_core's pre-commit config runs check-doc-content-scan. The handler, model and package docstrings, the .pre-commit-config.yaml comment, the .pre-commit-hooks.yaml description and the validator-requirements.yaml entry follow.Tests
Written first:
onex_change_control/path is flagged; the LAN-IP control moves to acontracts/pathAt the merge base 5 tests failed for the first two files and 1 for the doc-content scan; with the change the doc_content_scan tests pass, 68 tests. With the change, 63 passed across those two files and six neighbouring test files; tests/ci/test_ticket_contract_ids_unique_omn20074.py 4 passed; tests/ci/test_contract_validation_in_tree_omn20074.py 9 passed.
Remaining references
git grep -E 'onex_change_control|onex-change-control|occ-preflight'over tracked files: before 166 files / 568 lines; after 162 files / 555 lines. Non-comment lines in .github, .pre-commit-config.yaml and pyproject.toml outside required-checks.yaml: before 3, after 0.Lab
Lab: host=h200 lane=occ-off-omnibase-core sha=85fcb3ffe0da87ba09dc0b11200baff0bf9f933d command="onex-lab-run --via bus -- uv run pytest <the two changed test files, tests/unit/validation/doc_content_scan and 9 neighbouring tests/ci, tests/scripts and tests/unit/validation files> -q -n 0 --no-cov -p no:randomly" observed 155 passed, exit 0 (work unit lw-e9fab5ec10d14c28). In the lane worktree on h201 the new tests failed at merge base 4bb0b7e (5, and 1 for the doc-content scan) before the change.
Closes OMN-20074