Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
105 changes: 105 additions & 0 deletions contracts/OMN-18530.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -313,3 +313,108 @@ dod_evidence:
checks:
- check_type: "command"
check_value: "gh pr view 10718 --repo OmniNode-ai/onex_change_control --json number,state"
- id: "dod-accept-1045z-18530-ac1"
description: "AC1 binding proposed by lane dod-closeout-bind-2026-10-12T1045Z-c2 and accepted by a
different lane, dod-closeout-accept-2026-10-12T1045Z-c2, after an independent re-run on 2026-10-12
at omniclaude origin/dev 0c7a1d577e6d: a tree carrying an undeclared exit-2 script makes validate_hook_inventory.py
exit 1 and name the script and UNDECLARED_GATE_SCRIPT on stderr. With the dev test file at the parent
of merge c124c41ea (#2295) the test fails (the validator reports OK and exits 0), so the pass is
owed to that change."
source: "manual"
execution_scope: "local_done_gate"
checks:
- check_type: "test_passes"
check_value: "env -u PYTHONPATH uv run pytest -q -p no:cacheprovider \"tests/hooks/test_hook_inventory_undeclared_gate.py::test_the_gate_refuses_rather_than_printing_and_passing\""
cwd: "${OMNI_HOME}/omniclaude"
binds_ac:
- "AC1"
ac_bindings:
- label: "AC1"
criterion_hash: "cbeffe5fb9225687fe0da548ade513614ef4d477af381e3a25fe534a5b62c7e8"
proposed_by: "lane=dod-closeout-bind-2026-10-12T1045Z-c2"
accepted_by: "lane=dod-closeout-accept-2026-10-12T1045Z-c2"
accepted_at: "2026-10-12T11:08:33Z"
- id: "dod-accept-1045z-18530-ac2"
description: "AC2 binding proposed by lane dod-closeout-bind-2026-10-12T1045Z-c2 and accepted by a
different lane, dod-closeout-accept-2026-10-12T1045Z-c2, after an independent re-run on 2026-10-12
at omniclaude origin/dev 0c7a1d577e6d: the reachable set computed from hooks.json is non-empty,
includes the named library, and none of it is reported as UNDECLARED_GATE_SCRIPT. At the parent
of merge c124c41ea (#2295) the test fails (no scripts_reachable_from_registered)."
source: "manual"
execution_scope: "local_done_gate"
checks:
- check_type: "test_passes"
check_value: "env -u PYTHONPATH uv run pytest -q -p no:cacheprovider \"tests/hooks/test_hook_inventory_undeclared_gate.py::test_no_script_reachable_from_a_registered_hook_is_reported\""
cwd: "${OMNI_HOME}/omniclaude"
binds_ac:
- "AC2"
ac_bindings:
- label: "AC2"
criterion_hash: "7f3501a704367ac2d93b557de7faa4e0e3442def8e6a218107fa19c965930efd"
proposed_by: "lane=dod-closeout-bind-2026-10-12T1045Z-c2"
accepted_by: "lane=dod-closeout-accept-2026-10-12T1045Z-c2"
accepted_at: "2026-10-12T11:08:33Z"
- id: "dod-accept-1045z-18530-ac4"
description: "AC4 binding proposed by lane dod-closeout-bind-2026-10-12T1045Z-c2 and accepted by a
different lane, dod-closeout-accept-2026-10-12T1045Z-c2, after an independent re-run on 2026-10-12
at omniclaude origin/dev 0c7a1d577e6d: with the Stop key removed and stop_quality_gate.sh declared
expected under Stop, exactly one EVENT_KEY_ABSENT finding names that script and Stop. At the parent
of merge c124c41ea (#2295) the test fails."
source: "manual"
execution_scope: "local_done_gate"
checks:
- check_type: "test_passes"
check_value: "env -u PYTHONPATH uv run pytest -q -p no:cacheprovider \"tests/hooks/test_hook_inventory_undeclared_gate.py::test_a_stop_shaped_expected_hook_is_reported_while_no_stop_key_exists\""
cwd: "${OMNI_HOME}/omniclaude"
binds_ac:
- "AC4"
ac_bindings:
- label: "AC4"
criterion_hash: "647bc1bd6eda1f44b4550fce68f0f1dd3be2e9c811871f5e911a1c1a0d811c91"
proposed_by: "lane=dod-closeout-bind-2026-10-12T1045Z-c2"
accepted_by: "lane=dod-closeout-accept-2026-10-12T1045Z-c2"
accepted_at: "2026-10-12T11:08:33Z"
- id: "dod-accept-1045z-18530-ac6"
description: "AC6 binding proposed by lane dod-closeout-bind-2026-10-12T1045Z-c2 and accepted by a
different lane, dod-closeout-accept-2026-10-12T1045Z-c2, after an independent re-run on 2026-10-12
at omniclaude origin/dev 0c7a1d577e6d: the dev validator, which carries the UNDECLARED_GATE_SCRIPT
kind, exits 0 on the merged dev tree. The test also passes at the parent of c124c41ea, where the
kind does not exist; the criterion is a property of the merged tree with the kind active, which
only the dev run shows."
source: "manual"
execution_scope: "local_done_gate"
checks:
- check_type: "test_passes"
check_value: "env -u PYTHONPATH uv run pytest -q -p no:cacheprovider \"tests/hooks/test_hook_inventory_undeclared_gate.py::test_the_live_tree_is_green\""
cwd: "${OMNI_HOME}/omniclaude"
binds_ac:
- "AC6"
ac_bindings:
- label: "AC6"
criterion_hash: "1ec9191eededb98517ffa94264a19ac896b483a2b9eb7b1772be4769953f42e8"
proposed_by: "lane=dod-closeout-bind-2026-10-12T1045Z-c2"
accepted_by: "lane=dod-closeout-accept-2026-10-12T1045Z-c2"
accepted_at: "2026-10-12T11:08:33Z"
- id: "dod-accept-1045z-18530-ac8"
description: "AC8 binding proposed by lane dod-closeout-bind-2026-10-12T1045Z-c2 and accepted by a
different lane, dod-closeout-accept-2026-10-12T1045Z-c2, after an independent re-run on 2026-10-12
at omniclaude origin/dev 0c7a1d577e6d: the CI Summary gate module on dev carries Hook Inventory
Gate in EXPECTED_EXTERNAL_CONTEXTS and not in EXTERNAL_SWEEP_EXCLUSIONS; at the parent of 107da64bb
(#2298) the name is absent from that module."
source: "manual"
execution_scope: "local_done_gate"
checks:
- check_type: "command"
check_value: "uv run python -c \"\nimport importlib.util,sys\ns=importlib.util.spec_from_file_location('g','scripts/ci/ci_summary_gate.py');m=importlib.util.module_from_spec(s);sys.modules['g']=m;s.loader.exec_module(m)\nn='Hook
Inventory Gate';print('in_EXPECTED_EXTERNAL_CONTEXTS=',n in m.EXPECTED_EXTERNAL_CONTEXTS,'in_EXCLUSIONS=',n
in m.EXTERNAL_SWEEP_EXCLUSIONS);sys.exit(0 if n in m.EXPECTED_EXTERNAL_CONTEXTS and n not in
m.EXTERNAL_SWEEP_EXCLUSIONS else 1)\""
cwd: "${OMNI_HOME}/omniclaude"
binds_ac:
- "AC8"
ac_bindings:
- label: "AC8"
criterion_hash: "989c0b0b54ed6e53471d7953633d910fff75d385e58e59d1bb6ab24cad6bbb7d"
proposed_by: "lane=dod-closeout-bind-2026-10-12T1045Z-c2"
accepted_by: "lane=dod-closeout-accept-2026-10-12T1045Z-c2"
accepted_at: "2026-10-12T11:08:33Z"
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
schema_version: 1.0.0
ticket_id: OMN-18530
evidence_item_id: dod-accept-1045z-18530-ac1
check_type: test_passes
check_value: env -u PYTHONPATH uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_the_gate_refuses_rather_than_printing_and_passing"
contract_sha256: sha256:d47a3cc208b71c8ff0e566e43b53a7dfba554bea3b223e1187fffd285e89dd19
contract_entry_sha256: sha256:fdbf2fc761a91f8bf975916c6e0a143877d10ecc9d0166a175f018f2cb0eeb09
status: PASS
commit_sha: 0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
runner: dod-closeout-accept-2026-10-12T1045Z-c2@omninode-pc
verifier: occ-probe-capture-v1
probe_command: gh api repos/OmniNode-ai/omniclaude/commits/0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b --jq
.sha && test "$(git rev-parse HEAD)" = "0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b" && env -u PYTHONPATH
uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_the_gate_refuses_rather_than_printing_and_passing"
actual_output: 'PASS: dod-accept-1045z-18530-ac1 for OMN-18530 AC1 - binding accepted by lane dod-closeout-accept-2026-10-12T1045Z-c2
after an independent re-run on lab host omninode-pc.'
pr_number: 13736
branch: automation/omn-18530-accepted-ac-bindings-1045z
probe_stdout: |-
0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
. [100%]
1 passed in 1.23s
exit_code: 0
run_timestamp: '2026-10-12T11:11:20Z'
duration_ms: 5832
artifact_sha256:
- sha256:91f8df3412a9cfde28c8095d818653415f9b917c4f7c72f970aac0b70ea0cf6e
- sha256:21cd66731540f94627f40d4abd5f9c3e1289b369b202a986e36d60887b677a7c
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
schema_version: 1.0.0
ticket_id: OMN-18530
evidence_item_id: dod-accept-1045z-18530-ac2
check_type: test_passes
check_value: env -u PYTHONPATH uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_no_script_reachable_from_a_registered_hook_is_reported"
contract_sha256: sha256:d47a3cc208b71c8ff0e566e43b53a7dfba554bea3b223e1187fffd285e89dd19
contract_entry_sha256: sha256:720033a8b6a88237700e198db782de570cafdb3136fbbe7cf87ecd45a863f4e9
status: PASS
commit_sha: 0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
runner: dod-closeout-accept-2026-10-12T1045Z-c2@omninode-pc
verifier: occ-probe-capture-v1
probe_command: gh api repos/OmniNode-ai/omniclaude/commits/0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b --jq
.sha && test "$(git rev-parse HEAD)" = "0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b" && env -u PYTHONPATH
uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_no_script_reachable_from_a_registered_hook_is_reported"
actual_output: 'PASS: dod-accept-1045z-18530-ac2 for OMN-18530 AC2 - binding accepted by lane dod-closeout-accept-2026-10-12T1045Z-c2
after an independent re-run on lab host omninode-pc.'
pr_number: 13736
branch: automation/omn-18530-accepted-ac-bindings-1045z
probe_stdout: |-
0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
. [100%]
1 passed in 0.88s
exit_code: 0
run_timestamp: '2026-10-12T11:11:26Z'
duration_ms: 1804
artifact_sha256:
- sha256:80b040420671830ee71931793c208c13171491b10f613edc1f20df978136b359
- sha256:245463ca6905821172a664f377f113ace02c111ef1023629ccef3c5e7c59bd49
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
schema_version: 1.0.0
ticket_id: OMN-18530
evidence_item_id: dod-accept-1045z-18530-ac4
check_type: test_passes
check_value: env -u PYTHONPATH uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_a_stop_shaped_expected_hook_is_reported_while_no_stop_key_exists"
contract_sha256: sha256:d47a3cc208b71c8ff0e566e43b53a7dfba554bea3b223e1187fffd285e89dd19
contract_entry_sha256: sha256:79f5dec0ab37dd264b008ed3b21736f7db01b2a3195fb9396bb500446725187c
status: PASS
commit_sha: 0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
runner: dod-closeout-accept-2026-10-12T1045Z-c2@omninode-pc
verifier: occ-probe-capture-v1
probe_command: gh api repos/OmniNode-ai/omniclaude/commits/0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b --jq
.sha && test "$(git rev-parse HEAD)" = "0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b" && env -u PYTHONPATH
uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_a_stop_shaped_expected_hook_is_reported_while_no_stop_key_exists"
actual_output: 'PASS: dod-accept-1045z-18530-ac4 for OMN-18530 AC4 - binding accepted by lane dod-closeout-accept-2026-10-12T1045Z-c2
after an independent re-run on lab host omninode-pc.'
pr_number: 13736
branch: automation/omn-18530-accepted-ac-bindings-1045z
probe_stdout: |-
0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
. [100%]
1 passed in 0.95s
exit_code: 0
run_timestamp: '2026-10-12T11:11:28Z'
duration_ms: 1885
artifact_sha256:
- sha256:ff9c26426656700eb6dae32addee412b7f37558a67b6902322dc0806bf0977a3
- sha256:a9f5c563d8907eb73c6ced281074d395968f8486319fe8e47195b541a4f1e8d8
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
schema_version: 1.0.0
ticket_id: OMN-18530
evidence_item_id: dod-accept-1045z-18530-ac6
check_type: test_passes
check_value: env -u PYTHONPATH uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_the_live_tree_is_green"
contract_sha256: sha256:d47a3cc208b71c8ff0e566e43b53a7dfba554bea3b223e1187fffd285e89dd19
contract_entry_sha256: sha256:502f0895432a93eab01c6f8aee9bbdd14ca9b819294c3311be76f30a7c14d2fc
status: PASS
commit_sha: 0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
runner: dod-closeout-accept-2026-10-12T1045Z-c2@omninode-pc
verifier: occ-probe-capture-v1
probe_command: gh api repos/OmniNode-ai/omniclaude/commits/0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b --jq
.sha && test "$(git rev-parse HEAD)" = "0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b" && env -u PYTHONPATH
uv run pytest -q -p no:cacheprovider "tests/hooks/test_hook_inventory_undeclared_gate.py::test_the_live_tree_is_green"
actual_output: 'PASS: dod-accept-1045z-18530-ac6 for OMN-18530 AC6 - binding accepted by lane dod-closeout-accept-2026-10-12T1045Z-c2
after an independent re-run on lab host omninode-pc.'
pr_number: 13736
branch: automation/omn-18530-accepted-ac-bindings-1045z
probe_stdout: |-
0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
. [100%]
1 passed in 0.88s
exit_code: 0
run_timestamp: '2026-10-12T11:11:31Z'
duration_ms: 1783
artifact_sha256:
- sha256:80b040420671830ee71931793c208c13171491b10f613edc1f20df978136b359
- sha256:e1bda0c0a1d5770175924273379a8c350a675d4052e93363fcc63b76ba366445
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
schema_version: 1.0.0
ticket_id: OMN-18530
evidence_item_id: dod-accept-1045z-18530-ac8
check_type: command
check_value: |-
uv run python -c "
import importlib.util,sys
s=importlib.util.spec_from_file_location('g','scripts/ci/ci_summary_gate.py');m=importlib.util.module_from_spec(s);sys.modules['g']=m;s.loader.exec_module(m)
n='Hook Inventory Gate';print('in_EXPECTED_EXTERNAL_CONTEXTS=',n in m.EXPECTED_EXTERNAL_CONTEXTS,'in_EXCLUSIONS=',n in m.EXTERNAL_SWEEP_EXCLUSIONS);sys.exit(0 if n in m.EXPECTED_EXTERNAL_CONTEXTS and n not in m.EXTERNAL_SWEEP_EXCLUSIONS else 1)"
contract_sha256: sha256:d47a3cc208b71c8ff0e566e43b53a7dfba554bea3b223e1187fffd285e89dd19
contract_entry_sha256: sha256:aabc5cce04a3f453ca057ad11ce0d3ef6dad077698867ab7dd08d7b99ef981bf
status: PASS
commit_sha: 0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
runner: dod-closeout-accept-2026-10-12T1045Z-c2@omninode-pc
verifier: occ-probe-capture-v1
probe_command: |-
gh api repos/OmniNode-ai/omniclaude/commits/0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b --jq .sha && test "$(git rev-parse HEAD)" = "0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b" && uv run python -c "
import importlib.util,sys
s=importlib.util.spec_from_file_location('g','scripts/ci/ci_summary_gate.py');m=importlib.util.module_from_spec(s);sys.modules['g']=m;s.loader.exec_module(m)
n='Hook Inventory Gate';print('in_EXPECTED_EXTERNAL_CONTEXTS=',n in m.EXPECTED_EXTERNAL_CONTEXTS,'in_EXCLUSIONS=',n in m.EXTERNAL_SWEEP_EXCLUSIONS);sys.exit(0 if n in m.EXPECTED_EXTERNAL_CONTEXTS and n not in m.EXTERNAL_SWEEP_EXCLUSIONS else 1)"
actual_output: 'PASS: dod-accept-1045z-18530-ac8 for OMN-18530 AC8 - binding accepted by lane dod-closeout-accept-2026-10-12T1045Z-c2
after an independent re-run on lab host omninode-pc.'
pr_number: 13736
branch: automation/omn-18530-accepted-ac-bindings-1045z
probe_stdout: |-
0c7a1d577e6d5dc089a1fd8ee4d0721c053dfa3b
in_EXPECTED_EXTERNAL_CONTEXTS= True in_EXCLUSIONS= False
exit_code: 0
run_timestamp: '2026-10-12T11:11:33Z'
duration_ms: 772
artifact_sha256:
- sha256:57f78dfd48513838e6407b5e85ed4749264d6ad25a412a7e867d46162e0d834c
- sha256:3db4b94fd604506e53240353b5fac449f4f693d7c177da58f396fc179044169f
Loading