runtime: publish HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"channel": "homelab-runtime",
|
||||
"command_id": "HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z",
|
||||
"status": "OK",
|
||||
"rc": 0,
|
||||
"host": "pve01",
|
||||
"mode": "verify",
|
||||
"component": "homelab-kb-v2-r3-rollback-artifacts-r6-risk-schema-read-only",
|
||||
"started_at_utc": "2026-08-06T03:55:42Z",
|
||||
"finished_at_utc": "2026-08-06T03:55:42Z",
|
||||
"reference_register_checked": true,
|
||||
"reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
|
||||
"error_register_checked": true,
|
||||
"error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83",
|
||||
"command_sha256": "ff45c88a0d1d4780d91752952c56fc75cfdcd21f555d75ebc4203c57b7b532f5",
|
||||
"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": 0,
|
||||
"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": "5b3b7e6398d26e93c0b286604a828b353e2e7aa222c732925faf93f91bb3c114",
|
||||
"sanitized_output_sha256": "5b3b7e6398d26e93c0b286604a828b353e2e7aa222c732925faf93f91bb3c114",
|
||||
"output_truncated_in_json": false,
|
||||
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
||||
"output": "HOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n{\"backup_changed\":false,\"changes_made\":false,\"command_id\":\"HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z\",\"exact_risk_values\":[\"HIGH\",\"READ_ONLY\",\"REVERSIBLE\"],\"gitea_changed\":false,\"invalid_risk_literal_found\":true,\"mutation_outcome\":\"NO_MUTATION\",\"private_addresses_included\":false,\"production_changed\":false,\"purpose\":\"READ_ONLY_EXACT_ADAPTER_RISK_ENUM\",\"rollback_restored\":null,\"rollback_started\":false,\"sanitized\":true,\"schema\":2,\"secrets_included\":false,\"services_changed\":false,\"snippets\":[{\"basis\":\"risk_assignment\",\"snippet\":\"ALLOWED_RISKS = {\\n \\\"READ_ONLY\\\",\\n \\\"REVERSIBLE\\\",\\n \\\"HIGH\\\",\\n}\",\"snippet_sha256\":\"3fb1a623c396c6f52340e3fd2a21dcb3bf8ef20853577b1f546ef06365ce93b1\",\"values\":[\"HIGH\",\"READ_ONLY\",\"REVERSIBLE\"]},{\"basis\":\"risk_not_in\",\"snippet\":\"risk not in {\\\"REVERSIBLE\\\", \\\"HIGH\\\"}\",\"snippet_sha256\":\"724ee6c7d954e249f31d377b059766cc67b75131513b547c93479821daff1665\",\"values\":[\"HIGH\",\"REVERSIBLE\"]},{\"basis\":\"validator_error_context\",\"line\":385,\"snippet\":\" raise AdapterError(\\\"invalid mode\\\")\\n if document.get(\\\"target\\\") != \\\"pve01\\\":\\n raise AdapterError(\\\"only pve01 target is supported\\\")\\n\\n timeout_seconds = document.get(\\\"timeout_seconds\\\")\\n if (\\n not isinstance(timeout_seconds, int)\\n or isinstance(timeout_seconds, bool)\\n or not 1 <= timeout_seconds <= 7200\\n ):\\n raise AdapterError(\\\"invalid timeout_seconds\\\")\\n\\n risk = document.get(\\\"risk\\\")\\n if risk not in ALLOWED_RISKS:\\n raise AdapterError(\\\"invalid risk\\\")\\n if mode == \\\"change\\\" and risk not in {\\\"REVERSIBLE\\\", \\\"HIGH\\\"}:\\n raise AdapterError(\\\"change capsule risk must be REVERSIBLE or HIGH\\\")\\n if mode != \\\"change\\\" and risk != \\\"READ_ONLY\\\":\\n raise AdapterError(\\\"non-change capsule risk must be READ_ONLY\\\")\\n\\n flags = document.get(\\\"change_flags\\\")\\n if not isinstance(flags, dict):\\n raise AdapterError(\\\"change_flags must be object\\\")\\n if set(flags) != ALLOWED_CHANGE_FLAGS:\\n raise AdapterError(\\\"change_flags keys invalid\\\")\\n if any(type(value) is not bool for value in flags.values()):\\n raise AdapterError(\\\"change_flags values must be boolean\\\")\\n\\n if mode != \\\"change\\\" and any(flags.values()):\",\"snippet_sha256\":\"9e3fc0cf1111e8c480a659092819a244d1b0d701eaec4c5c544dd3aed65280b7\"}],\"source_bytes\":86019,\"source_path\":\"/usr/local/sbin/homelab-command-adapter\",\"source_sha256\":\"a1a7a615c99568bf915d084cc476f0ebf54ab0eedf3ecd578c4b0e072f58c43d\",\"status\":\"AUDIT_COMPLETE\"}\n"
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
CHAT_OUTPUT_BEGIN
|
||||
COMMAND_ID=HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z
|
||||
STATUS=OK
|
||||
RC=0
|
||||
HOST=pve01
|
||||
MODE=verify
|
||||
COMPONENT=homelab-kb-v2-r3-rollback-artifacts-r6-risk-schema-read-only
|
||||
REFERENCE_REGISTER_CHECK=OK
|
||||
REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e
|
||||
ERROR_REGISTER_CHECK=OK
|
||||
ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83
|
||||
COMMAND_SHA256=ff45c88a0d1d4780d91752952c56fc75cfdcd21f555d75ebc4203c57b7b532f5
|
||||
DUPLICATE_FAILED_COMMAND_BLOCKED=false
|
||||
EXECUTION_STARTED=true
|
||||
CHANGE_DECLARED=false
|
||||
RESULT_CONTRACT_VALID=true
|
||||
RESULT_CONTRACT_STATUS=NOT_APPLICABLE
|
||||
RESULT_CONTRACT_ERROR=NONE
|
||||
COMMAND_RC=0
|
||||
CHANGES_MADE=false
|
||||
ROLLBACK_STARTED=false
|
||||
ROLLBACK_RESTORED=null
|
||||
MUTATION_OUTCOME=NO_MUTATION
|
||||
SANITIZED=yes
|
||||
SECRETS_INCLUDED=no
|
||||
PRIVATE_ADDRESSES_INCLUDED=no
|
||||
RAW_EVIDENCE_SHA256=5b3b7e6398d26e93c0b286604a828b353e2e7aa222c732925faf93f91bb3c114
|
||||
SANITIZED_OUTPUT_SHA256=5b3b7e6398d26e93c0b286604a828b353e2e7aa222c732925faf93f91bb3c114
|
||||
OUTPUT_BEGIN
|
||||
HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z","rollback_restored":null,"rollback_started":false,"status":"OK","version":1}
|
||||
{"backup_changed":false,"changes_made":false,"command_id":"HOMELAB-KB-V2-R3-ROLLBACK-ARTIFACTS-R6-RISK-SCHEMA-READ-ONLY-20260806T035200Z","exact_risk_values":["HIGH","READ_ONLY","REVERSIBLE"],"gitea_changed":false,"invalid_risk_literal_found":true,"mutation_outcome":"NO_MUTATION","private_addresses_included":false,"production_changed":false,"purpose":"READ_ONLY_EXACT_ADAPTER_RISK_ENUM","rollback_restored":null,"rollback_started":false,"sanitized":true,"schema":2,"secrets_included":false,"services_changed":false,"snippets":[{"basis":"risk_assignment","snippet":"ALLOWED_RISKS = {\n \"READ_ONLY\",\n \"REVERSIBLE\",\n \"HIGH\",\n}","snippet_sha256":"3fb1a623c396c6f52340e3fd2a21dcb3bf8ef20853577b1f546ef06365ce93b1","values":["HIGH","READ_ONLY","REVERSIBLE"]},{"basis":"risk_not_in","snippet":"risk not in {\"REVERSIBLE\", \"HIGH\"}","snippet_sha256":"724ee6c7d954e249f31d377b059766cc67b75131513b547c93479821daff1665","values":["HIGH","REVERSIBLE"]},{"basis":"validator_error_context","line":385,"snippet":" raise AdapterError(\"invalid mode\")\n if document.get(\"target\") != \"pve01\":\n raise AdapterError(\"only pve01 target is supported\")\n\n timeout_seconds = document.get(\"timeout_seconds\")\n if (\n not isinstance(timeout_seconds, int)\n or isinstance(timeout_seconds, bool)\n or not 1 <= timeout_seconds <= 7200\n ):\n raise AdapterError(\"invalid timeout_seconds\")\n\n risk = document.get(\"risk\")\n if risk not in ALLOWED_RISKS:\n raise AdapterError(\"invalid risk\")\n if mode == \"change\" and risk not in {\"REVERSIBLE\", \"HIGH\"}:\n raise AdapterError(\"change capsule risk must be REVERSIBLE or HIGH\")\n if mode != \"change\" and risk != \"READ_ONLY\":\n raise AdapterError(\"non-change capsule risk must be READ_ONLY\")\n\n flags = document.get(\"change_flags\")\n if not isinstance(flags, dict):\n raise AdapterError(\"change_flags must be object\")\n if set(flags) != ALLOWED_CHANGE_FLAGS:\n raise AdapterError(\"change_flags keys invalid\")\n if any(type(value) is not bool for value in flags.values()):\n raise AdapterError(\"change_flags values must be boolean\")\n\n if mode != \"change\" and any(flags.values()):","snippet_sha256":"9e3fc0cf1111e8c480a659092819a244d1b0d701eaec4c5c544dd3aed65280b7"}],"source_bytes":86019,"source_path":"/usr/local/sbin/homelab-command-adapter","source_sha256":"a1a7a615c99568bf915d084cc476f0ebf54ab0eedf3ecd578c4b0e072f58c43d","status":"AUDIT_COMPLETE"}
|
||||
|
||||
OUTPUT_END
|
||||
CHAT_OUTPUT_END
|
||||
+8
-8
File diff suppressed because one or more lines are too long
+7
-7
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user