19 KiB
Статус проекта
Последняя проверка: 2026-09-14 Назначение документа: быстро восстановить контекст проекта для участников команды и будущих агентов.
- Telegram-бот:
0.2.2 - Telegram-бот на Synology:
0.2.1 - Backend:
0.9.0 - Frontend: не создан
Краткий итог
Репозиторий переориентирован с отдельного бота на весь проект юридической информационно-аналитической платформы. Telegram-бот выделен в инструмент рабочего окружения. Реализованы возобновляемая выгрузка документов из официального Open Data API ЦБД Минюста КР и их локальная воспроизводимая нормализация.
Поисковая система и внутренняя лаборатория оценки выдачи реализованы. Ближайшая цель — проверить собственную выдачу на практических RU/KY-запросах, разобрать оценки юристов и зафиксировать baseline. ЦБД Минюста служит источником для проверки документов и редакций, а не системой для сравнения поисковой выдачи.
Уже сделано
Telegram
- Создана супергруппа
Акылдаш. - Создан бот
help_clerk_bot. - Бот добавлен в супергруппу с необходимыми правами.
- Privacy Mode бота отключён.
- Созданы и проверены рабочие темы.
- Проверено подключение к Telegram Bot API.
- Webhook у бота не установлен; доступен режим long polling через
getUpdates.
ID тем
| Тема | message_thread_id |
Состояние |
|---|---|---|
| Общее | отсутствует | приветствие закреплено, тема закрыта |
| MVP | 2 |
подтверждено тестовым сообщением |
| Решения | 4 |
подтверждено тестовым сообщением |
| Обсуждение | 6 |
подтверждено тестовым сообщением |
| Работа с ИИ | 8 |
материалы опубликованы, тема закрыта |
| Отчеты | 37 |
экспорт проверен, тема закрыта |
Документация и правила
- Подготовлен общий план реализации в
docs/operations/telegram-workspace-plan.md. - Зафиксированы границы MVP и правила работы с данными в
docs/decisions/001-telegram-workspace-mvp.md. - Добавлены обзор всей платформы и единый индекс документации.
- В MVP не входит автоматический вызов API языковой модели.
- Анализ экспортов выполняется вручную в обычном ChatGPT.
- Telegram используется как рабочий штаб, Git/Gitea — как источник утверждённых материалов.
- Подготовлены и опубликованы краткие навыки работы с ИИ для начинающих.
- В
Общееопубликовано и закреплено приветствие с назначением тем и описанием бота.
Доступы
- Локальные доступы находятся в
credentials.json. credentials.jsonдобавлен в.gitignore.- Секреты нельзя добавлять в Git, логи, экспорты или сообщения бота.
Репозиторий и приложение
- Реализован бот-секретарь версии
0.2.2без внешних Python-зависимостей. - Код бота выделен из корня репозитория в
tools/telegram-bot. - Сообщения и полные Telegram-метаданные сохраняются в SQLite.
- Добавлены команды
/help,/statusи/export. - Экспорт доступен только владельцу, указанному в
TELEGRAM_OWNER_ID. - Первый
/exportохватывает всю сохранённую тему, последующие начинаются после последней успешно созданной отсечки. - Отчёты публикуются в закрытой теме
Отчеты(message_thread_id=37). - Исходное обсуждение завершается заметной отсечкой со ссылкой и хэштегом отчёта.
- Локальный Git-репозиторий восстановлен и привязан к Gitea.
- Репозиторий организован как основа всего проекта, а не отдельного бота.
- Бот развёрнут в Container Manager на Synology; автозапуск после перезапуска менеджера проверен.
- Реализован backend-загрузчик ЦБД Минюста КР версии
0.2.2без внешних зависимостей. - Загрузчик сохраняет метаданные, редакции RU/KY и изображения, а прогресс — в SQLite.
- Пилотная выгрузка двух документов и возобновление без повторного скачивания проверены на живом API.
- Реализован backend-нормализатор версии
0.2.2без внешних зависимостей. - Нормализатор создаёт канонические метаданные, безопасный HTML, чистый текст и адресуемые фрагменты RU/KY.
- SQLite-манифест обеспечивает возобновление, повтор ошибок и пропуск неизменившихся документов.
- Полный проход завершён: 209 958 документов нормализованы без ошибок.
- Контрольная выборка RU/KY прошла проверки текста, фрагментов, ID и SHA-256.
- Добавлены строгий mapping и атомарный Bulk NDJSON-экспорт для OpenSearch.
- На предыдущей итерации использовались Excel/PDF-бланки юридической проверки; текущий процесс опирается на relevance set и внутреннюю лабораторию.
Развёртывание
- Бот постоянно запущен на Synology в контейнере
akyldash-bot. - Используется официальный образ
python:3.11-slimи long polling. - Контейнер работает без root, с read-only root filesystem и политикой
unless-stopped. - Доступ к Telegram Bot API идёт через отдельный закрытый прокси-контейнер без опубликованных наружу портов.
- Код, закрытый env-файл и SQLite хранятся в
/volume1/docker/akyldash.
Пока не сделано
Развёртывание и сопровождение
- Docker-конфигурация развёртывания не хранится в репозитории.
- Не настроен CI/CD.
Хранилище
- PostgreSQL не подключён; первая версия использует SQLite.
- Не утверждена окончательная схема PostgreSQL.
- Не определены сроки хранения сообщений, вложений и экспортов.
Функции бота
- Скачивание файлов вложений; сейчас сохраняются их Telegram-метаданные.
- Ручная пометка отдельных сообщений для экспорта.
- Формирование готовой инструкции для ручной загрузки в ChatGPT.
- Возврат отчёта пользователя в Telegram.
Группа и рабочий процесс
- Не проверены сценарии закрытия темы
MVPпосле фиксации состава первой версии. - Не настроены уведомления Gitea.
- Не проведён полный пользовательский тест: сообщение → сохранение → экспорт → анализ в ChatGPT → возврат отчёта.
Готовность поиска к frontend
- Реализована внутренняя лаборатория для просмотра и оценки фактической выдачи OpenSearch; пилот с юристами ещё не проведён.
- Не завершена независимая юридическая проверка всех 50 запросов relevance set v1; спорные строки нельзя включать в baseline.
- Не зафиксированы неизменяемая копия подтверждённого relevance set и baseline
Recall@10/MRR@10. - Не пройден финальный readiness gate: обновление корпуса, переиндексация, проверка выдачи и API-сценарии для RU, KY и одноязычных актов.
Важные неизвестные
По мере реального использования нужно принять решения по следующим вопросам:
- Адрес и параметры PostgreSQL для разработки и Synology.
- Правила хранения и удаления сообщений и вложений.
- Нужен ли webhook после постоянного развёртывания; первая версия работает через long polling.
Следующий этап
Проверка собственной поисковой выдачи
- Подготовить согласованный RU/KY relevance set: фиксировать потребность
запроса и подтверждённые
document_code, не ориентируясь на порядок выдачи. - Проверить практические запросы во внутренней лаборатории
/review, сохранить снимки и оценки фактических результатов OpenSearch. - Разобрать ошибки ранжирования, сохранить baseline и повторить ту же проверку после изменений.
- Затем пройти readiness gate issue #21 для корпуса, индекса и Search API перед проектированием публичного frontend.
История изменений статуса
2026-09-12
- Внутренняя лаборатория оценивает фактическую выдачу собственного OpenSearch; ЦБД Минюста используется только для проверки источников и редакций актов.
- Backend
0.8.3; закрытая внутренняя лаборатория готова к пилоту.
2026-09-06
- Подготовлены бланки независимой юридической проверки relevance set v1 для русского и кыргызского языков и инструкция для юриста.
- Ближайшим этапом зафиксированы юридическая верификация, baseline качества поиска и финальный readiness gate перед frontend.
2026-08-18
- Оценщик поиска использует
cross_fieldsдля совместного сопоставления названия и текста документа. - На размеченном наборе из 50 запросов Recall@10 вырос с
0.23до0.30, MRR@10 — с0.1854до0.2272. - Версия backend обновлена до
0.5.1.
2026-08-14
-
Добавлены шаблон relevance set v1 и воспроизводимый расчёт Recall@K/MRR@K.
-
Версия backend обновлена до
0.5.0. -
Полный локальный индекс содержит 56 295 965 фрагментов и успешно отвечает на RU/KY-запросы.
-
Добавлены атомарный checkpoint и безопасное продолжение прерванной загрузки существующего индекса.
-
Добавлены retry/backoff для временных HTTP-сбоев и подробные ошибки Bulk API.
-
Ошибки чтения JSON теперь содержат точный путь и повторяются при временном сбое.
-
Версия backend обновлена до
0.4.1.
2026-08-13
- Добавлен локальный одноузловой OpenSearch с
analysis-icuбез Dashboards. - Добавлена прямая потоковая загрузка корпуса пакетами до 25 МБ.
- Версия backend обновлена до
0.4.0.
2026-08-13
- Подтверждена полная успешная нормализация 209 958 загруженных документов.
- Единственный отсутствующий документ
6повторно не отдан API Минюста. - Добавлены mapping фрагментов и потоковый экспорт для OpenSearch Bulk API.
- Версия backend обновлена до
0.3.0.
2026-08-12
- Нормализатор запрещает пересекающиеся каталоги источника и результата, восстанавливает прерванную публикацию и отбрасывает некорректные URL.
- Версия backend обновлена до
0.2.2. - Загрузчик пересоздаёт временный список документов на текущей странице не только после HTTP 404, но и после исчерпания повторов запроса списка.
- Версия backend обновлена до
0.2.1.
2026-08-10
- Добавлена первая версия воспроизводимой нормализации локального архива ЦБД.
- Добавлены атомарная публикация результатов, контрольные суммы, карантин ошибок и терминальный прогресс.
- Версия backend обновлена до
0.2.0.
2026-08-06
- Добавлен терминальный прогрессбар со скоростью и расчётным временем завершения.
- Обработка HTTP 429 учитывает рекомендованную сервером задержку
Retry-After. - Добавлено автоматическое восстановление после истечения серверного списка документов.
- Версия backend обновлена до
0.1.2.
2026-08-05
- Создана область
backend/ingestionдля получения правовых источников. - Реализована возобновляемая выгрузка ЦБД Минюста КР версии
0.1.0. - Проверены двуязычные редакции, изображения, SQLite-манифест и повторный запуск.
2026-08-03
- Репозиторий перестроен под весь проект юридической платформы; Telegram-бот перенесён в
tools/telegram-bot. - Созданы обзор продукта и структурированный индекс документации; будущие каталоги решено создавать по фактическим задачам.
- Закрытые юридические материалы решено хранить отдельно от основного репозитория.
- Версия Telegram-бота обновлена до
0.2.2из-за изменения структуры запуска. - Экспорт без параметров переведён с периода в семь дней на диапазон после предыдущей отсечки.
- Бот развёрнут в Container Manager на Synology; автозапуск проверен перезапуском.
- В теме
Работа с ИИопубликована первоначальная библиотека практик и отдельный материал о безопасной работе с Codex. - В
Общееопубликовано и закреплено приветствие; тема закрыта для сообщений. - Локальный файл доступов переведён из
credentials.txtвcredentials.json.
2026-08-02
- Экспорт ограничен Telegram ID владельца бота.
- Технические ответы на корневое сообщение темы исключены из Markdown.
- Экспорт перенесён в тему
Отчеты, добавлены отсечки и навигационные хэштеги. - Проверена живая публикация отчёта и отсечки через Telegram Bot API.
- Бот версии
0.2.0развёрнут в Container Manager на Synology. - Версия приложения обновлена до
0.2.0.
2026-08-01
- Восстановлена связь локального каталога с репозиторием Gitea.
- Реализован бот-секретарь версии
0.1.0с SQLite и Markdown-экспортом. - Проверены токен
help_clerk_botи доступ к супергруппеАкылдаш.
2026-07-31
- Создана супергруппа и добавлен бот.
- Отключён Privacy Mode.
- Определены ID тем:
2,4,6,8. - Подтверждено отсутствие webhook.
- Зафиксировано, что код бота и хранилище ещё не реализованы.
Акылдаш · Telegram-бот v0.2.2 · Backend v0.9.0 · Frontend — не создан