{
  "schema_version": 1,
  "channel": "homelab-runtime",
  "command_id": "SKLADCHIK-MODERATOR-ASSISTANT-GITEA-SNAPSHOT-PLAN-FIX1-20260727T182042Z",
  "status": "FAIL",
  "rc": 1,
  "host": "pve01",
  "mode": "verify",
  "component": "skladchik-moderator-assistant-gitea-snapshot-plan",
  "started_at_utc": "2026-07-27T18:21:27Z",
  "finished_at_utc": "2026-07-27T18:21:27Z",
  "reference_register_checked": true,
  "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
  "error_register_checked": true,
  "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83",
  "command_sha256": "317e32b036287d1c454cc5a7a1d445a93e6d4dfcfd6b0571fcff5ba4ada46aaf",
  "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": 1,
  "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": "58e97bda2eb40ae0d08858a7acb812bb7dcc1cfec8db0ef4de51c36ca8969f11",
  "sanitized_output_sha256": "58e97bda2eb40ae0d08858a7acb812bb7dcc1cfec8db0ef4de51c36ca8969f11",
  "output_truncated_in_json": false,
  "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
  "output": "Traceback (most recent call last):\n  File \"/var/lib/homelab-command-adapter/capsules/f3bc68939730261435e3edf5aeafffeb5c09d49059dc14b99a3c3cfc6423bb12/payload/plan.py\", line 26, in <module>\n    PLAN_DOCUMENT = {\"PLAN_SHA256\":\"a1ce6c679adf091fb1dbf5b30dde22bdd168a8f6de72dbf9cfb108936450b127\",\"anti_regression\":{\"AR-001-CANONICAL-CHECKOUT-REMAINS-FETCH-ONLY\":true,\"AR-002-WRITE-CHECK-USES-EXPLICIT-URL\":true,\"AR-003-EXACT-BASE-COMMIT-LOCK\":true,\"AR-004-EIGHT-EXACT-FILES-AND-SHA256\":true,\"AR-005-NO-SECRETS-OR-PRIVATE-CONTENT\":true,\"AR-006-NO-OVERWRITE\":true,\"AR-007-FAST-FORWARD-ONLY\":true,\"AR-008-DIAGNOSTICS-BEFORE-COMPENSATING-REVERT\":true,\"AR-009-BACKUP-AND-HOMELAB-SERVICES-UNCHANGED\":true,\"AR-010-APPLY-BINDS-EXACT-PLAN-SHA256\":true},\"apply_steps\":[\"Repeat every source lock, credential, repository, base commit, clean-worktree, destination-absence and explicit-URL dry-run check.\",\"Create a command-specific staging directory under /var/lib/homelab-admin/staging with mode 0700.\",\"Clone the exact main branch from the explicit HTTPS repository URL through the existing scoped machine credential helper.\",\"Verify the cloned HEAD and remote main still equal base_commit_lock.\",\"Create only the eight planned Markdown files and verify every byte count and SHA-256.\",\"Commit with the fixed homelab-ops-bot identity.\",\"Recheck remote main still equals base_commit_lock immediately before push.\",\"Push exactly one fast-forward commit to refs/heads/main using the explicit HTTPS URL; never use origin push URL and never force-push.\",\"Verify remote main equals the new commit and every planned file blob matches its SHA-256.\",\"If a post-push verification fails, save diagnostics before rollback and push one normal compensating revert commit.\"],\"base_commit_lock\":\"14d8bb0467e5890a7166444afda90a0185552eba\",\"branch\":\"main\",\"changes_made\":false,\"command_id\":\"SKLADCHIK-MODERATOR-ASSISTANT-GITEA-SNAPSHOT-PLAN-FIX1-20260727T182042Z\",\"commit_identity\":{\"email\":\"homelab-ops-bot@localhost\",\"name\":\"homelab-ops-bot\"},\"destination\":\"docs/projects/skladchik-moderator-assistant\",\"files\":[{\"bytes\":3585,\"path\":\"docs/projects/skladchik-moderator-assistant/01-current-system-and-gap-analysis.md\",\"sha256\":\"80393add0657b1622290e8f6d7ce871a38c88662afb13a269b0d024c429f52b4\"},{\"bytes\":4777,\"path\":\"docs/projects/skladchik-moderator-assistant/02-moderator-console-specification.md\",\"sha256\":\"73cd17fed76bbf93425bf3cef5a2fe54d81a784f8b72471b0cb4b386a5f2b256\"},{\"bytes\":2744,\"path\":\"docs/projects/skladchik-moderator-assistant/03-data-model-and-workflows.md\",\"sha256\":\"a9e88f904087525fec23d4ed8d3622e0bb5fbedd96304c2155b499b310edd585\"},{\"bytes\":2374,\"path\":\"docs/projects/skladchik-moderator-assistant/04-security-and-safety.md\",\"sha256\":\"d9cf5957de7f071d855e89a0b562b24bd32f0b9742706cc69ca60703b26e9c15\"},{\"bytes\":2870,\"path\":\"docs/projects/skladchik-moderator-assistant/05-implementation-roadmap.md\",\"sha256\":\"62f1650fafe09a42e803cedc08b177502fd50c057294fff0f0ebf6e92b07b96d\"},{\"bytes\":1908,\"path\":\"docs/projects/skladchik-moderator-assistant/06-open-questions-and-evidence-gaps.md\",\"sha256\":\"c1aed9b0c89a4cb4f3e86f09ce6f04536235490e866097e06c81078f519bde10\"},{\"bytes\":1386,\"path\":\"docs/projects/skladchik-moderator-assistant/HANDOFF.md\",\"sha256\":\"0510650416c1d08a5b9b51cc7f1e564b46b982e74fe074f31fb19f0ccb454a0e\"},{\"bytes\":4543,\"path\":\"docs/projects/skladchik-moderator-assistant/README.md\",\"sha256\":\"bbf0c7fb8fc0d7a595aa1421790470dc719aef4ee7c2d8608e80d7fbebd7ed27\"}],\"forbidden_actions\":[\"Do not enable or change the canonical checkout push URL.\",\"Do not modify existing repository files.\",\"Do not overwrite any destination path.\",\"Do not modify backup, Homelab services, runner, Portal, Adapter, Lookup or cluster configuration.\",\"Do not store credentials, cookies, CSRF values, private complaint content or forum session material.\",\"Do not force-push or rewrite Gitea history.\"],\"kind\":\"homelab-change-plan\",\"objective\":\"Save the paused Skladchik moderator assistant design as eight versioned Markdown documents in Gitea.\",\"plan_hash_definition\":\"SHA-256 of UTF-8 canonical JSON of the emitted document after removing exactly PLAN_SHA256 and plan_hash_definition; ensure_ascii=false, sort_keys=true, separators=(',', ':'), followed by one LF.\",\"plan_hash_excluded_fields\":[\"PLAN_SHA256\",\"plan_hash_definition\"],\"read_only\":true,\"remote_url\":\"https://git.gram1.ru/homelab-admin/homelab-ops.git\",\"repository\":\"homelab-admin/homelab-ops\",\"repository_contract\":{\"canonical_checkout\":\"/srv/homelab-ops\",\"fast_forward_only\":true,\"force_push_forbidden\":true,\"origin_fetch_url\":\"https://git.gram1.ru/homelab-admin/homelab-ops.git\",\"origin_push_url\":\"DISABLED\",\"write_transport\":\"Explicit HTTPS repository URL with the existing scoped homelab-ops machine credential helper.\"},\"rollback_contract\":{\"available\":true,\"diagnostics_before_rollback\":true,\"method\":\"A normal compensating commit that removes only the exact eight added files; force-push is forbidden.\"},\"rollback_started\":false,\"schema\":1,\"scope\":{\"backup\":false,\"cluster\":false,\"gitea\":true,\"production\":false},\"status\":\"PLAN_READY\",\"target\":\"pve01\"}\n                                                                                                                                                                        ^^^^\nNameError: name 'true' is not defined. Did you mean: 'True'?\n"
}
