Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
6e38f16
contracts(OMN-11828,OMN-11972): add self agent PR evidence (#1597)
jonahgabriel May 25, 2026
c8e8bda
contracts(OMN-11994): add infra handler wiring evidence (#1599)
jonahgabriel May 25, 2026
c69609b
contracts(OMN-12006): add omnimarket overlay evidence (#1615)
jonahgabriel May 25, 2026
4c7a23c
contracts(OMN-12116): add dispatch result applier evidence (#1618)
jonahgabriel May 25, 2026
ec6805b
contracts(OMN-11969): bind compat PR receipt (#1620)
jonahgabriel May 25, 2026
f2b02a1
contracts(OMN-12006): bind omnimarket fleet rewrite receipt (#1622)
jonahgabriel May 25, 2026
ad75250
contracts(OMN-12116): bind verified hot-patch deploy receipt (#1627)
jonahgabriel May 25, 2026
c3d38e7
evidence(OMN-12245,OMN-11599): promote release receipts to main (#1712)
jonahgabriel May 26, 2026
96b4c08
evidence(OMN-12245): update OCC rerun state after c3d38e71 (#1713)
github-actions[bot] May 26, 2026
b8bc20b
ci(OMN-12243): add main target guard (#1717)
jonahgabriel May 26, 2026
ad054ca
fix(OMN-12245): remove stale OCC node entry points
jonahgabriel May 26, 2026
848b5b7
evidence(OMN-12245): bind infra PR 1772 head
jonahgabriel May 26, 2026
b78e936
evidence(OMN-12245): bind omnimarket PR 926 head (#1738)
jonahgabriel May 26, 2026
27378d5
evidence(OMN-12245): bind omnimarket PR 926 final head (#1740)
jonahgabriel May 26, 2026
fa97e51
evidence(OMN-12245): refresh omnimarket PR 926 gate head (#1742)
jonahgabriel May 26, 2026
fb44f9f
evidence(OMN-12245): refresh omniintelligence release gates (#1746)
jonahgabriel May 26, 2026
5ecfa8b
evidence(OMN-12245): refresh omniintelligence PR 681 final head (#1748)
jonahgabriel May 26, 2026
89ba53e
evidence(OMN-12245): refresh omniclaude PR 1681 final head
jonahgabriel May 26, 2026
0479254
evidence(OMN-12245): refresh omniclaude PR 1681 workflow head
jonahgabriel May 26, 2026
ef683a8
evidence(OMN-12245): refresh omniclaude PR 1681 CI head (#1754)
jonahgabriel May 26, 2026
3adbc0e
evidence(OMN-12245): refresh omniclaude PR 1681 DoD source head (#1756)
jonahgabriel May 26, 2026
085b90f
evidence(OMN-12245): refresh omniclaude PR 1681 retired-skill head (#…
jonahgabriel May 26, 2026
10a0a2c
evidence(OMN-12245): refresh omniclaude PR 1681 manifest head (#1760)
jonahgabriel May 26, 2026
6f38fcc
evidence(OMN-12245): bind omnibase core PR 1174 (#1770)
jonahgabriel May 27, 2026
d5752cc
evidence(OMN-12245): bind compat runtime DTO hotfix (#1773)
jonahgabriel May 27, 2026
e69b504
evidence(OMN-12245): bind omnimarket runtime proof hotfix (#1775)
jonahgabriel May 27, 2026
aed980b
evidence(OMN-12245): bind infra projection topic hotfix
jonahgabriel May 27, 2026
308a4d0
evidence(OMN-12245): refresh infra 1773 head receipt
jonahgabriel May 27, 2026
4a8e541
evidence(OMN-12245): bind infra 1774 release receipt (#1781)
jonahgabriel May 27, 2026
7cb88b7
evidence(OMN-12245): refresh infra 1774 retry head (#1783)
jonahgabriel May 27, 2026
ab913d0
evidence(OMN-12245): refresh infra 1774 handler scope head (#1785)
jonahgabriel May 27, 2026
055f8e6
evidence(OMN-12245): bind projection runtime hotfixes
jonahgabriel May 27, 2026
2741a40
chore(OMN-12245): baseline omnimarket guard debt on main (#1791)
jonahgabriel May 27, 2026
6097ee8
ci(OMN-12448): hotfix imperative guard uv setup (#1913)
jonahgabriel May 30, 2026
cedf9db
ci(OMN-12433): retry contract validator installs (#1933)
jonahgabriel May 30, 2026
bdf15a8
ci(OMN-12574): port boundary clone retry to main (#2086)
jonahgabriel Jun 2, 2026
764d76b
release(OMN-12245): promote onex_change_control dev to main (2026-06-…
jonahgabriel Jun 6, 2026
68178c7
docs(OMN-12245): add main release version evidence
jonahgabriel Jun 6, 2026
109fff0
chore(release)(OMN-12245): bump onex_change_control to v0.5.1
jonahgabriel Jun 6, 2026
2594c7a
chore(OMN-12750): baseline omnimarket freestanding guard (#2238)
jonahgabriel Jun 6, 2026
b3d2405
chore(OMN-12751): baseline omnibase_infra freestanding guard (#2240)
jonahgabriel Jun 6, 2026
4a763cf
chore(OMN-12749): promote delegation-cluster OCC contracts+receipts d…
jonahgabriel Jun 7, 2026
e3a7974
chore(OMN-12736,OMN-12742,OMN-12743): promote OCC contracts+receipts …
jonahgabriel Jun 7, 2026
2347b64
chore(OMN-12765): backmerge OCC main evidence to dev
jonahgabriel Jun 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 29 additions & 8 deletions .github/workflows/main-target-guard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,15 @@
# SPDX-License-Identifier: MIT
#
# OMN-12243: Block PRs targeting main unless they are promotion PRs
# from dev with a promotion receipt.
# OMN-12477: Removed the hotfix/* bypass — main accepts only dev promotions.
# from dev with a promotion receipt, or hotfix PRs with evidence and
# a backmerge link.

name: Main target guard

on:
pull_request:
types: [opened, edited, synchronize]

permissions:
contents: read

jobs:
main-target-guard:
name: main-target-guard
Expand Down Expand Up @@ -49,11 +46,35 @@ jobs:

echo "::error::PR is from dev but is missing a promotion receipt."
echo "::error::Add a line matching: promotion-receipt: OCC-<number>"
echo "::error::Retarget this PR to dev; main accepts only promotion PRs."
echo "::error::Retarget this PR to dev; main accepts only promotion or hotfix PRs."
exit 1
fi

if [[ "${HEAD_REF}" == hotfix/* ]]; then
MISSING=()

if ! echo "${PR_BODY}" | grep -qE 'hotfix-evidence:[[:space:]]*OCC-[0-9]+'; then
MISSING+=("hotfix-evidence: OCC-<number>")
fi

if ! echo "${PR_BODY}" | grep -qE 'backmerge:[[:space:]]*#[0-9]+'; then
MISSING+=("backmerge: #<pr-number>")
fi

if [[ "${#MISSING[@]}" -eq 0 ]]; then
echo "::notice::Hotfix PR from '${HEAD_REF}' with valid hotfix evidence and backmerge. Allowed."
exit 0
fi

echo "::error::Hotfix PR from '${HEAD_REF}' is missing required fields:"
for field in "${MISSING[@]}"; do
echo "::error:: - ${field}"
done
echo "::error::Retarget this PR to dev; main accepts only promotion or hotfix PRs."
exit 1
fi

echo "::error::PRs targeting main must come from dev."
echo "::error::PRs targeting main must come from dev or hotfix/*."
echo "::error::Head ref '${HEAD_REF}' is not permitted to target main directly."
echo "::error::Retarget this PR to dev; main accepts only promotion PRs."
echo "::error::Retarget this PR to dev; main accepts only promotion or hotfix PRs."
exit 1
66 changes: 26 additions & 40 deletions allowlists/omnimarket.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -182,14 +182,11 @@ allowlisted_handlers:
- path: omnimarket/nodes/node_code_embedding_effect/handlers/handler_code_embedding_effect.py
violations:
- hardcoded_topic
- hardcoded_topic
- undeclared_transport
- undeclared_transport
- missing_handler_routing
ticket: '# migration pending'
- path: omnimarket/nodes/node_code_enrichment_effect/handlers/handler_code_enrichment_effect.py
violations:
- hardcoded_topic
- hardcoded_topic
- undeclared_transport
- missing_handler_routing
Expand Down Expand Up @@ -280,7 +277,6 @@ allowlisted_handlers:
ticket: '# migration pending'
- path: omnimarket/nodes/node_demo_drift_detector/handlers/handler_demo_drift_detector.py
violations:
- undeclared_transport
- undeclared_transport
- missing_handler_routing
ticket: '# migration pending'
Expand All @@ -290,7 +286,6 @@ allowlisted_handlers:
ticket: '# migration pending'
- path: omnimarket/nodes/node_demo_rehearsal/handlers/handler_demo_rehearsal.py
violations:
- undeclared_transport
- undeclared_transport
- missing_handler_routing
ticket: '# migration pending'
Expand Down Expand Up @@ -553,7 +548,6 @@ allowlisted_handlers:
ticket: '# migration pending'
- path: omnimarket/nodes/node_merge_sweep_state_reducer/handlers/handler_sweep_state.py
violations:
- hardcoded_topic
- hardcoded_topic
- missing_handler_routing
ticket: '# migration pending'
Expand All @@ -572,8 +566,6 @@ allowlisted_handlers:
ticket: '# migration pending'
- path: omnimarket/nodes/node_navigation_history_reducer/handlers/handler_navigation_history_reducer.py
violations:
- undeclared_transport
- undeclared_transport
- undeclared_transport
- missing_handler_routing
ticket: '# migration pending'
Expand Down Expand Up @@ -665,9 +657,6 @@ allowlisted_handlers:
ticket: '# migration pending'
- path: omnimarket/nodes/node_platform_readiness/handlers/handler_platform_readiness.py
violations:
- hardcoded_topic
- hardcoded_topic
- hardcoded_topic
- hardcoded_topic
- missing_handler_routing
ticket: '# migration pending'
Expand Down Expand Up @@ -702,8 +691,6 @@ allowlisted_handlers:
- path: omnimarket/nodes/node_pr_lifecycle_orchestrator/handlers/handler_pr_lifecycle_orchestrator.py
violations:
- hardcoded_topic
- hardcoded_topic
- hardcoded_topic
ticket: '# migration pending'
- path: omnimarket/nodes/node_pr_polish/handlers/handler_pr_polish.py
violations:
Expand All @@ -722,7 +709,6 @@ allowlisted_handlers:
ticket: '# migration pending'
- path: omnimarket/nodes/node_pr_review_bot/handlers/handler_emergency_bypass_parser.py
violations:
- hardcoded_topic
- hardcoded_topic
- logic_in_node
ticket: '# migration pending'
Expand Down Expand Up @@ -1056,6 +1042,32 @@ allowlisted_handlers:
violations:
- hybrid
ticket: '# migration pending'
- path: omnimarket/nodes/node_generate_node_effect/handlers/handler_generate_node.py
violations:
- missing_handler_routing
ticket: OMN-12230
- path: omnimarket/nodes/node_log_persistence_effect/handlers/handler_log_persistence_effect.py
violations:
- undeclared_transport
ticket: OMN-12132
- path: omnimarket/nodes/node_observability_sink_effect/handlers/handler_observability_sink_effect.py
violations:
- missing_handler_routing
ticket: OMN-12217
- path: omnimarket/nodes/node_pr_lifecycle_fix_effect/handlers/adapter_occ_contract.py
violations:
- missing_handler_routing
- hardcoded_topic
ticket: OMN-10278
- path: omnimarket/nodes/node_routing_policy_engine/handlers/handler_score_lookup.py
violations:
- missing_handler_routing
ticket: OMN-8040
- path: omnimarket/nodes/node_ticketing_epic_org_orchestrator/handlers/handler_ticketing_epic_org.py
violations:
- imperative
- hardcoded_topic
ticket: OMN-12202
- path: src/omnimarket/adapters/asyncpg_adapter.py
violations:
- freestanding_db_connection
Expand Down Expand Up @@ -1150,29 +1162,3 @@ allowlisted_handlers:
violations:
- missing_handler_routing
ticket: OMN-12204
- path: omnimarket/nodes/node_log_persistence_effect/handlers/handler_log_persistence_effect.py
violations:
- undeclared_transport
ticket: OMN-12132
- path: omnimarket/nodes/node_pr_lifecycle_fix_effect/handlers/adapter_occ_contract.py
violations:
- missing_handler_routing
- hardcoded_topic
ticket: OMN-10278
- path: omnimarket/nodes/node_ticketing_epic_org_orchestrator/handlers/handler_ticketing_epic_org.py
violations:
- imperative
- hardcoded_topic
ticket: OMN-12202
- path: omnimarket/nodes/node_generate_node_effect/handlers/handler_generate_node.py
violations:
- missing_handler_routing
ticket: OMN-12230
- path: omnimarket/nodes/node_observability_sink_effect/handlers/handler_observability_sink_effect.py
violations:
- missing_handler_routing
ticket: OMN-12217
- path: omnimarket/nodes/node_routing_policy_engine/handlers/handler_score_lookup.py
violations:
- missing_handler_routing
ticket: OMN-8040
14 changes: 7 additions & 7 deletions contracts/OMN-11599.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,13 @@ dod_evidence:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-11599/dod-agent-router-unit-tests/command.yaml
&& grep -q ''17 passed'' drift/dod_receipts/OMN-11599/dod-agent-router-unit-tests/command.yaml'
- id: dod-occ-promotion-pr-1712
description: 'OCC main-promotion PR #1712 carries OMN-11599 router evidence onto main.'
source: manual
status: verified
checks:
- check_type: command
check_value: gh pr view ${PR_NUMBER} --repo ${REPO} --json headRefOid,state,title
- id: dod-omniclaude-pr-1677
description: omniclaude#1677 carries the OMN-11599 agent_router node migration and merged to dev at
merge commit 29fdb73d6 with green CI.
Expand All @@ -38,10 +45,3 @@ dod_evidence:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-11599/dod-occ-pr-2132/command.yaml
&& grep -q ''^pr_number: 2132$'' drift/dod_receipts/OMN-11599/dod-occ-pr-2132/command.yaml'
- id: dod-occ-promotion-pr-1712
description: 'OCC main-promotion PR #1712 carries OMN-11599 router evidence onto main.'
source: manual
status: verified
checks:
- check_type: command
check_value: gh pr view ${PR_NUMBER} --repo ${REPO} --json headRefOid,state,title
44 changes: 22 additions & 22 deletions contracts/OMN-12006.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,21 @@ dod_evidence:
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-omnimarket-pr-853/command.yaml'
- id: dod-overlay-deploy-assessment
description: No repository-tracked deployment artifact is required; runtime model IDs are deployment
configuration supplied through bifrost_overrides.yaml on the target host.
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-overlay-deploy-assessment/command.yaml'
- id: dod-occ-pr-1615
description: 'onex_change_control PR #1615 carries the central OCC evidence for OMN-12006.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-occ-pr-1615/command.yaml'
- id: dod-omnimarket-pr-856
description: 'omnimarket PR #856 rewrites bifrost_delegation backends with capability-named IDs (local-coder,
local-reasoner, local-heavy-reasoning, local-embedding) and updates routing_tiers.yaml to match.
Expand All @@ -33,6 +48,13 @@ dod_evidence:
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-omnimarket-pr-856/command.yaml'
- id: dod-occ-pr-1622
description: 'onex_change_control PR #1622 carries the OMN-12006 omnimarket PR #856 receipt repair.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-occ-pr-1622/command.yaml'
- id: dod-omnimarket-pr-871
description: 'omnimarket PR #871 restores capability-named backends after PR #851 merged out-of-order
and reverted PR #856. Capability names and null model_name values confirmed in main. #magic___^_^___line '
Expand Down Expand Up @@ -109,25 +131,3 @@ dod_evidence:
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-occ-pr-1663/command.yaml'
- id: dod-overlay-deploy-assessment
description: No repository-tracked deployment artifact is required; runtime model IDs are deployment
configuration supplied through bifrost_overrides.yaml on the target host.
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-overlay-deploy-assessment/command.yaml'
- id: dod-occ-pr-1615
description: 'onex_change_control PR #1615 carries the central OCC evidence for OMN-12006.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-occ-pr-1615/command.yaml'
- id: dod-occ-pr-1622
description: 'onex_change_control PR #1622 carries the OMN-12006 omnimarket PR #856 receipt repair.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12006/dod-occ-pr-1622/command.yaml'
42 changes: 0 additions & 42 deletions contracts/OMN-12245.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -502,45 +502,3 @@ dod_evidence:
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-main-version-evidence-pr-2229/command.yaml'
- id: dod-occ-backmerge-market-pr-1070
description: 'omnimarket dev backmerge PR #1070 carries v0.4.3 release metadata back to dev.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-backmerge-market-pr-1070/command.yaml'
- id: dod-occ-backmerge-infra-pr-1887
description: 'omnibase_infra dev backmerge PR #1887 carries v0.38.1 release metadata back to dev.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-backmerge-infra-pr-1887/command.yaml'
- id: dod-occ-backmerge-occ-pr-2230
description: 'onex_change_control dev backmerge PR #2230 carries v0.5.1 release metadata back to dev.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-backmerge-occ-pr-2230/command.yaml'
- id: dod-occ-backmerge-dash-pr-176
description: 'omnidash dev backmerge PR #176 carries v1.1.1 release metadata back to dev.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-backmerge-dash-pr-176/command.yaml'
- id: dod-occ-backmerge-compat-pr-136
description: 'omnibase_compat dev backmerge PR #136 carries v0.5.2 release metadata back to dev.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-backmerge-compat-pr-136/command.yaml'
- id: dod-occ-backmerge-evidence-pr-2231
description: 'OCC dev backmerge PR #2231 carries OMN-12245 main release-version evidence back to dev.'
source: manual
status: verified
checks:
- check_type: command
check_value: 'grep -q ''^status: PASS$'' drift/dod_receipts/OMN-12245/dod-occ-backmerge-evidence-pr-2231/command.yaml'
Loading
Loading