Skip to content

contract(OMN-9126): bind omnibase_infra core source pin PR #1589 - #1001

Merged
jonahgabriel merged 2 commits into
mainfrom
jonah/occ-omn-9126-receipt
May 14, 2026
Merged

jonahgabriel merged 2 commits into
mainfrom
jonah/occ-omn-9126-receipt

Conversation

@jonahgabriel

@jonahgabriel jonahgabriel commented May 14, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds OCC contract for OMN-9126 with downstream receipt bundle binding omnibase_infra PR #1589, which pins omnibase-core to main branch (0.40.2) in [tool.uv.sources] so the runtime image carries the multi-param handler injection extension. Core 0.40.1 (PyPI) only supports single-param handler injection (event_bus); core main extends Step 4 to multi-param injection covering event_bus, container, and ownership_query. Restores wire_from_manifest boot on .201 (previously TypeError on 10+ handlers declaring container: ModelONEXContainer in __init__).

Files

  • contracts/OMN-9126.yaml — ticket contract with 2 DoD evidence items (omnibase_infra PR chore(occ-deps): update rerun state after 7ce91f1a #1589 + this OCC PR)
  • drift/dod_receipts/OMN-9126/dod-omnibase-infra-pr-1589/command.yaml — downstream binding receipt (status: PASS, pr_number: 1589)
  • drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml — OCC self-PR binding (number assumed 1001; will be reconciled if this PR opens at a different number)

Why

omnibase_infra#1589 is the deploy blocker. Its verify / verify (Receipt Gate) check fails because the previously cited Evidence-Source: OMN-9126 predates this contract — no OCC contract exists for OMN-9126 yet. Per OMN-10419 Finding 2, evidence binding must reference an OCC commit at or after the contract creation. This PR introduces that contract.

After this PR merges, omnibase_infra#1589 body will be updated to cite this PR (Evidence-Source: OCC#<this-pr>), and its Receipt Gate will pass.

Test plan

  • yamlfmt + pre-commit hooks pass locally on all 3 files
  • Validate ticket contract YAML against ModelTicketContract (OMN-8808) pre-commit passes
  • Require dod_evidence on ticket contracts pre-commit passes
  • Contract check_value fail-open pattern lint (OMN-9350) pre-commit passes
  • CI green
  • omnibase_infra#1589 body cites this PR, verify gate re-evaluates green

Evidence-Source: OCC#1001
Evidence-Ticket: OMN-9126

Summary by CodeRabbit

  • Tests
    • Added a CI-gate contract specification for ticket OMN-9126.
    • Added accompanying evidence and command-based verification records capturing PASS results and metadata for related PRs (1589 and 1001).

Review Change Stack

Adds OCC contract for OMN-9126 with downstream receipt bundle binding
omnibase_infra PR #1589, which pins omnibase-core to main branch (0.40.2)
in [tool.uv.sources] so the runtime image carries the multi-param handler
injection extension.

Core 0.40.1 (PyPI) only supports single-param handler injection
(event_bus); core main extends Step 4 to multi-param injection covering
event_bus, container, and ownership_query. This fixes TypeError on 10+
handlers declaring container: ModelONEXContainer in __init__ that caused
three consecutive runtime boot failures on .201.

Files:
- contracts/OMN-9126.yaml
- drift/dod_receipts/OMN-9126/dod-omnibase-infra-pr-1589/command.yaml
- drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml

After merge, omnibase_infra#1589 body will be updated to cite this PR
(Evidence-Source: OCC#<this-pr>), and its verify gate will re-evaluate
green.

OMN-9126

Evidence-Source: OCC#1001
Evidence-Ticket: OMN-9126
@coderabbitai

coderabbitai Bot commented May 14, 2026 •

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f3de74f4-1b6c-4924-877d-c93453dd4c1d

📥 Commits

Reviewing files that changed from the base of the PR and between 0ff953b and ebfe73f.

📒 Files selected for processing (1)
  • drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml
✅ Files skipped from review due to trivial changes (1)
  • drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml

📝 Walkthrough

Walkthrough

This PR adds a new CI gate contract for OMN-9126 ("Runtime Startup is a First-Class CI Gate"), including a contract specification file that disables emergency bypass and declares evidence requirements, plus two command verification records confirming PR states and source changes.

Changes

OMN-9126 CI Gate Contract and Evidence

Layer / File(s) Summary
Contract specification and evidence requirements
contracts/OMN-9126.yaml
Declares CI gate metadata for OMN-9126 with emergency_bypass: false and interface_change: false, defining evidence requirements that reference downstream PR #1589 and drift-receipt command checks for both omnibase_infra PR #1589 and onex_change_control PR #1001.
Evidence command verification records
drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml, drift/dod_receipts/OMN-9126/dod-omnibase-infra-pr-1589/command.yaml
Two command.yaml files populate the contract's evidence requirements: one validates PR #1001 is OPEN, the other validates PR #1589 is OPEN with a PASS status indicating the PR contains the OMN-9126 core source pin enabling multi-param handler injection at runtime boot.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

Contracts and drift receipts, oh what a sight! 🐰
Evidence flowing from PR to PR flight,
Runtime startup gates standing proud and tall,
OMN-9126 passes through one and all! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title accurately and specifically describes the main change: binding the omnibase_infra core source pin (PR #1589) as part of the OMN-9126 contract. It directly reflects the primary objective of creating the contract to enable this downstream dependency.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jonah/occ-omn-9126-receipt

Comment @coderabbitai help to get the list of available commands and usage tips.

@jonahgabriel
jonahgabriel enabled auto-merge (squash) May 14, 2026 06:27

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml`:
- Around line 9-15: The receipt currently uses placeholder SHAs ("commit_sha:
pending" and "headRefOid: \"pending\"") which must be replaced with the actual
commit SHA from the PR; update commit_sha and the probe_stdout's headRefOid to
the real 40-char commit hash for the PR branch referenced by probe_command (gh
pr view ... headRefOid), ensure probe_stdout JSON and commit_sha match exactly,
and only mark status PASS after these values reflect the real commit provenance
(fields to change: commit_sha, probe_stdout.headRefOid).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: b262a111-93be-4f7a-a8c7-b7d91a9931c6

📥 Commits

Reviewing files that changed from the base of the PR and between 3e3593f and 0ff953b.

📒 Files selected for processing (3)
  • contracts/OMN-9126.yaml
  • drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml
  • drift/dod_receipts/OMN-9126/dod-omnibase-infra-pr-1589/command.yaml

Comment thread drift/dod_receipts/OMN-9126/dod-occ-pr-1001/command.yaml Outdated
Receipt-gate ModelDodReceipt validator rejects commit_sha=pending
(must be 7-40 hex chars). Update self-receipt to reference the
real OCC commit SHA so the receipt validates successfully.

OMN-9126
@jonahgabriel
jonahgabriel merged commit b6621be into main May 14, 2026
29 checks passed
@jonahgabriel
jonahgabriel deleted the jonah/occ-omn-9126-receipt branch May 14, 2026 06:35
andywu42 pushed a commit to andywu42/onex_change_control that referenced this pull request Jun 10, 2026
…c PRs (OmniNode-ai#579)

* docs(OMN-10376): add DoD contracts and receipts for swarm pattern epic PRs

Adds 11 missing ticket contracts + dod receipts for omnibase_core PRs
blocked by the Receipt Gate verify/verify check:

- OMN-10347 (PR OmniNode-ai#986): harden receipt gate skip tokens
- OMN-10351 (PR OmniNode-ai#987): EnumFileZone
- OMN-10357 (PR OmniNode-ai#991): ModelCompletionVerifyResult
- OMN-10358 (PR OmniNode-ai#990): extract_identifiers
- OMN-10363 (PR OmniNode-ai#1001): static import graph
- OMN-10367 (PR OmniNode-ai#996): trajectory store
- OMN-10368 (PR OmniNode-ai#1000): PRM detectors
- OMN-10369 (PR OmniNode-ai#1002): PRM escalation
- OMN-10371 (PR OmniNode-ai#1003): EnumDiffSeverity + AST diff models
- OMN-10372 (PR OmniNode-ai#998): tree-sitter symbol extractor
- OMN-10381 (PR OmniNode-ai#992): dispatch eval models

All contracts validated against ModelTicketContract schema.

* docs(OMN-10376): add contracts for newly opened swarm pattern PRs

Adds 4 more missing ticket contracts + dod receipts for omnibase_core PRs
opened after the initial batch:

- OMN-10360 (PR OmniNode-ai#1005): verify() + receipt-gate hook
- OMN-10356 (PR OmniNode-ai#1006): path-filtered CI matrix docs-only short-circuit
- OMN-10375 (PR OmniNode-ai#1009): AST semantic diff CLI + PR risk labeler
- OMN-10365 (PR OmniNode-ai#1010): co-change dark matter CLI + JSON output

All contracts validated against ModelTicketContract schema.

* docs(OMN-10376): add contract and receipts for proof-of-life integration tests

* docs(OMN-10376): resolve OCC receipt review comments

* ci: kick CI Summary runner (GHA queue stall)
jonahgabriel added a commit that referenced this pull request Aug 26, 2026
#7150)

* evidence(OMN-16574): OCC companion for OmniNode-ai/omninode_infra#1006

Hand-scaffolded via scripts/auto_scaffold_contract.py because the
per-PR OCC autobind publisher (call-occ-autobind.yml) ran and
published successfully but the .201 effects-runtime consumer
(node_pr_lifecycle_fix_effect) had not minted a companion or PATCHed
Evidence-Source onto omninode_infra#1006 after ~10 minutes -- well
outside the ~30s turnaround observed on this same ticket family's
other PRs tonight (#1001, #1002, #1004, #1005).

Evidence-Ticket: OMN-16574

* fix(OMN-16574): fill real ModelDodReceipt fields, scope commands to what was actually run

The scaffold-generated stub receipts were missing required
ModelDodReceipt fields (run_timestamp, commit_sha, runner, verifier,
probe_command, probe_stdout) -- occ-preflight rejected them as
"nonpass_receipt" with 6 pydantic validation errors. Replaces the
generic stub check_values (uv run pytest tests/ -v /
pre-commit run --all-files) with the exact commands actually run
against omninode_infra#1006's head commit, fills every required
field with real captured output, and rebinds contract_entry_sha256
via the real compute_contract_entry_sha256() after the contract edit
(verified: both receipts validate against ModelDodReceipt and
hash-match their contract entries).

commit_sha is a cross-repo (omninode_infra) SHA; embedded a real
"gh pr view 1006 --repo OmniNode-ai/omninode_infra" probe into
probe_command/probe_stdout so the Evidence-Commit SHA Existence Gate
(OMN-15461/OMN-15111) can resolve it against the correct repo instead
of defaulting to onex_change_control.

Evidence-Ticket: OMN-16574

* fix(OMN-16574): add OCC self-bind entry for PR #7150

occ-preflight identified the specific remaining gap on its own: no
receipt bound this OCC PR itself (#7150), so eligibility could not
resolve a PASS receipt for the in-repo evidence PR carrying the
OMN-16574 contract. Adds the occ-self-bind-pr-7150 dod_evidence entry
and its receipt (real "gh pr view 7150" probe output), and recomputes
contract_sha256 on the two existing dod-001/dod-002 receipts -- the
whole-file hash moves when the contract gains an entry, per-entry
contract_entry_sha256 does not (OMN-13888), and both are verified
unchanged/consistent against the live contract file.

Evidence-Ticket: OMN-16574
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