[2026-09-22] eagle: personal/plans/lampac-watchlist-plugin.md personal/tech/lampac-deployment.md
This commit is contained in:
1 parent
0191154384
commit
5e85c81767
2 files changed
+143
-1
No files matched your search
@@ -7,7 +7,7 @@ related:
|
||||
- '[[family/projects/watchlist-sync]]'
|
||||
- '[[family/projects/watchlist-automation]]'
|
||||
- '[[family/documents/movies-watchlist]]'
|
||||
status: cub-sections-blocked
|
||||
status: cub-sections-pending
|
||||
tags:
|
||||
- lampac
|
||||
- lampa
|
||||
@@ -44,6 +44,36 @@ updated: '2026-09-22'
|
||||
> отдаёт все поля: 352/352 с числовым `tmdb_id`**. Родной CUB не тронут.
|
||||
> Осталась приёмка глазами на ТВ.
|
||||
>
|
||||
> **Обновление 2026-09-22 (четвёртая сессия): 🔴🔴 НАЙДЕНА ИСТИННАЯ ПРИЧИНА «ЗДЕСЬ ПУСТО» — КИРИЛЛИЦА В КЛЮЧЕ КАТАЛОГА.**
|
||||
> Все предыдущие фиксы (числовой `tmdb_id`, права, macOS-tar) были **не той причиной**.
|
||||
> `tcpdump` на Кра́кене при клике на ТВ показал реальный запрос:
|
||||
> `GET /catalog/card?plugin=%D0%9C%D0%BE%D0%B9%20%D1%81%D0%BF%D0%B8%D1%81%D0%BE%D0%BA&uri=... → 400 Bad Request`.
|
||||
> **`plugin=Мой список`** — кириллица. `ModInit.goInit` строки 51-52 чистит имя регуляркой
|
||||
> `[^a-z0-9\-]`, то есть **вырезает всю кириллицу целиком** → `""` → `File.Exists("sites/.yaml")` = false →
|
||||
> fallback `FindSiteByDisplayName("")` тоже мимо (сравнивает уже с пустой строкой) → `null` →
|
||||
> `BadRequest("init not found")` → **400** → «Здесь пусто».
|
||||
> **ФИКС:** явный `plugin: watchlist` в `watchlist.yaml` (переопределяет ключ по
|
||||
> `ApiController.cs:136`); `displayname: Мой список` остаётся надписью в UI. Ключ каталога стал `watchlist`.
|
||||
> Проверено: `plugin=Мой список` → **400**, `plugin=watchlist` → **200** с полными данными.
|
||||
> 🔴 **Урок диагностики:** проверять карточку curl'ом надо ТЕМ ЖЕ ключом, который шлёт ТВ
|
||||
> (я подставлял латиницу руками → 200 → ложный вывод «проблема в клиенте»). Детали —
|
||||
> [[personal/tech/lampac-deployment]] раздел «🔴🔴 ГЛАВНАЯ ПРИЧИНА».
|
||||
>
|
||||
> **⚠️ ЗАДАЧА СЛЕДУЮЩЕЙ СЕССИИ (требование Alex, не закрыто):** секции должны быть
|
||||
> **ВНУТРИ CUB без ручного переключения источника**. Дословно: «надо блядь добавить в CUB
|
||||
> список новые секции а не ручное блядь переключение!». Хук `Listener.follow('menu')` +
|
||||
> `e.abort()` в `plugin.js:59` молчит при активном CUB (`Api.getCatalog()` читает манифест
|
||||
> текущего источника). Решение — дорисовывать ряды в корень CUB через
|
||||
> `Lampa.Listener.follow('activity')` либо патч рендера главной.
|
||||
>
|
||||
> **Обновление 2026-09-22 (четвёртая сессия, ранее): ✅ ЧИСЛОВОЙ `tmdb_id` В КАРТОЧКАХ.**
|
||||
> 352 из 352 карточек отдают `tmdb_id` числом, `source`, `runtime`, `vote_average`, жанры.
|
||||
> Механика: `ModInit.cs:285 nodeValue` возвращает любой `JValue` СТРОКОЙ → в `card_args`
|
||||
> нужен `format: "long.TryParse(value, out long v) ? v : 0"` (`format` = CSharpEval,
|
||||
> `CatalogNodeValue(value, host)`). Кэш `catalog:card:{plugin}:{uri}` живёт в ПАМЯТИ и
|
||||
> переживает `docker restart` — после правки данных обязателен рестарт И проверка на
|
||||
> НЕзакэшированном uri. Детали — [[personal/tech/lampac-deployment]].
|
||||
>
|
||||
> **Обновление 2026-09-22 (третья сессия): ✅ КАРТОЧКА ПОЧИНЕНА ОКОНЧАТЕЛЬНО.**
|
||||
> «Здесь пусто» давало отсутствие **числового** `tmdb_id`: `plugin.js` делает
|
||||
> `if(json.tmdb_id)`, а `ModInit.cs:285` возвращает любое `JValue` СТРОКОЙ.
|
||||
|
||||
Reference in new issue
Block a user