[2026-09-22] eagle: personal/plans/lampac-pidtor-503-fix.md personal/plans/watchlist-tmdb-missing-marker.md personal/tech/lampac-deployment.md personal/tech/lampac-torrserver.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-22 19:30:17 +06:00
1 parent f7c06d2e41
commit 9e4713f81c
4 files changed
+232 -101

No files matched your search

+70 -8
View File
@@ -707,24 +707,40 @@ GET /ts/torrents -> 404 (метода нет)
GET /ts/settings -> 403 (нужна авторизация ts:tspass)
```
#### 🔴 Вероятная причина пустого списка у Alex: `min_sid: 15`
#### 🔴🔴 РЕАЛЬНАЯ причина пустого списка у Alex: `redapi` (найдено 2026-09-22)
**Не `min_sid`, не TorrServer.** Причина — `redapi` в секции `PidTor`:
```json
"PidTor": { "enable": true, "enabled": false, "redapi": "http://jac.red",
"PidTor": { "enable": true, "enabled": false,
"redapi": "http://jac.red", ← ДОЛЖНО БЫТЬ ИМЕННО ТАК
"min_sid": 15, "torrs": null, "auth_torrs": null }
```
Раздачи с числом сидов **< 15 отсекаются**. Редкие/старые фильмы дадут пусто
именно из-за этого. Проверка по конкретному фильму:
Если `redapi` переключить на локальный JacRed lampac (`http://127.0.0.1:9118`),
PidTor падает на **всех** фильмах: локальный JacRed отдаёт формат БЕЗ поля
`info`, а `PidTor/Controller.cs:97` читает `torrent.info.sizeName` → NPE → HTTP 500.
```bash
curl -s "http://127.0.0.1:9118/lite/pidtor?title=<название>&year=<год>"
docker logs lampac 2>&1 | grep -i pidtor
```
НАШ JacRed → поля без "info"
jac.red → + info{quality, voices, sizeName, name, originalname, relased}
PidTor ждёт → torrent.info.sizeName
```
Проверка: `curl -s -o /dev/null -w '%{http_code}' \
"http://127.0.0.1:9118/lite/pidtor?title=Гамнет&year=2025"` → должно быть **200**.
Полный разбор: [[personal/plans/lampac-pidtor-503-fix]]
⚠️ **Вторичный фильтр — `min_sid: 15`** (сток). Сиды < 15 отсекаются; свежие
фильмы часто имеют 1–37. Понижение — решение Alex (низкий sid = медленнее).
⚠️ **README PidTor устарел:** там написано «пункт появляется только если заданы
`torrs`/`auth_torrs`, иначе список пустой». Фактически при `null` `/lite/pidtor`
отдал 8435 байт с рабочей раздачей. Верить факту, не README.
отдаёт рабочие раздачи. Верить факту, не README.
⚠️ **`enabled: false` — НЕ выключатель.** Это поле стоит `false` у всех 86
модулей (Filmix, HDVB, Kinobase, PidTor…). Смотреть только `enable`.
### `vast.js` — НЕ виновник (проверено сырьём)
@@ -776,6 +792,52 @@ TorrServer**, а не гасить онлайн. План откачен, `init.
Док оставлен как справка, где лежит выключатель; применять только по прямому
указанию Alex.
### 📄 Текущее состояние `$H/config-module/init.conf` (2026-09-22, вечер)
Это единственный меняемый конфиг lampac. Полное содержимое:
```json
{
"BaseModule": {
"SkipModules": ["Tracks","Transcoding","WebLog","CacheMedia",
"ForkPlayerXML","MsxNative","Potok","TelegramAuth",
"TelegramAuthBot"]
},
"LampaWeb": { "initPlugins": { "catalog": true } },
"PidTor": { "enable": true, "redapi": "http://jac.red" }
}
```
**Что здесь важно:**
| Ключ | Значение | Почему |
|---|---|---|
| `LampaWeb.initPlugins.catalog` | `true` | включает модуль Catalog — без него «Мой список» не виден |
| `PidTor.enable` | `true` | модуль торрентов активен |
| `PidTor.redapi` | `http://jac.red` | 🔴 **НЕ менять на локальный** — см. выше, ломает PidTor |
⚠️ `online: false` **отсутствует намеренно** — Alex запретил гасить онлайн.
**Бэкапы (2 шт., оба на HDD рядом с конфигом):**
```
$H/config-module/init.conf.bak-pidtor-20260922-191505
$H/config-module/init.conf.bak-20260922-112154 (в $H/, от прошлой правки)
```
**Порядок безопасной правки (правило Alex «коммит ДО → правка → заливка → проверка»):**
```bash
H=/srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/lampac
cp $H/config-module/init.conf $H/config-module/init.conf.bak-$(date +%Y%m%d-%H%M%S)
# правим локально, scp обратно
python3 -c "import json; json.load(open('$H/config-module/init.conf')); print('JSON ok')"
docker restart lampac
```
⚠️ Применить конфиг без рестарта нельзя. Рестарт = ~35 сек недоступности плеера.
Раздачи в TorrServer при рестарте сохраняются (`data/ts/` не трогается).
## 🚀 Деплой генератора на Кра́кен (проверено 2026-09-22)
### 🔴🔴 Питфолл: `load_env()` искал `.env` только по Mac-пути