diff --git a/runtime/history/RUNTIME-RECEIVER-REAL-PUSH-PATCH-025.json b/runtime/history/RUNTIME-RECEIVER-REAL-PUSH-PATCH-025.json new file mode 100644 index 0000000..81c1faa --- /dev/null +++ b/runtime/history/RUNTIME-RECEIVER-REAL-PUSH-PATCH-025.json @@ -0,0 +1,30 @@ +{ + "schema_version": 1, + "channel": "homelab-runtime", + "command_id": "RUNTIME-RECEIVER-REAL-PUSH-PATCH-025", + "status": "OK", + "rc": 0, + "host": "pve01", + "mode": "change", + "component": "gitea-runtime", + "started_at_utc": "2026-07-21T09:45:07Z", + "finished_at_utc": "2026-07-21T09:45:07Z", + "reference_register_checked": true, + "reference_sha256": "f6f7749fda946015116cdbbd754c7e7f20356b4a6cf4df330a1b0b8fdf59cbb2", + "error_register_checked": true, + "error_register_sha256": "ab8308549db90d235b591af0581580c3c7ba1b287b129cc6111c2eef0a0f9ecc", + "command_sha256": "fab87b774b253a0a1c9ff52126be15e1fe1c76a5044126e09aa529ab4876a123", + "duplicate_failed_command_blocked": false, + "block_reason": null, + "execution_started": true, + "changes_made": true, + "sanitized": true, + "secrets_included": false, + "private_addresses_included": false, + "raw_evidence_retained_locally": true, + "raw_evidence_sha256": "52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966", + "sanitized_output_sha256": "52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966", + "output_truncated_in_json": false, + "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", + "output": "PATCH=APPLIED\nBACKUP=/usr/local/sbin/homelab-runtime-receive.before-real-push.20260721T094507Z\n" +} diff --git a/runtime/history/RUNTIME-RECEIVER-REAL-PUSH-PATCH-025.txt b/runtime/history/RUNTIME-RECEIVER-REAL-PUSH-PATCH-025.txt new file mode 100644 index 0000000..5e185d6 --- /dev/null +++ b/runtime/history/RUNTIME-RECEIVER-REAL-PUSH-PATCH-025.txt @@ -0,0 +1,26 @@ +CHAT_OUTPUT_BEGIN +COMMAND_ID=RUNTIME-RECEIVER-REAL-PUSH-PATCH-025 +STATUS=OK +RC=0 +HOST=pve01 +MODE=change +COMPONENT=gitea-runtime +REFERENCE_REGISTER_CHECK=OK +REFERENCE_SHA256=f6f7749fda946015116cdbbd754c7e7f20356b4a6cf4df330a1b0b8fdf59cbb2 +ERROR_REGISTER_CHECK=OK +ERROR_REGISTER_SHA256=ab8308549db90d235b591af0581580c3c7ba1b287b129cc6111c2eef0a0f9ecc +COMMAND_SHA256=fab87b774b253a0a1c9ff52126be15e1fe1c76a5044126e09aa529ab4876a123 +DUPLICATE_FAILED_COMMAND_BLOCKED=false +EXECUTION_STARTED=true +CHANGES_MADE=true +SANITIZED=yes +SECRETS_INCLUDED=no +PRIVATE_ADDRESSES_INCLUDED=no +RAW_EVIDENCE_SHA256=52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966 +SANITIZED_OUTPUT_SHA256=52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966 +OUTPUT_BEGIN +PATCH=APPLIED +BACKUP=/usr/local/sbin/homelab-runtime-receive.before-real-push.20260721T094507Z + +OUTPUT_END +CHAT_OUTPUT_END diff --git a/runtime/latest.json b/runtime/latest.json index 929bfec..81c1faa 100644 --- a/runtime/latest.json +++ b/runtime/latest.json @@ -1,30 +1,30 @@ { "schema_version": 1, "channel": "homelab-runtime", - "command_id": "RUNTIME-RECEIVER-BLOCK-024", + "command_id": "RUNTIME-RECEIVER-REAL-PUSH-PATCH-025", "status": "OK", "rc": 0, "host": "pve01", - "mode": "read-only", + "mode": "change", "component": "gitea-runtime", - "started_at_utc": "2026-07-21T09:42:10Z", - "finished_at_utc": "2026-07-21T09:42:10Z", + "started_at_utc": "2026-07-21T09:45:07Z", + "finished_at_utc": "2026-07-21T09:45:07Z", "reference_register_checked": true, "reference_sha256": "f6f7749fda946015116cdbbd754c7e7f20356b4a6cf4df330a1b0b8fdf59cbb2", "error_register_checked": true, "error_register_sha256": "ab8308549db90d235b591af0581580c3c7ba1b287b129cc6111c2eef0a0f9ecc", - "command_sha256": "03de81eb7223c7f9d0a547ee58a3bc445df4b6aaa0e96535274791c8e6a2f588", + "command_sha256": "fab87b774b253a0a1c9ff52126be15e1fe1c76a5044126e09aa529ab4876a123", "duplicate_failed_command_blocked": false, "block_reason": null, "execution_started": true, - "changes_made": false, + "changes_made": true, "sanitized": true, "secrets_included": false, "private_addresses_included": false, "raw_evidence_retained_locally": true, - "raw_evidence_sha256": "bd6112182f1e657fe1f32a60b9224edd91f45d6c4fc41b0637caaaf3686aefde", - "sanitized_output_sha256": "bd6112182f1e657fe1f32a60b9224edd91f45d6c4fc41b0637caaaf3686aefde", + "raw_evidence_sha256": "52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966", + "sanitized_output_sha256": "52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", - "output": "COMMIT_SHA=\"$(\n docker exec \\\n -u \"${GIT_UID}:${GIT_GID}\" \\\n -e COMMAND_ID=\"$COMMAND_ID\" \\\n -e PUBLISHED_AT=\"$PUBLISHED_AT\" \\\n -e WORK_CONTAINER=\"$WORK_CONTAINER\" \\\n gitea sh -lc '\nset -eu\n\nBARE=\"/data/git/repositories/homelab-admin/homelab-public-context.git\"\nSTAGE=\"/data/gitea/runtime-stage\"\nWORK=\"$WORK_CONTAINER\"\n\nrm -rf \"$WORK\"\n\ngit clone --quiet \"$BARE\" \"$WORK\"\n\ncd \"$WORK\"\n\ngit config user.name \"homelab-runtime-publisher\"\ngit config user.email \"homelab-runtime@localhost\"\n\nif git show-ref \\\n --verify \\\n --quiet \\\n refs/remotes/origin/assistant-runtime\nthen\n git checkout \\\n --quiet \\\n -B assistant-runtime \\\n origin/assistant-runtime\nelse\n git checkout \\\n --quiet \\\n --orphan assistant-runtime\n\n git rm -rf . >/dev/null 2>&1 || true\nfi\n\nmkdir -p runtime/history\n\ncp \"$STAGE/latest.json\" runtime/latest.json\ncp \"$STAGE/latest.txt\" runtime/latest.txt\ncp \"$STAGE/latest.json\" \"runtime/history/${COMMAND_ID}.json\"\ncp \"$STAGE/latest.txt\" \"runtime/history/${COMMAND_ID}.txt\"\ncp \"$STAGE/README.md\" README.md\n\ngit add \\\n README.md \\\n runtime/latest.json \\\n runtime/latest.txt \\\n \"runtime/history/${COMMAND_ID}.json\"\n\ngit add \"runtime/history/${COMMAND_ID}.txt\"\n\nif ! git diff --cached --quiet\nthen\n GIT_AUTHOR_DATE=\"$PUBLISHED_AT\" \\\n GIT_COMMITTER_DATE=\"$PUBLISHED_AT\" \\\n git commit \\\n --quiet \\\n -m \"runtime: publish ${COMMAND_ID}\"\nfi\n\nCOMMIT=\"$(git rev-parse HEAD)\"\n\ngit --git-dir=\"$BARE\" \\\n fetch \\\n --quiet \\\n \"$WORK\" \\\n refs/heads/assistant-runtime\n\nOLD=\"$(\n git --git-dir=\"$BARE\" \\\n rev-parse refs/heads/assistant-runtime \\\n 2>/dev/null ||\n true\n)\"\n\nif [ -n \"$OLD\" ]\nthen\n git --git-dir=\"$BARE\" \\\n update-ref \\\n refs/heads/assistant-runtime \\\n \"$COMMIT\" \\\n \"$OLD\"\nelse\n git --git-dir=\"$BARE\" \\\n update-ref \\\n refs/heads/assistant-runtime \\\n \"$COMMIT\"\nfi\n\nrm -rf \"$WORK\"\n\nprintf \"%s\\n\" \"$COMMIT\"\n'\n)\"\n\nJSON_TMP=\"$(mktemp \"${PUBLIC_DIR}/.latest.json.XXXXXX\")\"\nTXT_TMP=\"$(mktemp \"${PUBLIC_DIR}/.latest.txt.XXXXXX\")\"\n" + "output": "PATCH=APPLIED\nBACKUP=/usr/local/sbin/homelab-runtime-receive.before-real-push.20260721T094507Z\n" } diff --git a/runtime/latest.txt b/runtime/latest.txt index 3f092b7..5e185d6 100644 --- a/runtime/latest.txt +++ b/runtime/latest.txt @@ -1,125 +1,26 @@ CHAT_OUTPUT_BEGIN -COMMAND_ID=RUNTIME-RECEIVER-BLOCK-024 +COMMAND_ID=RUNTIME-RECEIVER-REAL-PUSH-PATCH-025 STATUS=OK RC=0 HOST=pve01 -MODE=read-only +MODE=change COMPONENT=gitea-runtime REFERENCE_REGISTER_CHECK=OK REFERENCE_SHA256=f6f7749fda946015116cdbbd754c7e7f20356b4a6cf4df330a1b0b8fdf59cbb2 ERROR_REGISTER_CHECK=OK ERROR_REGISTER_SHA256=ab8308549db90d235b591af0581580c3c7ba1b287b129cc6111c2eef0a0f9ecc -COMMAND_SHA256=03de81eb7223c7f9d0a547ee58a3bc445df4b6aaa0e96535274791c8e6a2f588 +COMMAND_SHA256=fab87b774b253a0a1c9ff52126be15e1fe1c76a5044126e09aa529ab4876a123 DUPLICATE_FAILED_COMMAND_BLOCKED=false EXECUTION_STARTED=true -CHANGES_MADE=false +CHANGES_MADE=true SANITIZED=yes SECRETS_INCLUDED=no PRIVATE_ADDRESSES_INCLUDED=no -RAW_EVIDENCE_SHA256=bd6112182f1e657fe1f32a60b9224edd91f45d6c4fc41b0637caaaf3686aefde -SANITIZED_OUTPUT_SHA256=bd6112182f1e657fe1f32a60b9224edd91f45d6c4fc41b0637caaaf3686aefde +RAW_EVIDENCE_SHA256=52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966 +SANITIZED_OUTPUT_SHA256=52c1dbe60e2dd5219bae4b6baf361a7913f6429d731e911f9012d37637a77966 OUTPUT_BEGIN -COMMIT_SHA="$( - docker exec \ - -u "${GIT_UID}:${GIT_GID}" \ - -e COMMAND_ID="$COMMAND_ID" \ - -e PUBLISHED_AT="$PUBLISHED_AT" \ - -e WORK_CONTAINER="$WORK_CONTAINER" \ - gitea sh -lc ' -set -eu - -BARE="/data/git/repositories/homelab-admin/homelab-public-context.git" -STAGE="/data/gitea/runtime-stage" -WORK="$WORK_CONTAINER" - -rm -rf "$WORK" - -git clone --quiet "$BARE" "$WORK" - -cd "$WORK" - -git config user.name "homelab-runtime-publisher" -git config user.email "homelab-runtime@localhost" - -if git show-ref \ - --verify \ - --quiet \ - refs/remotes/origin/assistant-runtime -then - git checkout \ - --quiet \ - -B assistant-runtime \ - origin/assistant-runtime -else - git checkout \ - --quiet \ - --orphan assistant-runtime - - git rm -rf . >/dev/null 2>&1 || true -fi - -mkdir -p runtime/history - -cp "$STAGE/latest.json" runtime/latest.json -cp "$STAGE/latest.txt" runtime/latest.txt -cp "$STAGE/latest.json" "runtime/history/${COMMAND_ID}.json" -cp "$STAGE/latest.txt" "runtime/history/${COMMAND_ID}.txt" -cp "$STAGE/README.md" README.md - -git add \ - README.md \ - runtime/latest.json \ - runtime/latest.txt \ - "runtime/history/${COMMAND_ID}.json" - -git add "runtime/history/${COMMAND_ID}.txt" - -if ! git diff --cached --quiet -then - GIT_AUTHOR_DATE="$PUBLISHED_AT" \ - GIT_COMMITTER_DATE="$PUBLISHED_AT" \ - git commit \ - --quiet \ - -m "runtime: publish ${COMMAND_ID}" -fi - -COMMIT="$(git rev-parse HEAD)" - -git --git-dir="$BARE" \ - fetch \ - --quiet \ - "$WORK" \ - refs/heads/assistant-runtime - -OLD="$( - git --git-dir="$BARE" \ - rev-parse refs/heads/assistant-runtime \ - 2>/dev/null || - true -)" - -if [ -n "$OLD" ] -then - git --git-dir="$BARE" \ - update-ref \ - refs/heads/assistant-runtime \ - "$COMMIT" \ - "$OLD" -else - git --git-dir="$BARE" \ - update-ref \ - refs/heads/assistant-runtime \ - "$COMMIT" -fi - -rm -rf "$WORK" - -printf "%s\n" "$COMMIT" -' -)" - -JSON_TMP="$(mktemp "${PUBLIC_DIR}/.latest.json.XXXXXX")" -TXT_TMP="$(mktemp "${PUBLIC_DIR}/.latest.txt.XXXXXX")" +PATCH=APPLIED +BACKUP=/usr/local/sbin/homelab-runtime-receive.before-real-push.20260721T094507Z OUTPUT_END CHAT_OUTPUT_END