Skip to content

fix(OMN-20074): correct workflow shape check rejecting retired boundary clone list - #2010

Merged
jonahgabriel merged 2 commits into
devfrom
landing/l8729-boundary-shape-check
Oct 15, 2026
Merged

jonahgabriel merged 2 commits into
devfrom
landing/l8729-boundary-shape-check

Conversation

@jonahgabriel

Copy link
Copy Markdown
Contributor

Cause: test_cross_repo_boundary_validation_clones_all_boundary_repos in test_ci_workflow_shape.py always expects onex_change_control. The dispatch PR updates the boundary action from the reviewed #1942 revision de3398d with eight clones to the reviewed #1972 revision c1f8e8f with seven clones. git show of both manifests shows #1972 removes the only change-control boundary.

Tests:

  • This check-only PR keeps exact repository-set equality and binds it to those exact reviewed action references.
  • Both valid pairs pass.
  • Negative tests refuse every missing peer, mismatched clone lists, unreviewed action revision or owner and duplicate peer.
  • Changed files are tests/unit/validation/test_ci_workflow_shape.py and contracts/OMN-20074.yaml.
  • Contract appends AC55 with new bound dod_evidence, test commands and a hosted CI deploy check.
  • No workflow or runtime source changes in this check-fix PR.

Validation on h101:

  • 125 passed across the workflow shape test file, tests/ci/test_ticket_contract_ids_unique_omn20074.py and tests/ci/test_contract_validation_in_tree_omn20074.py against dev.
  • 25 passed for boundary-related tests with WORKFLOW_PATH pointed at the unchanged ci(OMN-20074): take omnibase_core's last live callers and the doc-scan exemption off onex_change_control #2009 dispatch workflow.
  • Original assertion reproduced failure against dispatch workflow before the check fix.
  • Ruff check and yamlfmt passed, contract YAML parses with unique criteria/evidence IDs and valid bindings.

Evidence-Ticket: OMN-20074

…ry 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.
@jonahgabriel
jonahgabriel requested a review from a team as a code owner October 15, 2026 22:02
@jonahgabriel
jonahgabriel enabled auto-merge (squash) October 15, 2026 22:02
…en 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.
@jonahgabriel
jonahgabriel merged commit b637775 into dev Oct 15, 2026
151 checks passed
@jonahgabriel
jonahgabriel deleted the landing/l8729-boundary-shape-check branch October 15, 2026 23:14
jonahgabriel added a commit that referenced this pull request Oct 15, 2026
… 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 added a commit that referenced this pull request Oct 16, 2026
…n exemption off onex_change_control (#2009)

* ci(OMN-20074): take omnibase_core's last live callers off onex_change_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.

* fix(OMN-20074): retain contract evidence and doc-content scan 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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant