Добавить документацию Solana PDA и ESP32-подпроект

This commit is contained in:
AidarKC
2026-05-24 19:29:42 +03:00
parent 56cd90a197
commit 74df7e2645
23 changed files with 2626 additions and 109 deletions
@@ -1,21 +0,0 @@
# Python-обвязка Telegram → Codex (упрощённый сервис)
- краткое описание фичи:
- добавлен новый упрощённый сервис `SHiNE-agent-bot-coder/py_bot_service.py`;
- сервис работает через long-polling Telegram, принимает только текст, ведёт историю в `JSONL`;
- добавлены команды `/status`, `/queue`, `/stop`, `/cancel`, `/new`, `/help`;
- systemd unit переключён на запуск Python-сервиса.
- что проверять:
- `systemctl --user status shine-agent-bot-coder` показывает `active (running)`;
- бот отвечает на `/status` одним сообщением без дублей;
- тестовый текстовый запрос получает финальный ответ от Codex;
- `/stop` корректно останавливает текущую задачу;
- `/new` переносит текущую историю в `data/history/archive`.
- ожидаемый результат:
- стабильная обработка текстовых задач без зависаний и двойной обработки;
- только один инстанс сервиса (через lock `data/py_app.lock`).
- статус:
- pending
@@ -1,26 +0,0 @@
# Heartbeat и перезапуск агента-кодера
## Краткое описание
Изменена логика Telegram-сервиса агента-кодера:
- аварийное сообщение о долгой работе отправляется только после 2 минут молчания Codex;
- при дальнейшем молчании статус повторяется каждые 2 минуты;
- добавлена команда `/restart_service` с алиасом `/restart` для перезапуска сервиса через systemd.
## Что проверить
1. Запустить долгую задачу, в которой Codex регулярно отправляет промежуточные сообщения.
2. Убедиться, что дополнительное сообщение `всё ещё выполняется` не появляется без 2 минут молчания.
3. Запустить или смоделировать задачу, где Codex молчит больше 2 минут.
4. Проверить, что бот присылает статус с общим временем работы задачи и повторяет его каждые 2 минуты молчания.
5. Отправить `/restart_service` из разрешённого Telegram-аккаунта.
6. Проверить, что сервис завершился и был поднят systemd заново.
7. Проверить, что история JSONL сохранилась и не была очищена без команды `/new`.
## Ожидаемый результат
Сервис не шумит регулярными статусами при нормальной работе Codex, но сообщает о подозрительном молчании. Команда `/restart_service` перезапускает сервис без ручного входа в консоль.
## Статус
pending
@@ -1,21 +0,0 @@
# Канальный режим агента-кодера
## Краткое описание
Сервис `SHiNE-agent-bot-coder` теперь принимает сообщения из Telegram-канала `@shine_writing`.
Сообщения Айдара (`@AidarKC` / `@aidarkc`) ставятся в очередь как задачи Codex, а ответы отправляются обратно в тот же канал. Сообщения других авторов в канале сохраняются в историю как дополнительный контекст и не выполняются как команды.
## Что проверить
- Отправить текстовое сообщение от Айдара в канал `@shine_writing`.
- Убедиться, что бот принял задачу, обработал её и ответил в этот же канал.
- Отправить сообщение от другого автора в этот канал.
- Убедиться, что бот не запускает задачу по сообщению другого автора.
- Проверить, что сообщение другого автора появилось в JSONL-истории как контекст.
## Ожидаемый результат
- Команды Айдара из канала выполняются так же, как личные сообщения.
- Ответы бота публикуются в канал.
- Сообщения других авторов сохраняются в историю, но не исполняются.
## Статус
pending
@@ -1,16 +0,0 @@
# Удаление старой Java-реализации агента-кодера
- краткое описание фичи:
Старая Java-реализация `SHiNE-agent-bot-coder` удалена, потому что рабочим вариантом сервиса является Python-скрипт `py_bot_service.py`.
- что именно проверять:
1. Gradle-проект больше не содержит подпроект `SHiNE-agent-bot-coder`.
2. Локальный systemd-сервис `shine-agent-bot-coder` запускает `py_bot_service.py`.
3. Telegram-бот принимает сообщение от Айдара и отвечает через Python-сервис.
4. Команды `/status`, `/queue`, `/new` и `/restart_service` работают как раньше.
- ожидаемый результат:
Удаление Java-кода не влияет на текущую работу Python-сервиса агента-кодера.
- статус:
`pending`
@@ -1,23 +0,0 @@
# Групповой чат агента-кодера
## Что сделано
- Сервис `SHiNE-agent-bot-coder` теперь сохраняет сообщения участников обычной Telegram-группы и supergroup как контекст.
- На сообщения других участников группы сервис отвечает в тот же чат коротким подтверждением `Получил сообщение.`, но не создаёт задачу Codex.
- При миграции обычной группы в supergroup сервис запоминает новый `chat_id` и перенаправляет ответы туда.
- Команды и задачи по-прежнему выполняются только от Айдара (`@aidarkc` / `@AidarKC`).
## Что проверять
1. Написать сообщение от другого участника в группе `@shine_writing`.
2. Убедиться, что бот ответил на него в группе коротким подтверждением получения.
3. Написать задачу от Айдара в этой же группе.
4. Убедиться, что ответ приходит в группу, а не в личные сообщения.
5. Убедиться, что после миграции group → supergroup ответы не теряются.
## Ожидаемый результат
- Чужие сообщения попадают в историю как контекст.
- Чужие сообщения получают ACK в группе, но не попадают в очередь задач.
- Сообщение Айдара создаёт задачу и получает ответ в актуальном supergroup-чате.
- Ошибка Telegram `group chat was upgraded to a supergroup chat` больше не ломает отправку ответа.
## Статус
pending