Skip to content

feat(OMN-10872,OMN-10873): OCC contracts and dod receipts for DI Wave 2 - #1113

Merged
jonahgabriel merged 8 commits into
mainfrom
jonah/omn-10872-occ-contracts
May 18, 2026
Merged

jonahgabriel merged 8 commits into
mainfrom
jonah/omn-10872-occ-contracts

Conversation

@jonahgabriel

@jonahgabriel jonahgabriel commented May 17, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Evidence-Source: OCC#1113
Evidence-Ticket: OMN-10872
Evidence-Ticket: OMN-10873

Summary by CodeRabbit

  • Refactor

    • Updated internal dependency-injection seams to improve maintainability while preserving runtime behavior (no restart or deploy required).
  • Chores

    • Added verification records and evidence entries documenting successful unit tests and PR/CI checks for the related changes.

…Wave 2

Contracts for HandlerNavigationHistoryReducer protocol injection seam
(OMN-10872) and NodeOverseerBenchmarker harness injection seam (OMN-10873).
Both are seam tickets with unit-test and PR-merge evidence.
omnimarket PR: OmniNode-ai/omnimarket#693
@coderabbitai

coderabbitai Bot commented May 17, 2026 •

Copy link
Copy Markdown

Warning

Rate limit exceeded

@jonahgabriel has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 52 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7a58b653-3567-499f-9836-9cc700105cfc

📥 Commits

Reviewing files that changed from the base of the PR and between a2557f6 and f285791.

📒 Files selected for processing (1)
  • drift/dod_receipts/OMN-10872/dod-unit-tests-pass/command.yaml
📝 Walkthrough

Walkthrough

Adds/updates two DI-seam contract YAMLs (OMN-10872, OMN-10873) and corresponding drift DOD receipt command records verifying unit-test, deploy/no-restart, and PR evidence checks all PASS.

Changes

DI Seam Contracts and Evidence Documentation

