Repository navigation
evidence(OMN-15651): supersede stale omnimarket#2014 citation with merged #2015 - #6318
Conversation
…market-pr-2014 Appends dod-OmniNode-ai-omnimarket-pr-2014-superseded to contracts/OMN-15651.yaml plus a matching PASS receipt under drift/dod_receipts/OMN-15651/. omnimarket#2014 is CLOSED and unmerged (state=closed, merged_at=null); it was legitimately superseded on the same ticket by #2015, which MERGED (mergeCommit 54356a831e3d8876c69373cac884a3df2a5653f7). This satisfies the citation-supersession carve-out the done-flip guard added under OMN-15712 (done_flip_guard.py::pr_citation_state) so OMN-15651's Done flip is no longer blocked on the stale #2014 attachment. Ticket: OMN-15651
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 55 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe change appends evidence that OmniMarket PR ChangesEvidence supersession
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested labels: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 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-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml`:
- Line 8: Add the required contract_sha256 binding with value
sha256:2a7eef68c43d777991e3a9f12549764658bf9c062db5fa1826dcd580ab80ebc4 in the
receipt, while preserving contract_entry_sha256 unchanged. Ensure both hash
fields are validated through omnibase_core.validation.validator_receipt_gate.
- Line 11: Update the commit_sha field in the command configuration to
981d0cb29ff966bae267e71848e54231d2946f96, replacing the current commit
reference.
- Around line 1-5: Move the receipt represented by the command metadata to the
required timestamped path, preserving its existing contents and metadata:
2026-08-10T12:27:14Z.yaml under the OMN-15651 receipt directory.
🪄 Autofix
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: 32304e3b-f0c5-460f-ae71-f30d4e4549bb
📒 Files selected for processing (2)
contracts/OMN-15651.yamldrift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
| --- | ||
| schema_version: "1.0.0" | ||
| ticket_id: "OMN-15651" | ||
| evidence_item_id: "dod-OmniNode-ai-omnimarket-pr-2014-superseded" | ||
| check_type: "command" |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift
🧩 Analysis chain
🏁 Script executed:
set -eu
printf '%s\n' '--- receipt files ---'
git ls-files 'drift/dod_receipts/OMN-15651/*'
printf '%s\n' '--- target receipt ---'
cat -n drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
printf '%s\n' '--- contract references ---'
rg -n -C 3 'OMN-15651|2014|2015|contract_sha256|contract_entry_sha256' contracts drift | head -250
printf '%s\n' '--- receipt lookup references ---'
rg -n -C 3 'dod-OmniNode-ai-omnimarket-pr-2014-superseded|command\.yaml|dod_receipts' --glob '!drift/dod_receipts/**' .Repository: OmniNode-ai/onex_change_control
Length of output: 50388
🏁 Script executed:
set -eu
printf '%s\n' '--- receipt model definitions and validators ---'
rg -n -C 4 'ModelDodReceipt|contract_entry_sha256|contract_sha256|run_timestamp|dod_receipts' --glob '*.py' --glob '*.ts' --glob '*.js' --glob '*.yaml' --glob '*.yml' .Repository: OmniNode-ai/onex_change_control
Length of output: 50388
🏁 Script executed:
set -eu
printf '%s\n' '--- OMN-15651 tracked files ---'
git ls-files | awk '/^drift\/dod_receipts\/OMN-15651\// || $0=="contracts/OMN-15651.yaml"'
printf '%s\n' '--- target receipt ---'
cat -n drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
printf '%s\n' '--- OMN-15651 contract ---'
cat -n contracts/OMN-15651.yaml
printf '%s\n' '--- exact lookup references ---'
rg -n -C 5 'dod-OmniNode-ai-omnimarket-pr-2014-superseded' contracts scripts .github drift --glob '!drift/dod_receipts/**' || true
printf '%s\n' '--- timestamp-path rules and receipt model references ---'
rg -n -C 3 'timestamp|run_timestamp|ModelDodReceipt|contract_entry_sha256|contract_sha256' scripts src .github pyproject.toml README.md --glob '*.py' --glob '*.yaml' --glob '*.yml' --glob '*.md' 2>/dev/null | head -300Repository: OmniNode-ai/onex_change_control
Length of output: 48885
🏁 Script executed:
set -eu
printf '%s\n' '--- hash implementation and receipt discovery ---'
rg -n -C 8 'def compute_contract_entry_sha256|def compute_contract_sha256|canonical.*receipt|rglob|glob.*yaml|run_timestamp' scripts src --glob '*.py' | head -500
printf '%s\n' '--- hardening path checks ---'
sed -n '770,830p' scripts/validation/check_receipt_hardening.py
printf '%s\n' '--- comparable supersession receipts ---'
for f in \
drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014/command.yaml \
drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2015/command.yaml \
drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2015-ci/command.yaml \
drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omninode_infra-pr-809/command.yaml; do
echo "--- $f"
cat -n "$f"
done
printf '%s\n' '--- all exact path references including hidden and workflow files ---'
rg -n -C 3 'OMN-15651|dod-OmniNode-ai-omnimarket-pr-2014-superseded' .github scripts tests contracts --glob '*.py' --glob '*.yaml' --glob '*.yml' --glob '*.sh' 2>/dev/null | head -400Repository: OmniNode-ai/onex_change_control
Length of output: 50387
🏁 Script executed:
set -eu
printf '%s\n' '--- receipt filename and discovery logic ---'
rg -n -C 5 'command\.yaml|receipt_path|dod_receipts|rglob\("\*\.yaml"\)|glob\("\*\.yaml"\)|run_timestamp' \
scripts/validation scripts --glob '*.py' --glob '*.sh' | grep -E 'check_receipt|receipt_gate|validator|dod_receipts|command\.yaml|receipt_path|run_timestamp' | head -400
printf '%s\n' '--- receipt documentation ---'
rg -n -C 4 'drift/dod_receipts/<TICKET>/<ITEM_ID>/<run_timestamp>|timestamp.*receipt|command\.yaml' \
docs .github scripts README.md --glob '*.md' --glob '*.py' --glob '*.yml' --glob '*.yaml' 2>/dev/null | head -300
printf '%s\n' '--- exact target path status ---'
test -f drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
test ! -e drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/2026-08-10T12:27:14Z.yaml
printf '%s\n' 'current=command.yaml required=2026-08-10T12:27:14Z.yaml'Repository: OmniNode-ai/onex_change_control
Length of output: 50389
Use the required timestamp receipt path.
Move the receipt to drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/2026-08-10T12:27:14Z.yaml.
🤖 Prompt for 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.
In
`@drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml`
around lines 1 - 5, Move the receipt represented by the command metadata to the
required timestamped path, preserving its existing contents and metadata:
2026-08-10T12:27:14Z.yaml under the OMN-15651 receipt directory.
Source: Coding guidelines
| check_type: "command" | ||
| check_value: |- | ||
| state2014="$(gh api repos/OmniNode-ai/omnimarket/pulls/2014 --jq '.state')" && merged2014="$(gh api repos/OmniNode-ai/omnimarket/pulls/2014 --jq '.merged_at')" && state2015="$(gh api repos/OmniNode-ai/omnimarket/pulls/2015 --jq '.state')" && merged2015="$(gh api repos/OmniNode-ai/omnimarket/pulls/2015 --jq '.merged_at')" && mergesha2015="$(gh api repos/OmniNode-ai/omnimarket/pulls/2015 --jq '.merge_commit_sha')" && test "$state2014" = "closed" && test -z "$merged2014" && test "$state2015" = "closed" && test -n "$merged2015" && test "$mergesha2015" = "54356a831e3d8876c69373cac884a3df2a5653f7" && printf "omnimarket #2014 CLOSED-unmerged (merged_at=null/empty), superseded by #2015 MERGED %s at %s\n" "$mergesha2015" "$merged2015" | ||
| contract_entry_sha256: "sha256:fd76673e563740a34bdc68fb7d6e33aad85ec20c40dea99744c6d24861e5b5b6" |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
expected="sha256:$(LC_ALL=C shasum -a 256 contracts/OMN-15651.yaml | awk '{print $1}')"
actual="$(awk -F'"' '/^contract_sha256:/ { print $2 }' drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml)"
test "$actual" = "$expected"Repository: OmniNode-ai/onex_change_control
Length of output: 213
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '%s\n' '--- receipt ---'
cat -n drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
printf '%s\n' '--- contract metadata and hashes ---'
sha256sum contracts/OMN-15651.yaml
rg -n -C 4 'OMN-15651|2014|2015|contract_entry_sha256|contract_sha256' contracts drift/dod_receipts
printf '%s\n' '--- receipt and validator references ---'
rg -n -C 3 'ModelDodReceipt|validator_receipt_gate|contract_entry_sha256|contract_sha256' . -g '*.py' -g '*.yaml' -g '*.yml' -g '*.md'Repository: OmniNode-ai/onex_change_control
Length of output: 50388
🏁 Script executed:
#!/bin/bash
set -euo pipefail
receipt='drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml'
contract='contracts/OMN-15651.yaml'
printf '%s\n' '--- target receipt ---'
cat -n "$receipt"
printf '%s\n' '--- raw contract hash ---'
sha256sum "$contract"
printf '%s\n' '--- target contract ---'
cat -n "$contract"
printf '%s\n' '--- target-specific references ---'
rg -n -C 5 'OMN-15651|omnimarket.*2014|omnimarket.*2015|2014|2015|fd76673e563740a34bdc68fb7d6e33aad85ec20c40dea99744c6d24861e5b5b6' contracts drift/dod_receipts/OMN-15651
printf '%s\n' '--- validator references ---'
rg -n -C 4 'validator_receipt_gate|ModelDodReceipt' . -g '*.py' -g '*.yaml' -g '*.yml' -g '*.md' | head -n 300Repository: OmniNode-ai/onex_change_control
Length of output: 50388
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '%s\n' '--- validator locations ---'
rg -l 'validator_receipt_gate|compute_receipt_contract_hashes|contract_entry_sha256' . \
-g '*.py' -g '*.yaml' -g '*.yml' | rg '(^|/)(omnibase|scripts|tests|tools|drift|contracts)' | head -n 100
printf '%s\n' '--- exact hash implementations ---'
rg -n -C 8 'def .*receipt.*hash|def .*contract.*hash|validator_receipt_gate|contract_entry_sha256' \
. -g '*.py' | head -n 250
printf '%s\n' '--- receipts in target directory with both bindings ---'
for f in drift/dod_receipts/OMN-15651/*/*.yaml; do
fields="$(awk -F: '/^(contract_sha256|contract_entry_sha256):/ {print $1}' "$f" | paste -sd, -)"
case "$fields" in
*contract_sha256*contract_entry_sha256*|*contract_entry_sha256*contract_sha256*)
printf '%s: %s\n' "$f" "$fields"
;;
esac
doneRepository: OmniNode-ai/onex_change_control
Length of output: 7796
Add the required raw contract hash binding.
Add contract_sha256: "sha256:2a7eef68c43d777991e3a9f12549764658bf9c062db5fa1826dcd580ab80ebc4" to the receipt. Keep contract_entry_sha256 unchanged. Bind both hashes with omnibase_core.validation.validator_receipt_gate.
🤖 Prompt for 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.
In
`@drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml`
at line 8, Add the required contract_sha256 binding with value
sha256:2a7eef68c43d777991e3a9f12549764658bf9c062db5fa1826dcd580ab80ebc4 in the
receipt, while preserving contract_entry_sha256 unchanged. Ensure both hash
fields are validated through omnibase_core.validation.validator_receipt_gate.
Source: Coding guidelines
| contract_entry_sha256: "sha256:fd76673e563740a34bdc68fb7d6e33aad85ec20c40dea99744c6d24861e5b5b6" | ||
| status: PASS | ||
| run_timestamp: "2026-08-10T12:27:14Z" | ||
| commit_sha: "c87e48f91639398e9ca79fce54ed77a9b7108c0c" |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
gh api repos/OmniNode-ai/omnimarket/pulls/2015 \
--jq '{head_sha: .head.sha, merge_sha: .merge_commit_sha, merged_at: .merged_at}'Repository: OmniNode-ai/onex_change_control
Length of output: 315
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '%s\n' '--- receipt ---'
cat -n drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
printf '%s\n' '--- contract references ---'
rg -n -C 3 'OMN-15651|2014|2015|contract_sha256|contract_entry_sha256|commit_sha' contracts/OMN-15651.yaml
printf '%s\n' '--- receipt consumers and schema references ---'
rg -n -C 2 'dod_receipts|ModelDodReceipt|contract_entry_sha256|contract_sha256' --glob '*.py' --glob '*.yaml' --glob '*.yml' --glob '*.md' .Repository: OmniNode-ai/onex_change_control
Length of output: 50388
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '%s\n' '--- receipt ---'
cat -n drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml
printf '%s\n' '--- contract ---'
cat -n contracts/OMN-15651.yaml
printf '%s\n' '--- OMN-15651 receipt paths ---'
git ls-files 'drift/dod_receipts/OMN-15651/**' | sort
printf '%s\n' '--- focused schema/path references ---'
rg -n -C 2 'ModelDodReceipt|run_timestamp|contract_sha256|contract_entry_sha256' \
--glob '*.py' --glob '*.yaml' --glob '*.yml' \
drift contracts src tests 2>/dev/null | head -n 300Repository: OmniNode-ai/onex_change_control
Length of output: 50008
🏁 Script executed:
#!/bin/bash
set -euo pipefail
expected='981d0cb29ff966bae267e71848e54231d2946f96'
printf '%s\n' '--- PR `#2015` head commit ---'
gh api "repos/OmniNode-ai/omnimarket/commits/$expected" --jq '{sha: .sha, message: .commit.message}'
printf '%s\n' '--- PR `#2015` receipt ---'
cat -n drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2015/command.yaml
printf '%s\n' '--- commit_sha occurrences for OMN-15651 ---'
rg -n -C 1 '^commit_sha:' drift/dod_receipts/OMN-15651Repository: OmniNode-ai/onex_change_control
Length of output: 11730
Bind commit_sha to the external PR #2015 head commit.
Set commit_sha to 981d0cb29ff966bae267e71848e54231d2946f96. This is the PR #2015 head commit and differs from the current value.
🤖 Prompt for 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.
In
`@drift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/command.yaml`
at line 11, Update the commit_sha field in the command configuration to
981d0cb29ff966bae267e71848e54231d2946f96, replacing the current commit
reference.
Source: Learnings
Adds occ-self-bind-pr-6318 (contract entry + PASS receipt bound via pr_number: 6318) so the occ-preflight eligibility check can resolve a PASS receipt binding OMN-15651 to this PR (required for auto-merge eligibility). Ticket: OMN-15651
Append-only companion for OMN-15651. omnimarket#2014 (CLOSED,
merged_at=null,closed_at=2026-08-03T20:37:18Z, confirmed live viagh api repos/OmniNode-ai/omnimarket/pulls/2014) is a stale citation on theOMN-15651 contract — it was legitimately superseded on the same ticket by
omnimarket#2015, which MERGED (
mergeCommit 54356a831e3d8876c69373cac884a3df2a5653f7,merged_at 2026-08-03T21:22:25Z, confirmed live viagh api repos/OmniNode-ai/omnimarket/pulls/2015). The evidence content thisticket needs is already bound and PASS-receipted separately under
dod-OmniNode-ai-omnimarket-pr-2015in this same contract.This is append-only (+50/-0 across both files, verified against
origin/dev):one new
dod_evidenceentry (dod-OmniNode-ai-omnimarket-pr-2014-superseded)in
contracts/OMN-15651.yaml, plus a matching PASS receipt underdrift/dod_receipts/OMN-15651/dod-OmniNode-ai-omnimarket-pr-2014-superseded/with a real, self-executed probe (
gh apiagainst both PR numbers,testassertions on state/merged_at/merge_commit_sha, exit 0,
probe_stdoutis theliteral captured output). Follows the exact shape of the OMN-15422 precedent
(
dod-OmniNode-ai-omnibase_infra-pr-2596-superseded), whichpre_tool_use_done_flip_guard.sh's OMN-15712 citation-supersession carve-out(
done_flip_guard.py::pr_citation_state) is built and verified against —confirmed locally:
pr_citation_state([<this receipt>], 2014) == "superseded",and
check_receipt_hardening.py::check_contract_filereturns zero violationsagainst the committed files.
Purpose: unblocks the OMN-15651 Done-flip, which the done-flip guard currently
rejects because the attached omnimarket#2014 is closed-unmerged.
Ticket: OMN-15651
Summary by CodeRabbit
Documentation
Chores