runtime: publish CLUSTER-REFERENCE-ROOTCAUSE-144
This commit is contained in:
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"schema_version": 1,
|
||||||
|
"channel": "homelab-runtime",
|
||||||
|
"command_id": "CLUSTER-REFERENCE-ROOTCAUSE-144",
|
||||||
|
"status": "OK",
|
||||||
|
"rc": 0,
|
||||||
|
"host": "pve01",
|
||||||
|
"mode": "read-only",
|
||||||
|
"component": "cluster-audit",
|
||||||
|
"started_at_utc": "2026-07-22T06:58:19Z",
|
||||||
|
"finished_at_utc": "2026-07-22T06:58:19Z",
|
||||||
|
"reference_register_checked": true,
|
||||||
|
"reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
|
||||||
|
"error_register_checked": true,
|
||||||
|
"error_register_sha256": "08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752",
|
||||||
|
"command_sha256": "0f332cf4ae2e35a7b5fef3a5fafdd727c1d07b9f73e2d6a7cb8ca7bfa9112f27",
|
||||||
|
"duplicate_failed_command_blocked": false,
|
||||||
|
"block_reason": null,
|
||||||
|
"execution_started": true,
|
||||||
|
"changes_made": false,
|
||||||
|
"sanitized": true,
|
||||||
|
"secrets_included": false,
|
||||||
|
"private_addresses_included": false,
|
||||||
|
"raw_evidence_retained_locally": true,
|
||||||
|
"raw_evidence_sha256": "8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1",
|
||||||
|
"sanitized_output_sha256": "8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1",
|
||||||
|
"output_truncated_in_json": false,
|
||||||
|
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
||||||
|
"output": "=== RUNNER_HELP ===\nUsage:\n homelab-chat-run COMMAND_ID MODE COMPONENT -- command [arguments...]\n\nMODE:\n read-only\n verify\n change\n transport-test\n\nEnvironment:\n HOMELAB_ALLOW_REPEAT=1 Allow exact repeat of a previously failed command.\n HOMELAB_TIMEOUT=SECONDS Optional command timeout.\n=== MODE_VALIDATION ===\n11: read-only\n13: change\n51: read-only|verify|change|transport-test)\n55: echo 'REASON=INVALID_MODE'\n147:CHANGES_MADE=false\n150: change)\n151: CHANGES_MADE=true\n306:target.write_text(text, encoding=\"utf-8\")\n333: \"$CHANGES_MADE\" <<'PY'\n357: changes_made,\n396: \"changes_made\": changes_made == \"true\",\n411:Path(json_path).write_text(\n437: echo \"CHANGES_MADE=$CHANGES_MADE\"\n=== REFERENCE_STATE ===\nREFERENCE_ROOT=ABSENT\nREFERENCE_CLI=ABSENT\nCLUSTER_REFERENCE_ROOTCAUSE=COMPLETE\n"
|
||||||
|
}
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
CHAT_OUTPUT_BEGIN
|
||||||
|
COMMAND_ID=CLUSTER-REFERENCE-ROOTCAUSE-144
|
||||||
|
STATUS=OK
|
||||||
|
RC=0
|
||||||
|
HOST=pve01
|
||||||
|
MODE=read-only
|
||||||
|
COMPONENT=cluster-audit
|
||||||
|
REFERENCE_REGISTER_CHECK=OK
|
||||||
|
REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e
|
||||||
|
ERROR_REGISTER_CHECK=OK
|
||||||
|
ERROR_REGISTER_SHA256=08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752
|
||||||
|
COMMAND_SHA256=0f332cf4ae2e35a7b5fef3a5fafdd727c1d07b9f73e2d6a7cb8ca7bfa9112f27
|
||||||
|
DUPLICATE_FAILED_COMMAND_BLOCKED=false
|
||||||
|
EXECUTION_STARTED=true
|
||||||
|
CHANGES_MADE=false
|
||||||
|
SANITIZED=yes
|
||||||
|
SECRETS_INCLUDED=no
|
||||||
|
PRIVATE_ADDRESSES_INCLUDED=no
|
||||||
|
RAW_EVIDENCE_SHA256=8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1
|
||||||
|
SANITIZED_OUTPUT_SHA256=8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1
|
||||||
|
OUTPUT_BEGIN
|
||||||
|
=== RUNNER_HELP ===
|
||||||
|
Usage:
|
||||||
|
homelab-chat-run COMMAND_ID MODE COMPONENT -- command [arguments...]
|
||||||
|
|
||||||
|
MODE:
|
||||||
|
read-only
|
||||||
|
verify
|
||||||
|
change
|
||||||
|
transport-test
|
||||||
|
|
||||||
|
Environment:
|
||||||
|
HOMELAB_ALLOW_REPEAT=1 Allow exact repeat of a previously failed command.
|
||||||
|
HOMELAB_TIMEOUT=SECONDS Optional command timeout.
|
||||||
|
=== MODE_VALIDATION ===
|
||||||
|
11: read-only
|
||||||
|
13: change
|
||||||
|
51: read-only|verify|change|transport-test)
|
||||||
|
55: echo 'REASON=INVALID_MODE'
|
||||||
|
147:CHANGES_MADE=false
|
||||||
|
150: change)
|
||||||
|
151: CHANGES_MADE=true
|
||||||
|
306:target.write_text(text, encoding="utf-8")
|
||||||
|
333: "$CHANGES_MADE" <<'PY'
|
||||||
|
357: changes_made,
|
||||||
|
396: "changes_made": changes_made == "true",
|
||||||
|
411:Path(json_path).write_text(
|
||||||
|
437: echo "CHANGES_MADE=$CHANGES_MADE"
|
||||||
|
=== REFERENCE_STATE ===
|
||||||
|
REFERENCE_ROOT=ABSENT
|
||||||
|
REFERENCE_CLI=ABSENT
|
||||||
|
CLUSTER_REFERENCE_ROOTCAUSE=COMPLETE
|
||||||
|
|
||||||
|
OUTPUT_END
|
||||||
|
CHAT_OUTPUT_END
|
||||||
+9
-9
@@ -1,19 +1,19 @@
|
|||||||
{
|
{
|
||||||
"schema_version": 1,
|
"schema_version": 1,
|
||||||
"channel": "homelab-runtime",
|
"channel": "homelab-runtime",
|
||||||
"command_id": "CLUSTER-REFERENCE-WRITE-MODE-141",
|
"command_id": "CLUSTER-REFERENCE-ROOTCAUSE-144",
|
||||||
"status": "FAIL",
|
"status": "OK",
|
||||||
"rc": 1,
|
"rc": 0,
|
||||||
"host": "pve01",
|
"host": "pve01",
|
||||||
"mode": "read-only",
|
"mode": "read-only",
|
||||||
"component": "cluster-audit",
|
"component": "cluster-audit",
|
||||||
"started_at_utc": "2026-07-22T06:41:08Z",
|
"started_at_utc": "2026-07-22T06:58:19Z",
|
||||||
"finished_at_utc": "2026-07-22T06:41:08Z",
|
"finished_at_utc": "2026-07-22T06:58:19Z",
|
||||||
"reference_register_checked": true,
|
"reference_register_checked": true,
|
||||||
"reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
|
"reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
|
||||||
"error_register_checked": true,
|
"error_register_checked": true,
|
||||||
"error_register_sha256": "08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752",
|
"error_register_sha256": "08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752",
|
||||||
"command_sha256": "500715ae2c908f7e766976822e3163b5395329e2699f3f65662391a8c9529bf0",
|
"command_sha256": "0f332cf4ae2e35a7b5fef3a5fafdd727c1d07b9f73e2d6a7cb8ca7bfa9112f27",
|
||||||
"duplicate_failed_command_blocked": false,
|
"duplicate_failed_command_blocked": false,
|
||||||
"block_reason": null,
|
"block_reason": null,
|
||||||
"execution_started": true,
|
"execution_started": true,
|
||||||
@@ -22,9 +22,9 @@
|
|||||||
"secrets_included": false,
|
"secrets_included": false,
|
||||||
"private_addresses_included": false,
|
"private_addresses_included": false,
|
||||||
"raw_evidence_retained_locally": true,
|
"raw_evidence_retained_locally": true,
|
||||||
"raw_evidence_sha256": "d745fd14a16bd7924373b5774d64342db1ab7e0d12e751efef1cac218b0d9892",
|
"raw_evidence_sha256": "8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1",
|
||||||
"sanitized_output_sha256": "d745fd14a16bd7924373b5774d64342db1ab7e0d12e751efef1cac218b0d9892",
|
"sanitized_output_sha256": "8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1",
|
||||||
"output_truncated_in_json": false,
|
"output_truncated_in_json": false,
|
||||||
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
||||||
"output": "JSON_IMMUTABLE_COMMIT=6153e0b3fa0e3b33b10c87913873c9ad46fec07a\nTXT_IMMUTABLE_COMMIT=6153e0b3fa0e3b33b10c87913873c9ad46fec07a\nTraceback (most recent call last):\n File \"<string>\", line 1, in <module>\n import json,sys; d=json.load(open(sys.argv[1])); assert d.get(\"command_id\")==sys.argv[2],d; assert d.get(\"status\")==\"OK\",d; assert int(d.get(\"rc\"))==0,d; assert d.get(\"execution_started\") is True,d\n ^^^^^^^^^^^^^^^^^^^^^\nAssertionError: {'schema_version': 1, 'channel': 'homelab-runtime', 'command_id': 'CLUSTER-REFERENCE-MODE-AUDIT-140', 'status': 'FAIL', 'rc': 22, 'host': 'pve01', 'mode': 'read-only', 'component': 'cluster-audit', 'started_at_utc': '2026-07-22T06:37:48Z', 'finished_at_utc': '2026-07-22T06:37:49Z', 'reference_register_checked': True, 'reference_sha256': '5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e', 'error_register_checked': True, 'error_register_sha256': '08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752', 'command_sha256': '1f34a867cab9808781b5127ab5d4f8469449dfe4ebaa4284071157c47aa9d399', 'duplicate_failed_command_blocked': False, 'block_reason': None, 'execution_started': True, 'changes_made': False, 'sanitized': True, 'secrets_included': False, 'private_addresses_included': False, 'raw_evidence_retained_locally': True, 'raw_evidence_sha256': '0fb219efe96c7b0a4962325763ebbe3324456de8ca7b7d1e71142d92a6d8eab2', 'sanitized_output_sha256': '0fb219efe96c7b0a4962325763ebbe3324456de8ca7b7d1e71142d92a6d8eab2', 'output_truncated_in_json': False, 'full_sanitized_output_url': 'https://git.gram1.ru/.well-known/homelab-runtime/latest.txt', 'output': 'curl: (22) The requested URL returned error: 404\\n'}\n"
|
"output": "=== RUNNER_HELP ===\nUsage:\n homelab-chat-run COMMAND_ID MODE COMPONENT -- command [arguments...]\n\nMODE:\n read-only\n verify\n change\n transport-test\n\nEnvironment:\n HOMELAB_ALLOW_REPEAT=1 Allow exact repeat of a previously failed command.\n HOMELAB_TIMEOUT=SECONDS Optional command timeout.\n=== MODE_VALIDATION ===\n11: read-only\n13: change\n51: read-only|verify|change|transport-test)\n55: echo 'REASON=INVALID_MODE'\n147:CHANGES_MADE=false\n150: change)\n151: CHANGES_MADE=true\n306:target.write_text(text, encoding=\"utf-8\")\n333: \"$CHANGES_MADE\" <<'PY'\n357: changes_made,\n396: \"changes_made\": changes_made == \"true\",\n411:Path(json_path).write_text(\n437: echo \"CHANGES_MADE=$CHANGES_MADE\"\n=== REFERENCE_STATE ===\nREFERENCE_ROOT=ABSENT\nREFERENCE_CLI=ABSENT\nCLUSTER_REFERENCE_ROOTCAUSE=COMPLETE\n"
|
||||||
}
|
}
|
||||||
|
|||||||
+37
-13
@@ -1,7 +1,7 @@
|
|||||||
CHAT_OUTPUT_BEGIN
|
CHAT_OUTPUT_BEGIN
|
||||||
COMMAND_ID=CLUSTER-REFERENCE-WRITE-MODE-141
|
COMMAND_ID=CLUSTER-REFERENCE-ROOTCAUSE-144
|
||||||
STATUS=FAIL
|
STATUS=OK
|
||||||
RC=1
|
RC=0
|
||||||
HOST=pve01
|
HOST=pve01
|
||||||
MODE=read-only
|
MODE=read-only
|
||||||
COMPONENT=cluster-audit
|
COMPONENT=cluster-audit
|
||||||
@@ -9,23 +9,47 @@ REFERENCE_REGISTER_CHECK=OK
|
|||||||
REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e
|
REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e
|
||||||
ERROR_REGISTER_CHECK=OK
|
ERROR_REGISTER_CHECK=OK
|
||||||
ERROR_REGISTER_SHA256=08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752
|
ERROR_REGISTER_SHA256=08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752
|
||||||
COMMAND_SHA256=500715ae2c908f7e766976822e3163b5395329e2699f3f65662391a8c9529bf0
|
COMMAND_SHA256=0f332cf4ae2e35a7b5fef3a5fafdd727c1d07b9f73e2d6a7cb8ca7bfa9112f27
|
||||||
DUPLICATE_FAILED_COMMAND_BLOCKED=false
|
DUPLICATE_FAILED_COMMAND_BLOCKED=false
|
||||||
EXECUTION_STARTED=true
|
EXECUTION_STARTED=true
|
||||||
CHANGES_MADE=false
|
CHANGES_MADE=false
|
||||||
SANITIZED=yes
|
SANITIZED=yes
|
||||||
SECRETS_INCLUDED=no
|
SECRETS_INCLUDED=no
|
||||||
PRIVATE_ADDRESSES_INCLUDED=no
|
PRIVATE_ADDRESSES_INCLUDED=no
|
||||||
RAW_EVIDENCE_SHA256=d745fd14a16bd7924373b5774d64342db1ab7e0d12e751efef1cac218b0d9892
|
RAW_EVIDENCE_SHA256=8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1
|
||||||
SANITIZED_OUTPUT_SHA256=d745fd14a16bd7924373b5774d64342db1ab7e0d12e751efef1cac218b0d9892
|
SANITIZED_OUTPUT_SHA256=8d8b89c1623058a816d0348c9d9974a4659a176962b0a99fdc8c88ea64c361d1
|
||||||
OUTPUT_BEGIN
|
OUTPUT_BEGIN
|
||||||
JSON_IMMUTABLE_COMMIT=6153e0b3fa0e3b33b10c87913873c9ad46fec07a
|
=== RUNNER_HELP ===
|
||||||
TXT_IMMUTABLE_COMMIT=6153e0b3fa0e3b33b10c87913873c9ad46fec07a
|
Usage:
|
||||||
Traceback (most recent call last):
|
homelab-chat-run COMMAND_ID MODE COMPONENT -- command [arguments...]
|
||||||
File "<string>", line 1, in <module>
|
|
||||||
import json,sys; d=json.load(open(sys.argv[1])); assert d.get("command_id")==sys.argv[2],d; assert d.get("status")=="OK",d; assert int(d.get("rc"))==0,d; assert d.get("execution_started") is True,d
|
MODE:
|
||||||
^^^^^^^^^^^^^^^^^^^^^
|
read-only
|
||||||
AssertionError: {'schema_version': 1, 'channel': 'homelab-runtime', 'command_id': 'CLUSTER-REFERENCE-MODE-AUDIT-140', 'status': 'FAIL', 'rc': 22, 'host': 'pve01', 'mode': 'read-only', 'component': 'cluster-audit', 'started_at_utc': '2026-07-22T06:37:48Z', 'finished_at_utc': '2026-07-22T06:37:49Z', 'reference_register_checked': True, 'reference_sha256': '5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e', 'error_register_checked': True, 'error_register_sha256': '08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752', 'command_sha256': '1f34a867cab9808781b5127ab5d4f8469449dfe4ebaa4284071157c47aa9d399', 'duplicate_failed_command_blocked': False, 'block_reason': None, 'execution_started': True, 'changes_made': False, 'sanitized': True, 'secrets_included': False, 'private_addresses_included': False, 'raw_evidence_retained_locally': True, 'raw_evidence_sha256': '0fb219efe96c7b0a4962325763ebbe3324456de8ca7b7d1e71142d92a6d8eab2', 'sanitized_output_sha256': '0fb219efe96c7b0a4962325763ebbe3324456de8ca7b7d1e71142d92a6d8eab2', 'output_truncated_in_json': False, 'full_sanitized_output_url': 'https://git.gram1.ru/.well-known/homelab-runtime/latest.txt', 'output': 'curl: (22) The requested URL returned error: 404\n'}
|
verify
|
||||||
|
change
|
||||||
|
transport-test
|
||||||
|
|
||||||
|
Environment:
|
||||||
|
HOMELAB_ALLOW_REPEAT=1 Allow exact repeat of a previously failed command.
|
||||||
|
HOMELAB_TIMEOUT=SECONDS Optional command timeout.
|
||||||
|
=== MODE_VALIDATION ===
|
||||||
|
11: read-only
|
||||||
|
13: change
|
||||||
|
51: read-only|verify|change|transport-test)
|
||||||
|
55: echo 'REASON=INVALID_MODE'
|
||||||
|
147:CHANGES_MADE=false
|
||||||
|
150: change)
|
||||||
|
151: CHANGES_MADE=true
|
||||||
|
306:target.write_text(text, encoding="utf-8")
|
||||||
|
333: "$CHANGES_MADE" <<'PY'
|
||||||
|
357: changes_made,
|
||||||
|
396: "changes_made": changes_made == "true",
|
||||||
|
411:Path(json_path).write_text(
|
||||||
|
437: echo "CHANGES_MADE=$CHANGES_MADE"
|
||||||
|
=== REFERENCE_STATE ===
|
||||||
|
REFERENCE_ROOT=ABSENT
|
||||||
|
REFERENCE_CLI=ABSENT
|
||||||
|
CLUSTER_REFERENCE_ROOTCAUSE=COMPLETE
|
||||||
|
|
||||||
OUTPUT_END
|
OUTPUT_END
|
||||||
CHAT_OUTPUT_END
|
CHAT_OUTPUT_END
|
||||||
|
|||||||
Reference in New Issue
Block a user