Skip to content

feat(OMN-10421): add contract + receipts for contract_sha256 hash-binding - #604

Merged
jonahgabriel merged 2 commits into
mainfrom
jonah/omn-10421-occ-contract-sha256-binding
May 1, 2026
Merged

jonahgabriel merged 2 commits into
mainfrom
jonah/omn-10421-occ-contract-sha256-binding

Conversation

@jonahgabriel

@jonahgabriel jonahgabriel commented May 1, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Paired OCC evidence for OMN-10421 (T11: hash-bind contract to receipt).

Note: the core implementation PR adds contract_sha256 support and tests, but this OCC PR must validate against omnibase_core@main in Receipt Gate. The central receipts intentionally omit the new field until the schema PR lands.

Evidence

Test plan

  • uv run validate-yaml contracts/OMN-10421.yaml
  • uv run python - <<'PY' ... ModelDodReceipt.model_validate(...) ... PY
  • uv run python - <<'PY' ... validate_pr_receipts(pr_body='Closes OMN-10421', ...) ... PY
  • uv run python scripts/lint_contract_check_values.py contracts/OMN-10421.yaml

…ding

Contract and PASS receipts for OMN-10421 (T11 gate-collapse-fix plan).
Receipts include contract_sha256 field — dogfooding the feature this
ticket ships. Evidence: code PR #1018 omnibase_core, 8 unit tests pass.
@coderabbitai

coderabbitai Bot commented May 1, 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 28 seconds before requesting another review.

To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing.

⌛ 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: 76eb666a-9492-4600-9e6b-c247a8db6b0a

📥 Commits

Reviewing files that changed from the base of the PR and between 0ef1be5 and 6c8aea2.

📒 Files selected for processing (5)
  • contracts/OMN-10421.yaml
  • drift/dod_receipts/OMN-10421/dod-001/command.yaml
  • drift/dod_receipts/OMN-10421/dod-002/command.yaml
  • drift/dod_receipts/OMN-10421/dod-003/command.yaml
  • drift/dod_receipts/OMN-10421/dod-004/command.yaml
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jonah/omn-10421-occ-contract-sha256-binding

Review rate limit: 0/5 reviews remaining, refill in 28 seconds.

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

@jonahgabriel
jonahgabriel enabled auto-merge May 1, 2026 15:30
@jonahgabriel
jonahgabriel added this pull request to the merge queue May 1, 2026
Merged via the queue into main with commit ea76b79 May 1, 2026
26 checks passed
@jonahgabriel
jonahgabriel deleted the jonah/omn-10421-occ-contract-sha256-binding branch May 1, 2026 16:12
jonahgabriel added a commit that referenced this pull request May 12, 2026
…idence for canary→routing feedback loop (#942)

* contract(OMN-10846,OMN-10847,OMN-10848): add OCC contracts and DoD evidence for canary→routing feedback loop tickets

All three tickets delivered via PR #606 on OmniNode-ai/omnimarket (merge commit 1af2f16a1c7d10a1f9392288f6cd63a8a1473957).
PRs #604 and #605 were closed as superseded after cherry-pick into #606.

- OMN-10846: build_available_models_from_scores() bridge (capability_scores → routing policy)
- OMN-10847: ModelMaterializeResult + routing_outcomes.quality_score population
- OMN-10848: Proof-of-life integration test (canary → scores → routing, pure in-memory)

* fix(OMN-10846,OMN-10847,OMN-10848): add dod-occ-pr receipts and all evidence receipts for verify gate

- Add dod-occ-pr evidence item to OMN-10846, OMN-10847, OMN-10848 contracts
- Create drift/dod_receipts YAML for all dod_evidence items across all three tickets
- Fix dod-no-handler-modification check_value to use grep '^+.*def' prefix
- Fix dod-quality-score-nonzero check_value to assert quality_score > 0.0
- Address CodeRabbit threads on evidence description mismatches

* fix(OMN-10846,OMN-10847,OMN-10848): replace hardcoded gh pr diff 606 with receipt-check pattern

Switch dod_evidence check_values from inline `gh pr diff 606 -R omnimarket`
commands to `grep -q '^status: PASS$' "$CONTRACT_REPO_DIR/drift/dod_receipts/...`
to comply with the legacy-gh-pr lint rule (OMN-9350) that forbids hardcoded
PR numbers in gh pr commands.

* fix(OMN-10846,OMN-10847,OMN-10848): correct commit_sha provenance in upstream PR receipts

Set commit_sha to 5a3dd07b (omnimarket PR #606 head SHA) in all receipts
that document omnimarket evidence. Previously had the OCC branch SHA
which misrepresents the provenance of the upstream evidence.

* fix(OMN-10848): tighten quality-score probe to require > 0.0 match only

Remove the loose |assert.*quality_score fallback from the probe regex.
The actual diff output confirms quality_score.*>.*0.0 matches directly,
so the tighter form is both accurate and avoids false-positive via None-check.

* fix(OMN-10846): align dod-no-handler-modification description with receipt-check approach

The description previously said "diff shows only X added" but the check
reads a receipt file — mismatched claim/verification. Updated to say
"verified via receipt" to match the actual check pattern.
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