Layer / File(s) Summary
OMN-10872 HandlerNavigationHistoryReducer DI seam contract
contracts/OMN-10872.yaml, drift/dod_receipts/OMN-10872/*
Contract records HandlerNavigationHistoryReducer.init accepting `ProtocolNavigationHistoryWriter
OMN-10873 NodeOverseerBenchmarker DI seam contract
contracts/OMN-10873.yaml, drift/dod_receipts/OMN-10873/*
New contract records NodeOverseerBenchmarker.init accepting `ProtocolLlmEvalHarness

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 In YAML fields the seams unwind,
Optional protocols gently bind.
Tests reported green, receipts in flight,
Two contracts whisper: everything's right.
Hopping off now — refactor delights!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically identifies the main change: adding OCC contracts and DOD receipts for two DI seam tickets (OMN-10872 and OMN-10873) in Wave 2, which matches the pull request objectives and file changes.
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.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ 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/omn-10872-occ-contracts

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

@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: 4

🤖 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 `@contracts/OMN-10872.yaml`:
- Line 26: The contract description in OMN-10872.yaml incorrectly states the PR
is "merged to main with CI green" while the DoD receipt at
drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml records the PR
as "open with CI passing"; update the description string in OMN-10872.yaml to
accurately reflect the current state (e.g., "open with CI passing") OR wait to
merge the OCC PR and then update the receipt at
drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml to mark the PR
as merged and adjust the description back to "merged to main with CI green".

In `@drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml`:
- Around line 1-8: The receipt is missing three required cross-repo PR-binding
fields: add commit_sha containing the head commit SHA of omnimarket PR `#693` (use
the PR's headRefOid), add probe_command that runs gh pr view for the external PR
to fetch metadata (e.g., use gh pr view 693 --repo OmniNode-ai/omnimarket --json
state,headRefOid so you capture state and headRefOid), and add actual_output
with a short human-readable PASS summary that references the PR number and the
head commit SHA (e.g., "PASS: omnimarket PR `#693` at <commit_sha>"). Update
command.yaml to include these fields alongside the existing keys so the receipt
follows the PR-binding pattern.

In `@drift/dod_receipts/OMN-10872/dod-unit-tests-pass/command.yaml`:
- Around line 1-8: The receipt in command.yaml is missing the required
commit_sha for cross-repo evidence; update the YAML by adding a top-level
commit_sha field (a string) containing the head commit SHA of the omnimarket PR
that produced the test run (omnimarket PR `#693`) alongside the existing
status/ticket_id/evidence_id entries so the record can be traced back to that
exact commit for the HandlerNavigationHistoryReducer DI injection tests.

In `@drift/dod_receipts/OMN-10873/dod-omnimarket-pr-693/command.yaml`:
- Line 5: Update the description field in command.yaml so it accurately reflects
that this receipt documents the PR merge (not PR open); change the value of the
"description" key (currently "omnimarket PR  `#693` open with CI passing") to a
merge-oriented message that references PR `#693` and merge evidence (e.g.,
"omnimarket PR `#693` merged with CI passing"), ensuring the receipt content
aligns with the PR-merge DoD artifact intent.
🪄 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: 7091649a-dd24-4546-934b-567ca872a64a

📥 Commits

Reviewing files that changed from the base of the PR and between b2130d4 and e1c0daa.

📒 Files selected for processing (6)
  • contracts/OMN-10872.yaml
  • contracts/OMN-10873.yaml
  • drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml
  • drift/dod_receipts/OMN-10872/dod-unit-tests-pass/command.yaml
  • drift/dod_receipts/OMN-10873/dod-omnimarket-pr-693/command.yaml
  • drift/dod_receipts/OMN-10873/dod-unit-tests-pass/command.yaml

Comment thread contracts/OMN-10872.yaml Outdated
Comment thread drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml Outdated
Comment thread drift/dod_receipts/OMN-10872/dod-unit-tests-pass/command.yaml Outdated
Comment thread drift/dod_receipts/OMN-10873/dod-omnimarket-pr-693/command.yaml Outdated
…pt schema

Receipts previously used a custom flat schema with fields like evidence_id,
description, repo, command, output, recorded_at which fail ModelDodReceipt
Pydantic validation (15 errors per receipt). Rewrites all 6 receipts to use
the canonical schema with schema_version, evidence_item_id, check_type,
check_value, run_timestamp, runner, verifier, probe_command, probe_stdout.

Updates commit_sha from stale 723e68ce to live omnimarket #693 head
eed1dc53 (verified live via gh pr view) and propagates to contract grep
patterns.

Adds dod-occ-pr-1113 self-binding receipts for both tickets so
receipt-gate pr_ticket_mismatch resolves.

@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-10872/dod-unit-tests-pass/command.yaml`:
- Around line 15-19: The receipt shows a provenance mismatch: the actual_output
string names "omnimarket" while working_dir points to "onex_change_control";
update one to match the other so traceability is correct—either change
actual_output to reference "onex_change_control" or set working_dir to the
omnimarket working tree, and ensure pr_number (693) and branch
("jonah/omn-10872-di-refactor-nav-history-benchmarker") still correspond to the
chosen repo context; modify the fields actual_output and/or working_dir in
command.yaml accordingly.
🪄 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: fe52105f-e881-41f0-8f0e-2935a5f7f670

📥 Commits

Reviewing files that changed from the base of the PR and between e1c0daa and a2557f6.

📒 Files selected for processing (10)
  • contracts/OMN-10872.yaml
  • contracts/OMN-10873.yaml
  • drift/dod_receipts/OMN-10872/dod-deploy/command.yaml
  • drift/dod_receipts/OMN-10872/dod-occ-pr-1113/command.yaml
  • drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml
  • drift/dod_receipts/OMN-10872/dod-unit-tests-pass/command.yaml
  • drift/dod_receipts/OMN-10873/dod-deploy/command.yaml
  • drift/dod_receipts/OMN-10873/dod-occ-pr-1113/command.yaml
  • drift/dod_receipts/OMN-10873/dod-omnimarket-pr-693/command.yaml
  • drift/dod_receipts/OMN-10873/dod-unit-tests-pass/command.yaml
✅ Files skipped from review due to trivial changes (7)
  • drift/dod_receipts/OMN-10873/dod-deploy/command.yaml
  • drift/dod_receipts/OMN-10872/dod-occ-pr-1113/command.yaml
  • drift/dod_receipts/OMN-10873/dod-occ-pr-1113/command.yaml
  • drift/dod_receipts/OMN-10873/dod-unit-tests-pass/command.yaml
  • drift/dod_receipts/OMN-10872/dod-omnimarket-pr-693/command.yaml
  • drift/dod_receipts/OMN-10873/dod-omnimarket-pr-693/command.yaml
  • drift/dod_receipts/OMN-10872/dod-deploy/command.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • contracts/OMN-10872.yaml
  • contracts/OMN-10873.yaml

Comment thread drift/dod_receipts/OMN-10872/dod-unit-tests-pass/command.yaml Outdated
@jonahgabriel
jonahgabriel enabled auto-merge (squash) May 18, 2026 03:06
…receipt

CodeRabbit flagged that actual_output claimed tests ran in omnimarket but
working_dir pointed to onex_change_control. Added pr_repo field and
clarified that OCC is the canonical evidence registry while execution
happened in the omnimarket worktree.
Previous fix added pr_repo (rejected by ModelDodReceipt as extra field) and
made working_dir a free-text string (schema requires absolute path). Restore
schema compliance: working_dir back to absolute omnimarket worktree path,
cross-repo provenance documented in actual_output instead.
@jonahgabriel
jonahgabriel merged commit f0cd8fe into main May 18, 2026
30 checks passed
@jonahgabriel
jonahgabriel deleted the jonah/omn-10872-occ-contracts branch May 18, 2026 04:39
jonahgabriel added a commit that referenced this pull request Jun 8, 2026
…urrent contract hash

Appending the omnimarket A3 dod_evidence entries changed the OMN-12775 contract
hash; every receipt under the ticket must pin the current hash or the Receipt
Gate fails with contract_hash_mismatch. Re-pin all four receipts (omnidash #192,
occ-evidence, omnimarket #1113 + tests) to sha256:980da6c1.
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