docs: разобран урожай судей после подъёма канона
- перечень команд пользователя убран из architecture.md в спеки review и state-reconciliation, где ему дом: обзор успел разойтись с ними в обе стороны - README перестал дублировать деплой и статус — теперь ссылается на дом - статус «заведена ли задача под пробел» сведён в один регистр открытых вопросов - шаги tasks.py и openspec.py названы в перечне «что красит безусловно» - из спеки download-tracking сняты числа умолчаний: их дом — database.md
This commit is contained in:
@@ -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) → «Деплой».
|
||||
|
||||
Reference in New Issue
Block a user