{"acceptance":{"candidate_bound_executable_test_input":"FAIL","profile_package_parity":"PASS: all 85 manifest-bound profile-package file hashes matched before execution.","runtime_wheel_source_parity":"PASS: 424 gateway/agent/hermes_cli/checkin_cli Python wheel members matched the live source bytes used by pytest.","scenario_execution":"PASS: the test asserts state/card boundaries, zero delivery through approval and exactly one after explicit send, and fails if a manual recovery hook is invoked."},"blocker":{"code":"UNBOUND_EXECUTABLE_GATE18_TEST_INPUT","detail":"The required executable test tests/gateway/test_nutrition_coaching.py (SHA-256 bb33892ec026e9d5c25e1e485a93f6bf1a777f556b7df6fc20e00b54872788ab) is absent from the manifest source_entries. The manifest seals only three different test paths, so its passing result cannot be accepted as Gate 18 evidence for the pinned candidate."},"candidate":{"full_digest":"50685ac2c063c5b18fa895cc1991e3473368d177c7309bf54af0374ea67ba1d1","manifest_internal_candidate_digest":"f9a46172386333a0067f43695fb1429a043a606f04baceb06e8c59b90c36235c","manifest_path":".omo/evidence/task26/dualcoach-provider-auth-candidate-50685ac2c063c5b18fa895cc1991e3473368d177c7309bf54af0374ea67ba1d1/candidate-manifest.json","manifest_sha256":"2135189a2025abd563ff4a8adf62af13a0da912b446fb53f9218b63c07a19a81","wheel_path":".omo/evidence/task26/dualcoach-provider-auth-candidate-50685ac2c063c5b18fa895cc1991e3473368d177c7309bf54af0374ea67ba1d1/artifacts/hermes_agent-0.17.0-py3-none-any.whl","wheel_sha256":"e4bd655672edf148ee3026b44f78149402234ba5cc0be3db19b875cbd86659be"},"command":{"exact":"cd /home/cube/projects/richard/hermes-agent && PYTHONDONTWRITEBYTECODE=1 .venv/bin/python -W error -m pytest -p no:cacheprovider tests/gateway/test_nutrition_coaching.py::test_dualcoach_golden_path --junitxml=/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-gate18-50685ac2c063c5b18fa895cc1991e3473368d177c7309bf54af0374ea67ba1d1.junit.xml -q","exit_code":0,"isolation":"PYTHONDONTWRITEBYTECODE=1 and pytest cacheprovider disabled; the scenario uses only a temporary profile, local 127.0.0.1 fake Telegram HTTP boundary, and an in-process contract-preserving model fake.","output_summary":"1 passed in 0.53s"},"gate":18,"junit":{"errors":0,"failures":0,"mode":"0600","path":".omo/evidence/task26/task26-gate18-50685ac2c063c5b18fa895cc1991e3473368d177c7309bf54af0374ea67ba1d1.junit.xml","sha256":"1546f6d2354546513307cb127bde32a11828599652145da57af9e01e8ac528e8","skipped":0,"tests":1},"non_actions":{"commits":0,"provider_requests":0,"pushes":0,"real_customer_activations":0,"releases":0,"service_launches":0,"source_edits":0,"telegram_external_actions":0,"test_only_local_fake_telegram_requests":1},"recorded_at":"2026-08-14T15:02:34.388023Z","schema":"task26-gate18-candidate-verdict-v1","service_postcheck":{"active_state":"inactive","load_state":"loaded","main_pid":0,"profile_process_count":0,"sub_state":"dead","unit":"hermes-gateway-dualcoachtest.service"},"task":26,"verdict":"FAIL"}
