runtime: publish NEW-CHAT-PROTOCOL-PUBLISH-20260722
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -0,0 +1,98 @@
|
||||
CHAT_OUTPUT_BEGIN
|
||||
COMMAND_ID=NEW-CHAT-PROTOCOL-PUBLISH-20260722
|
||||
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=4eb8bdd5f8fa0728a76e44048de0700644f7fce0eae57d409ef8cb7aaf2fa6c2
|
||||
DUPLICATE_FAILED_COMMAND_BLOCKED=false
|
||||
EXECUTION_STARTED=true
|
||||
CHANGES_MADE=false
|
||||
SANITIZED=yes
|
||||
SECRETS_INCLUDED=no
|
||||
PRIVATE_ADDRESSES_INCLUDED=no
|
||||
RAW_EVIDENCE_SHA256=2e8efdba3f01464db7b6061bb1010028efc79c41be86469b285c4b1c03f0da99
|
||||
SANITIZED_OUTPUT_SHA256=2e8efdba3f01464db7b6061bb1010028efc79c41be86469b285c4b1c03f0da99
|
||||
OUTPUT_BEGIN
|
||||
NEW_CHAT_HOMELAB_PROTOCOL_VERSION=1
|
||||
PURPOSE=Загрузить контекст homelab и без остановки продолжить незавершённый аудит.
|
||||
BOOTSTRAP_URL=https://git.gram1.ru/.well-known/homelab-bootstrap.json
|
||||
HISTORY_URL=https://git.gram1.ru/homelab-admin/homelab-public-context/src/branch/assistant-runtime/runtime/history
|
||||
COMMITS_URL=https://git.gram1.ru/homelab-admin/homelab-public-context/commits/branch/assistant-runtime/runtime/history
|
||||
BRANCHES_URL=https://git.gram1.ru/homelab-admin/homelab-public-context/branches
|
||||
PROTOCOL_URL=https://git.gram1.ru/homelab-admin/homelab-public-context/src/branch/assistant-runtime/runtime/history/NEW-CHAT-PROTOCOL-PUBLISH-20260722.txt
|
||||
|
||||
=== ЗАПУСК НОВОГО ЧАТА ===
|
||||
Сначала открой bootstrap.
|
||||
Из bootstrap обязательно загрузи full_context_url, errors_index_url, workflow_contract_url и double_check_rule_url.
|
||||
Восстанови структуру кластера, узлы, пользователей, текущий рабочий поток, решения, ошибки и незакрытые задачи.
|
||||
Не проси пользователя повторно пересказывать контекст или копировать терминальный вывод.
|
||||
|
||||
=== ИСТОЧНИК ИСТИНЫ ===
|
||||
Единственный источник истины о выполненной команде: runtime/history/<ТОЧНЫЙ_COMMAND_ID>.txt.
|
||||
runtime/latest.json и latest.txt не являются подтверждением результата.
|
||||
Ищи точный коммит с сообщением runtime: publish <COMMAND_ID>, затем открывай файл внутри этого коммита.
|
||||
Прочитай COMMAND_ID, STATUS, RC, HOST, MODE, COMPONENT, проверки реестров, EXECUTION_STARTED, CHANGES_MADE и весь OUTPUT_BEGIN — OUTPUT_END.
|
||||
|
||||
=== ПОДТВЕРЖДЕНИЕ ПОЛЬЗОВАТЕЛЯ ===
|
||||
Отдельная точка, запятая или обратная косая черта означает: предыдущая команда выполнена.
|
||||
После подтверждения возьми COMMAND_ID из последней выданной команды и сам прочитай результат в Gitea.
|
||||
Не спрашивай, выполнена ли команда, и не проси прислать её вывод.
|
||||
После анализа сразу выдай следующую проверенную команду.
|
||||
|
||||
=== ЧТЕНИЕ GITEA БЕЗ ЛОЖНЫХ ОШИБОК ===
|
||||
Страница дерева runtime/history может быть устаревшей из-за кэша.
|
||||
Основной маршрут свежего результата: история коммитов → точное сообщение publish → коммит → View File.
|
||||
Если результата нет на первой странице истории, проверь следующие страницы.
|
||||
Перед выводом об отсутствии результата проверь точный файл, историю коммитов, каталог history и head ветки assistant-runtime.
|
||||
Расхождение страниц, ошибка raw URL, URL is not safe to open или старый HTML не доказывают отсутствие файла.
|
||||
Неспособность веб-инструмента открыть URL не доказывает сбой Gitea, runner или publisher.
|
||||
Не создавай relay-команды и команды повторной публикации только из-за кэша веб-инструмента.
|
||||
|
||||
=== АНАЛИЗ ОШИБОК ===
|
||||
Никогда не выдумывай содержимое результата или причину сбоя.
|
||||
Различай: команда не дошла до runner; runner вернул ошибку; опубликован STATUS=FAIL; веб-инструмент не показал опубликованный файл.
|
||||
Не объявляй успех только по RC=0. Проверяй фактический смысл вывода.
|
||||
Не объявляй причину по одному systemd failed-state. Проверяй журнал, исходный скрипт и условия завершения.
|
||||
Перед синтаксической проверкой определи тип файла и его shebang. Не проверяй Python через bash -n.
|
||||
Не повторяй точную провалившуюся команду.
|
||||
Каждую ошибку регистрируй: что произошло, почему, какое правило предотвращает повторение и как это учтено дальше.
|
||||
|
||||
=== ПРОВЕРКА ПЕРЕД КОМАНДОЙ ===
|
||||
Перед каждой командой прочитай точный предыдущий результат, справочник кластера и реестр ошибок.
|
||||
Дважды проверь узел, пользователя, пути, службу, интерпретатор, режим, риски и откат.
|
||||
Не добавляй sudo автоматически. Учитывай фактического пользователя терминала.
|
||||
Перед спойлером напиши: Сверка с файлом ошибок и справочником кластера: CHECK пройден.
|
||||
Если CHECK не пройден, непроверенную команду не выдавай.
|
||||
|
||||
=== ФОРМАТ ОТВЕТА ===
|
||||
Сначала укажи прочитанный COMMAND_ID, STATUS, RC, факты, зарегистрированные ошибки и принятое решение.
|
||||
Затем напиши: Что делаем: <следующий конкретный шаг>.
|
||||
Ровно одну shell-команду показывай только внутри HTML details-спойлера.
|
||||
Никогда не повторяй shell-команду вне спойлера.
|
||||
Сразу под спойлером пиши: Всего команд осталось: N, включая эту.
|
||||
После каждого результата уменьшай или обоснованно пересчитывай счётчик.
|
||||
|
||||
=== БЕЗОПАСНОСТЬ КОМАНД ===
|
||||
По умолчанию выполняй read-only диагностику через homelab-chat-run.
|
||||
Запрещены heredoc, base64, непрозрачные огромные команды, секреты, опасный вложенный SSH, слепые перезапуски и неподтверждённые удаления.
|
||||
Ожидаемые диагностические ненулевые RC обрабатывай явно, не скрывая настоящий итоговый сбой.
|
||||
Изменения выполняй только после доказанной причины, оценки риска и понятного отката.
|
||||
|
||||
=== ПЕРВЫЙ ОТВЕТ ===
|
||||
Подтверди загрузку bootstrap, полного контекста, реестра ошибок и workflow contract.
|
||||
Назови последний подтверждённый COMMAND_ID текущего потока.
|
||||
Кратко изложи состояние и незакрытые ошибки.
|
||||
Сразу выдай следующую безопасную проверенную команду под спойлером и укажи остаток команд.
|
||||
Не пересказывай протокол пользователю и не проси подтверждения перед первой read-only командой.
|
||||
|
||||
SHORT_NEW_CHAT_PROMPT=Прочитай и строго выполни протокол по PROTOCOL_URL. Затем продолжи текущий аудит. Последний выданный COMMAND_ID и текущую цель я укажу ниже.
|
||||
CHANGES_MADE=NO
|
||||
|
||||
OUTPUT_END
|
||||
CHAT_OUTPUT_END
|
||||
Reference in New Issue
Block a user