diff --git a/contracts/OMN-14141.yaml b/contracts/OMN-14141.yaml new file mode 100644 index 00000000000..0b1db06d931 --- /dev/null +++ b/contracts/OMN-14141.yaml @@ -0,0 +1,70 @@ +--- +schema_version: "1.0.0" +ticket_id: "OMN-14141" +title: "Preserve handler_routing default_handler discovery for Dependabot FastAPI update" +summary: >- + Bind omnibase_infra PR #2228 to central OCC evidence for the runtime loader compatibility fix needed + by the FastAPI Dependabot update after dev moved forward. The PR keeps the dependency bump current with + the already-merged Uvicorn Dependabot update, refreshes the runner-image identity lock, makes the build-loop + append handler constructible for offline auto-wiring discovery, and teaches package discovery to parse + package-relative handler_routing default_handler shorthand without weakening the OMN-14141 flat-schema + fail-closed guard. No live deploy, restart, docker exec, rpk produce, or .201 mutation was performed; + runtime validation is local tests plus normal CI. +is_seam_ticket: false +interface_change: false +interfaces_touched: [] +emergency_bypass: + enabled: false + justification: "" + follow_up_ticket_id: "" +evidence_requirements: + - kind: "ci" + description: "omnibase_infra PR #2228 is open against dev at the bound head SHA" + command: "gh pr view 2228 --repo OmniNode-ai/omnibase_infra --json state,headRefOid,baseRefName" + - kind: "tests" + description: "Focused auto-wiring, default_handler, runner identity, and real-manifest tests pass + locally" + command: >- + uv run pytest tests/integration/infra/test_omn_12765_release_backmerge_identity.py::test_release_backmerge_preserves_runner_identity_lock + tests/unit/runtime/auto_wiring/test_discovery.py tests/unit/runtime/auto_wiring/test_handler_routing_flat_schema_guard.py + tests/unit/runtime/test_build_handler_routing_default_handler.py tests/integration/runtime/test_build_loop_auto_wiring_boot.py + tests/integration/test_auto_wiring_real_manifest.py -q +dod_evidence: + - id: "dod-omnibase-infra-pr-2228" + description: >- + Consuming-PR binding: omnibase_infra PR #2228 at head 2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f carries + the FastAPI range update, dev Uvicorn range merge, runner identity refresh, package-relative default_handler + parser compatibility, and build-loop append offline wiring compatibility. + source: "manual" + checks: + - check_type: "command" + check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-omnibase-infra-pr-2228/command.yaml" + - id: "dod-pr-2228-local-validation" + description: >- + Local validation passed in the PR worktree: runner image identity verifies, Ruff passed on touched + Python files, uv lock is consistent, and the focused auto-wiring/default_handler/build-loop/real-manifest/runner-identity + test slice passed. + source: "manual" + checks: + - check_type: "command" + check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-pr-2228-local-validation/command.yaml" + - id: "dod-pr-2228-deploy-plan" + description: >- + Runtime deploy-gate binding: PR #2228 touches runtime auto-wiring loader code only to preserve contract + discovery semantics for the installed omnibase-core compliance_orchestrator contract. No docker + exec, service deploy, restart, rpk topic produce, or .201 mutation was run; post-merge runtime rollout + remains the normal dev deploy/redeploy cadence. + source: "manual" + checks: + - check_type: "command" + check_value: >- + grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml && + grep -qi 'deploy' drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml + - id: "dod-occ-pr-2228" + description: >- + OCC self-binding: this onex_change_control companion PR carries the OMN-14141 contract entry and + receipts that bind omnibase_infra#2228 to central evidence. + source: "manual" + checks: + - check_type: "command" + check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-occ-pr-2228/command.yaml" diff --git a/drift/dod_receipts/OMN-14141/dod-occ-pr-2228/command.yaml b/drift/dod_receipts/OMN-14141/dod-occ-pr-2228/command.yaml new file mode 100644 index 00000000000..4c61ee85223 --- /dev/null +++ b/drift/dod_receipts/OMN-14141/dod-occ-pr-2228/command.yaml @@ -0,0 +1,25 @@ +--- +schema_version: "1.0.0" +ticket_id: "OMN-14141" +evidence_item_id: "dod-occ-pr-2228" +check_type: "command" +check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-occ-pr-2228/command.yaml" +status: PASS +contract_sha256: "sha256:48309a5d8497ae6e4b48ebd69b04fe331bdc0aafc1cdbb5c6c077cf049cfd7d5" +run_timestamp: "2026-07-08T22:37:15Z" +commit_sha: "bd63f2e8f" +runner: "codex-cli" +verifier: "codex-cli-review" +probe_command: "git status --short && test -f contracts/OMN-14141.yaml" +probe_stdout: | + A contracts/OMN-14141.yaml + A drift/dod_receipts/OMN-14141/dod-occ-pr-2228/command.yaml + A drift/dod_receipts/OMN-14141/dod-omnibase-infra-pr-2228/command.yaml + A drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml + A drift/dod_receipts/OMN-14141/dod-pr-2228-local-validation/command.yaml +actual_output: >- + PASS: this onex_change_control companion branch adds contracts/OMN-14141.yaml and PASS receipts that + bind omnibase_infra PR #2228 to central OCC evidence. +exit_code: 0 +branch: "jonah/pr-2228-occ-deploy-evidence" +pr_number: 0 diff --git a/drift/dod_receipts/OMN-14141/dod-omnibase-infra-pr-2228/command.yaml b/drift/dod_receipts/OMN-14141/dod-omnibase-infra-pr-2228/command.yaml new file mode 100644 index 00000000000..345ee58ba71 --- /dev/null +++ b/drift/dod_receipts/OMN-14141/dod-omnibase-infra-pr-2228/command.yaml @@ -0,0 +1,23 @@ +--- +schema_version: "1.0.0" +ticket_id: "OMN-14141" +evidence_item_id: "dod-omnibase-infra-pr-2228" +check_type: "command" +check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-omnibase-infra-pr-2228/command.yaml" +status: PASS +contract_sha256: "sha256:48309a5d8497ae6e4b48ebd69b04fe331bdc0aafc1cdbb5c6c077cf049cfd7d5" +run_timestamp: "2026-07-08T22:37:15Z" +commit_sha: "2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f" +runner: "codex-cli" +verifier: "codex-cli-review" +probe_command: "gh pr view 2228 --repo OmniNode-ai/omnibase_infra --json number,state,headRefOid,baseRefName,title" +probe_stdout: | + {"baseRefName":"dev","headRefOid":"2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f","number":2228,"state":"OPEN","title":"build(deps): update fastapi requirement from <0.139.0,>=0.120.1 to >=0.120.1,<0.140.0"} +actual_output: >- + PASS: omnibase_infra PR #2228 is open against dev at head 2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f and + carries the FastAPI Dependabot update plus the runtime compatibility fixes required after merging current + dev: build-loop append offline wiring compatibility, package-relative default_handler discovery support, + and refreshed runner image identity. +exit_code: 0 +branch: "dependabot/pip/fastapi-gte-0.120.1-and-lt-0.140.0" +pr_number: 2228 diff --git a/drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml b/drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml new file mode 100644 index 00000000000..95e1436f461 --- /dev/null +++ b/drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml @@ -0,0 +1,24 @@ +--- +schema_version: "1.0.0" +ticket_id: "OMN-14141" +evidence_item_id: "dod-pr-2228-deploy-plan" +check_type: "command" +check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-pr-2228-deploy-plan/command.yaml" +status: PASS +contract_sha256: "sha256:48309a5d8497ae6e4b48ebd69b04fe331bdc0aafc1cdbb5c6c077cf049cfd7d5" +run_timestamp: "2026-07-08T22:37:15Z" +commit_sha: "2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f" +runner: "codex-cli" +verifier: "codex-cli-review" +probe_command: "gh pr view 2228 --repo OmniNode-ai/omnibase_infra --json number,headRefOid,files" +probe_stdout: | + {"headRefOid":"2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f","number":2228} +actual_output: >- + PASS: deploy evidence for PR #2228 is intentionally a non-mutating deploy plan. The PR touches runtime + auto-wiring loader code only to preserve package-relative default_handler contract discovery for the + installed omnibase-core compliance_orchestrator contract and to make the build-loop append effect constructible + during offline discovery. No docker exec, service deploy, restart, rpk topic produce, or .201 mutation + was run. Post-merge rollout remains the normal dev deploy/redeploy cadence. +exit_code: 0 +branch: "dependabot/pip/fastapi-gte-0.120.1-and-lt-0.140.0" +pr_number: 2228 diff --git a/drift/dod_receipts/OMN-14141/dod-pr-2228-local-validation/command.yaml b/drift/dod_receipts/OMN-14141/dod-pr-2228-local-validation/command.yaml new file mode 100644 index 00000000000..3a3d4c44d27 --- /dev/null +++ b/drift/dod_receipts/OMN-14141/dod-pr-2228-local-validation/command.yaml @@ -0,0 +1,28 @@ +--- +schema_version: "1.0.0" +ticket_id: "OMN-14141" +evidence_item_id: "dod-pr-2228-local-validation" +check_type: "command" +check_value: "grep -q '^status: PASS$' drift/dod_receipts/OMN-14141/dod-pr-2228-local-validation/command.yaml" +status: PASS +contract_sha256: "sha256:48309a5d8497ae6e4b48ebd69b04fe331bdc0aafc1cdbb5c6c077cf049cfd7d5" +run_timestamp: "2026-07-08T22:37:15Z" +commit_sha: "2aa4208d8e2b4b2f51ef0dada529e55a0c26ea3f" +runner: "codex-cli" +verifier: "codex-cli-review" +probe_command: >- + uv run python scripts/ci/runner_image_identity.py --mode verify && uv run pytest tests/integration/infra/test_omn_12765_release_backmerge_identity.py::test_release_backmerge_preserves_runner_identity_lock + tests/unit/runtime/auto_wiring/test_discovery.py tests/unit/runtime/auto_wiring/test_handler_routing_flat_schema_guard.py + tests/unit/runtime/test_build_handler_routing_default_handler.py tests/integration/runtime/test_build_loop_auto_wiring_boot.py + tests/integration/test_auto_wiring_real_manifest.py -q +probe_stdout: | + runner image identity verified: v5 e0748bfb2601b0a607fa9b105bae3fa0 + .................................................... [100%] + 52 passed in 2.92s +actual_output: >- + PASS: local validation in the PR #2228 worktree proved the regenerated runner image identity and the + focused auto-wiring/default_handler/build-loop real manifest regression slice. Ruff passed on touched + Python files and uv lock --check resolved 195 packages. +exit_code: 0 +branch: "dependabot/pip/fastapi-gte-0.120.1-and-lt-0.140.0" +pr_number: 2228