39 lines
7.6 KiB
JSON
39 lines
7.6 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"channel": "homelab-runtime",
|
|
"command_id": "SIGNALBOT-260908-CANONICAL-HASH-RCA-043HASH",
|
|
"status": "FAIL",
|
|
"rc": 3,
|
|
"host": "pve01",
|
|
"mode": "read-only",
|
|
"component": "signalbot-cr0116-canonical-hash-rca",
|
|
"started_at_utc": "2026-09-08T08:41:09Z",
|
|
"finished_at_utc": "2026-09-08T08:41:18Z",
|
|
"reference_register_checked": true,
|
|
"reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66",
|
|
"error_register_checked": true,
|
|
"error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0",
|
|
"command_sha256": "cb5d8291e34476b3c7247918511c92fc1d661daad1fd45b8f0d0dc687948b210",
|
|
"duplicate_failed_command_blocked": false,
|
|
"block_reason": null,
|
|
"execution_started": true,
|
|
"change_declared": false,
|
|
"result_contract_valid": true,
|
|
"result_contract_status": null,
|
|
"result_contract_error": null,
|
|
"command_rc": 3,
|
|
"changes_made": false,
|
|
"rollback_started": false,
|
|
"rollback_restored": null,
|
|
"mutation_outcome": "NO_MUTATION",
|
|
"sanitized": true,
|
|
"secrets_included": false,
|
|
"private_addresses_included": false,
|
|
"raw_evidence_retained_locally": true,
|
|
"raw_evidence_sha256": "759c83ba1cfa41eb8f8a2f61fc2d2ea32ff98c2ce0d897419833ab49b540c82e",
|
|
"sanitized_output_sha256": "759c83ba1cfa41eb8f8a2f61fc2d2ea32ff98c2ce0d897419833ab49b540c82e",
|
|
"output_truncated_in_json": false,
|
|
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
|
"output": "ERROR_REGISTER_CHECK=OK\nREFERENCE_CHECK=OK\nAUTHORITY_CHECK_SCOPE=READABILITY_ONLY_INCIDENTS_NOT_CLOSED\nSB043H_PRESTATE={\"active_env\":{\"APP_IMAGE\":\"8020-demonov-shadow:e32760c69a4311728db9066ee8bf2bf66b1e5a70\",\"CODE_IDENTITY\":\"e32760c69a4311728db9066ee8bf2bf66b1e5a70\",\"COLLECTION_START_AT\":\"2026-09-07T00:00:00+00:00\",\"EXPERIMENT_ID\":\"ec477ea41ecbd5cfdef5afc259595aab20674a7d933f41a389329ff05098b338\",\"RUNTIME_MANIFEST_ID\":\"58d3b59200bdc0eb8d448612679d667b194263586cb3198dfc08597935053a1a\"},\"services\":[{\"container_id\":\"a546a70c3e8c263d9b590cd78ee206bcda0cfcdb6662327e8415ca0e29ad1501\",\"image\":\"8020-demonov-shadow:e32760c69a4311728db9066ee8bf2bf66b1e5a70\",\"image_id\":\"sha256:403c4266282a56cb210bed95cd58295692296502913e7440e2133d7b5664c736\",\"restart_count\":15,\"running\":true,\"service\":\"collector\",\"started_at\":\"2026-09-08T08:18:12.235219419Z\"},{\"container_id\":\"d8023f4cbf91f9382e39eec0436c9cebc7665535b42b950e95408c03ff9bf30d\",\"image\":\"8020-demonov-shadow:e32760c69a4311728db9066ee8bf2bf66b1e5a70\",\"image_id\":\"sha256:403c4266282a56cb210bed95cd58295692296502913e7440e2133d7b5664c736\",\"restart_count\":0,\"running\":true,\"service\":\"relay\",\"started_at\":\"2026-09-06T18:48:20.603414848Z\"},{\"container_id\":\"1feeca2d9428cd5a277c026bef34534db307657dcdcd63aff98ea66e44f8b9c5\",\"image\":\"8020-demonov-shadow:e32760c69a4311728db9066ee8bf2bf66b1e5a70\",\"image_id\":\"sha256:403c4266282a56cb210bed95cd58295692296502913e7440e2133d7b5664c736\",\"restart_count\":0,\"running\":true,\"service\":\"shadow\",\"started_at\":\"2026-09-06T18:48:20.768190553Z\"},{\"container_id\":\"889be41d2cee9d327811da78388f834ba6eafe4c0eeae456867ed0df76832d01\",\"image\":\"8020-demonov-shadow:e32760c69a4311728db9066ee8bf2bf66b1e5a70\",\"image_id\":\"sha256:403c4266282a56cb210bed95cd58295692296502913e7440e2133d7b5664c736\",\"restart_count\":0,\"running\":true,\"service\":\"worker\",\"started_at\":\"2026-09-06T18:48:20.586788319Z\"}],\"stage_result\":{\"active_env_unchanged\":true,\"build_context\":\"/opt/stacks/8020-demonov-shadow/.deploy/SIGNALBOT-260908-DEPLOY-STAGE-042FIX5\",\"collector_source_sha256\":\"193dd0c7f9890fdb4026c24dbc5add825f1641d92097e881806705ca452812d5\",\"copy_source\":\"/opt/stacks/8020-demonov-shadow/.deploy/SIGNALBOT-260908-DEPLOY-STAGE-042FIX5/demonov_forward_map\",\"decision\":\"DEPLOY_STAGE_READY\",\"dockerfile\":\"/opt/stacks/8020-demonov-shadow/.deploy/SIGNALBOT-260908-DEPLOY-STAGE-042FIX5/Dockerfile\",\"helper_candidates\":{\"demonov_forward_map.live_prospective\":[{\"name\":\"_hash\",\"pure_candidate\":true,\"signature\":\"(value: 'object') -> 'str'\"}],\"demonov_forward_map.runtime_integrity\":[{\"name\":\"canonical_hash\",\"pure_candidate\":true,\"signature\":\"(payload: 'Any') -> 'str'\"},{\"name\":\"verify_experiment_seal_receipt\",\"pure_candidate\":true,\"signature\":\"(*, bundle: 'FinalProspectiveSealBundle', receipt: 'ExperimentSealReceipt', collection_start_at: 'datetime', receipt_verifier: 'Callable[[ExperimentSealReceipt], bool]') -> 'None'\"},{\"name\":\"required_retained_hashes\",\"pure_candidate\":true,\"signature\":\"(*, runtime_registry: 'RuntimeRegistry', model_registry: 'FinalModelRegistry', state_snapshots: 'Sequence[StateSnapshotManifest]' = (), predictor_runtime: 'PredictorRuntimeManifest | None' = None) -> 'Mapping[str, RetainedArtifactKind]'\"}],\"demonov_forward_map.runtime_manifest\":[{\"name\":\"canonical_hash\",\"pure_candidate\":true,\"signature\":\"(payload: 'Any') -> 'str'\"},{\"name\":\"verify_runtime_manifest\",\"pure_candidate\":true,\"signature\":\"(manifest: 'RuntimeDeploymentManifestV1', *, expected_code_identity: 'str', actual_image_id: 'str', actual_package_identity: 'str') -> 'None'\"}]},\"new_image\":\"8020-demonov-shadow:76e1f58baa544a0e208bba317f0150e5b6d74dbd\",\"new_image_id\":\"sha256:341f71a906c91d3fa9c1d50bd89df2a849dfb0b168bb4551efb444bf61c4ab99\",\"policy\":{\"close_timeout\":5,\"open_timeout\":10,\"ping_interval\":20,\"ping_timeout\":60},\"runtime_activated\":false,\"service_identity_unchanged\":true,\"stage_path\":\"/opt/stacks/8020-demonov-shadow/.deploy/SIGNALBOT-260908-DEPLOY-STAGE-042FIX5\",\"websockets_version\":\"15.0.1\"}}\nSB043H_CANONICAL_HASH={\"callable\":true,\"module\":\"demonov_forward_map.canonical_hash\",\"signature\":\"(payload: 'Any') -> 'str'\",\"source\":\"def canonical_hash(payload: Any) -> str:\\n return sha256(canonical_bytes(payload)).hexdigest()\\n\",\"source_file\":\"/opt/stacks/8020-demonov-shadow/.deploy/SIGNALBOT-260908-DEPLOY-STAGE-042FIX5/demonov_forward_map/canonical_hash.py\",\"source_inside_stage\":true,\"source_sha256\":\"3783b2c91fc2377338a6d23e116d595ceadec098abd073dea84a2973b3bbfa40\"}\nSB043H_MANIFEST_VALIDATION={\"content_hash\":\"58d3b59200bdc0eb8d448612679d667b194263586cb3198dfc08597935053a1a\",\"expected\":\"58d3b59200bdc0eb8d448612679d667b194263586cb3198dfc08597935053a1a\",\"ok\":true,\"runtime_manifest_id\":\"58d3b59200bdc0eb8d448612679d667b194263586cb3198dfc08597935053a1a\"}\nSB043H_ARTIFACT_SPEC={\"class_fields\":[\"artifact_id\",\"source_tree_hash\",\"dependency_lock_hash\",\"build_recipe_hash\",\"executable_artifact_hash\",\"runtime_environment_hash\"],\"content_fields\":[\"source_tree_hash\",\"dependency_lock_hash\",\"build_recipe_hash\",\"executable_artifact_hash\",\"runtime_environment_hash\"],\"source\":\"def content_hash(self) -> str:\\n return canonical_hash({k: getattr(self, k) for k in (\\n \\\"source_tree_hash\\\", \\\"dependency_lock_hash\\\", \\\"build_recipe_hash\\\", \\\"executable_artifact_hash\\\", \\\"runtime_environment_hash\\\"\\n )})\"}\nSB043H_REPRODUCTION={\"derived_new_package_identities\":[],\"fields\":[\"source_tree_hash\",\"dependency_lock_hash\",\"build_recipe_hash\",\"executable_artifact_hash\",\"runtime_environment_hash\"],\"group_sizes\":{\"build_recipe_hash\":10,\"dependency_lock_hash\":9,\"executable_artifact_hash\":14,\"runtime_environment_hash\":13,\"source_tree_hash\":69},\"matches\":[],\"ok\":false,\"reason\":\"NO_MATCH\",\"tested\":1130220,\"total\":1130220}\nSB043H_HOLDS=[\"OLD_PACKAGE_ID_EXACT_REPRODUCTION_FAILED\"]\nSB043H_DECISION=HOLD_OLD_PACKAGE_ID_EXACT_REPRODUCTION_FAILED\nSB043H_MUTATION_SCOPE=NONE_READ_ONLY\nSIGNALBOT043H_DECISION=HOLD_GUEST_CANONICAL_PACKAGE_RCA\n"
|
|
}
|