docs: разобран урожай судей после подъёма канона

- перечень команд пользователя убран из architecture.md в спеки review и
  state-reconciliation, где ему дом: обзор успел разойтись с ними в обе стороны
- README перестал дублировать деплой и статус — теперь ссылается на дом
- статус «заведена ли задача под пробел» сведён в один регистр открытых вопросов
- шаги tasks.py и openspec.py названы в перечне «что красит безусловно»
- из спеки download-tracking сняты числа умолчаний: их дом — database.md
This commit is contained in:
av
2026-08-09 19:24:59 +03:00
parent c5d62d76ee
commit 69853a96c9
8 changed files with 37 additions and 36 deletions
+13 -20
View File
@@ -35,14 +35,10 @@ Arr-стек (prowlarr/radarr/sonarr) плохо ложится на русск
## Статус
Рабочий прототип с полным сквозным путём: приём magnet → загрузка в
qBittorrent → распознавание (LLM + опционально базы метаданных
TMDB/TVDB/TVMaze) → раскладка в библиотеку хардлинками, автоматически при
уверенном результате либо через подтверждение человеком. Транспорты приёма:
REST API, веб-UI, Telegram-бот и CLI (`jellybit add`).
Из источников поддержаны magnet и `.torrent`-файл; фетч `.torrent` по обычной
ссылке — в планах. Что дальше — [tasks/ROADMAP.md](tasks/ROADMAP.md).
Рабочий прототип: сквозной путь приём → загрузка → распознавание → раскладка
работает целиком, автоматически при уверенном результате либо через
подтверждение человеком. Что уже умеет и что дальше —
[tasks/ROADMAP.md](tasks/ROADMAP.md).
## Документация
@@ -73,7 +69,8 @@ REST API, веб-UI, Telegram-бот и CLI (`jellybit add`).
Go (один статический бинарь), SQLite (`modernc.org/sqlite` + `sqlx`,
миграции `goose`), HTTP — `chi` + `html/template` + htmx, конфигурация —
TOML, логи — структурированный JSON (`slog`). Подробнее — в
TOML, логи — структурированный JSON (`slog`). Полный перечень с версиями —
[CLAUDE.md](CLAUDE.md) → «Стек»; как эти компоненты сложены —
[docs/architecture.md](docs/architecture.md).
## Конфигурация
@@ -118,16 +115,12 @@ jellybit recognize <infohash> --dry-run [--context "..."] --config ./config.toml
## Доставка
Рассчитан на домашний медиа-сервер. Артефакты репозитория — статический
бинарь (`task build`) и `Dockerfile` (упаковка в `distroless/static`). Образ
собирается целиком **локально** на control-хосте (`task image`) и едет на
сервер через `docker save`/`load` (роль `app_image` в umbar), поэтому
Go-тулчейн и `docker build` на сервере не нужны. В distroless нет shell/curl,
поэтому HEALTHCHECK зовёт сам бинарь: `jellybit healthcheck` (GET `/healthz`
по порту из конфига, exit 0/1).
Контейнер: `user 1000:1000`, порт `8080` на хост, mount `/srv/media` (единая
песочница для хардлинков) + том `/config` (ro, `config.toml`, восстановим при
деплое) + data-том `/data` (SQLite, бекапить); к qBittorrent — по сети Docker.
Рассчитан на домашний медиа-сервер. Артефакты репозитория — статический бинарь
(`task build`) и `Dockerfile`; образ собирается целиком локально на
control-хосте (`task image`) и едет на сервер через `docker save`/`load`.
Конкретная деплой-обвязка (плейбук, секреты) держится в отдельном приватном
репозитории и в комплект не входит.
Параметры запуска — сеть, пользователь, монтирования, healthcheck, — разделение
ответственности с umbar и единая песочница `/srv/media`:
[docs/architecture.md](docs/architecture.md) → «Деплой».