WEB board

всеканоны и докиворкеры↗ iOS↗ Легаси
WEB-047 · Дефект · Видео · web

Дедуп видео скрыт от пользователя: движок отдаёт разбор из кэша, продукт этого не показывает

Парковка P1 · важно ведёт: backup-opus
Суть
1. Суть одной фразой: Дедуп видео скрыт от пользователя (движок отдаёт разбор из кэша, продукт не показывает), плюс найденная cross-owner утечка кэша.
2. Где мы сейчас (13.09.2026): видео-фича выключена в первом релизе решением владельца (R4.1 #4, public-роуты deny/404); engine- и app-половины на проде не раскатаны; приёмка ACC047B = NO-GO из-за утечки (owner не доходит в engine, общий workspace_id → B может прочесть кэш A).
3. Хронология: 19.08 найдено (v4-80e8b5a); 20.08 videofix6 (части 1/3, тест 8/8) + посадка 25 (v4-c8c3638); 26.08 волна web047 (owner scope в ключе, 55/55), закоммичено 563e2d8b; 29.08 ACC047B NO-GO (cross-owner), заряжен WEB047C; 03.09 триаж → волна 1516; 05.09 boardtriage → parked.
4. Карта документов и кода: engine /home/ubuntu/nc-video-engine (ветка web047-owner-cache 4c517e41, на Pi не раскатана); app worktree wt-l59-gdiag; отчёты VIDEOENGINE-REPORT.md, ACC047B-REPORT.md.
5. Остаток: владелец — решить, когда включать видео (сейчас off); волна — завершить WEB047C (owner в ключе, fail-closed, adversarial A/B); координатор — посадка после GO.
6. Критерий закрытия: видео включено + прогон на max не может получить кэш budget и наоборот + cross-owner промах доказан.

---

## история (тело до 13.09.2026)

Найдено 19.08 на 24-й (v4-80e8b5a) по прямому вопросу владельца. ДОКАЗАНО: три прогона ОДНОГО файла (sha 11338129…) дали побайтно одинаковый разбор — транскрипт 1775 символов, все три подписи сцен, 5 строк OCR, 5 буллетов overview и сами кадры base64 совпали; различий всего 7 и все они — идентификаторы, время и эхо профиля. РЕШАЮЩИЙ ПРУФ: прогон на профиле budget отчитался providerActual=ensemble_merge с двумя VLM, хотя планировщик движка (ingest-routing-planner.ts:22-30) для budget задаёт primaryProvider=none, allowModelBackedAnalysis=false, allowEnsemble=false — ансамбль там невозможен, он пришёл из сохранённого артефакта прогона на ДРУГОМ профиле. МЕХАНИЗМ: lib/content-analysis-cache.ts, ключ артефакта = ТОЛЬКО sha256 содержимого (buildContentArtifactPath), ни профиль, ни язык, ни storyboard в ключ не входят; ingest-service.ts:605 разрешает кэш для managed (не BYOK, не local-private) — наши прогоны именно такие; при попадании пишется content_dedup_hit и routing_summary.cache_state=content-hit, и переносятся recognition_provider/recognition_model. ПОЧЕМУ НЕ ВИДНО: приложение разбирает routing_summary (cloud/contract.ts:194,362) и кладёт в configJson.cloudIngest.routingSummary (cloud/finalize.ts:192), но GET /api/video/pipeline/run/[runId] (route.ts:292-330) configJson наружу НЕ отдаёт; собственное поле processing.cacheHit всегда null, потому что относится к другому кэшу (только URL-ветка, buildVideoRecognitionCacheKey возвращает null для загруженного файла). Косвенно: от отправки до готовности 4.1 с на 21-секундный 4K-ролик с транскриптом, 3 сценами, OCR и двумя VLM.

## 20.08 ~16:00 волна videoengine (A1): ФИКС ГОТОВ, НЕ ЗАДЕПЛОЕН
Корень: ключ кэша движка не включал профиль качества — запрос на максималках получал отчёт с минималок. Починено: профиль вшит в ключ. Негативный тест: ломаем ключ — 2/2 теста падают; с фиксом 2/2 зелёные. Миграция накопленных записей ленивая, ничего не теряется. Правки в /home/ubuntu/nc-video-engine на A1 (НЕ git-репо — завести!). Отчёт: A1 ~/waves/VIDEOENGINE-REPORT.md. Осталось: деплой на Pi :5190 + живой пруф на проде.

## 20.08 ~18:40: живая кэш-проверка НЕ завершена. Pass 2: первый прогон ушёл на Авто (селектор качества найден поздно), повтор упёрся в лимит импортов 1/1 (тариф поднят до teamVoice). Pass 3 (qascreens5) гоняет Глибоко + повтор из кэша — вердикт будет в QA-SCREENS-REPORT-20260820.md.

## 2026-08-23 BOARDSWEEP: IN_PROGRESS-LIVE
- Evidence: updatedAt=2026-08-20T16:55:19.574Z, older than 24h, but the videoengine workstream/process remains present and the body says deployment/live proof is the active remainder. No status change.
- buildFixed: v4-c8c3638; canonical: v4-081ff4fb5 / 081ff4fb5f6110f8001daec7ed910ccef2e395dc.
- Status preserved by sweep: in_progress.

## ДЛЯ НУЛЕВОГО АГЕНТА (обновлено 2026-09-05 UTC)
- **Суть одной строкой:** Дедуп видео скрыт от пользователя: движок отдаёт разбор из кэша, продукт этого не показывает
- **Текущее состояние:** статус: parked; Найдено 19.08 на 24-й (v4-80e8b5a) по прямому вопросу владельца. ДОКАЗАНО: три прогона ОДНОГО файла (sha 11338129…) дали побайтно одинаковый разбор — транскрипт 1775 символов, все три подписи сцен, 5 строк OCR, 5 буллетов overview и сами кадры base64 совпали; различий всего 7 и все они — идентифи… | 20.08 ~16:00 волна videoengine (A1): ФИКС ГОТОВ, НЕ ЗАДЕПЛОЕН | Корень: ключ кэша движка не включал профиль качества — запрос на максималках получал отчёт с минималок. Починено: профиль вшит в ключ. Негативный тест: ломаем ключ — 2/2 теста падают; с фиксом 2/2 зелёные. Миграция накопленных записей ленивая, ничего не теряется. Правки в /home/ubuntu/nc-video-en… | 20.08 ~18:40: живая кэш-проверка НЕ завершена. Pass 2: первый прогон ушёл на Авто (селектор качества найден поздно), повтор упёрся в лимит импортов 1/1 (тариф поднят до teamVoice). Pass 3 (qascreens5) гоняет Глибоко + повтор из кэша — вердикт будет в QA-SCREENS-REPORT-20260820.md. | - Evidence: updatedAt=2026-08-20T16:55:19.574Z, older than 24h, but the videoengine workstream/process remains present and the body says deployment/live proof is the active remainder. No status change. | videofix6 20.08: части 1 и 3 закрыты — состояние кэша теперь видно в ответе прогона, и добавлен forceReanalyze (принудительный свежий разбор) в POST /api/video/pipeline/run. Тест analysisCacheVisibility.test.ts 8/8. ОСТАЁТСЯ часть 2: профиль/режим в КЛЮЧ артефакта — это правка движка (ключ строит… | 25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=true, posture=enforceready, failures=[]. Ограда переприменена, канон проштампов… | [A1 12:48 Фабл] Триаж 03.09 (owner: «чего они ждут — срочно принимайте, сажайте»): ⚠️ приватность: app-коммиты круга C (ab432cd5) потеряны; ENGINE-часть жива (ветка web047-owner-cache 4c517e41 в /home/ubuntu/nc-video-engine, на Pi не раскатана) → волна 1516 (app+engine сквозняком).
- **Кто работал:**
- 2026-08-19T23:36:20.102Z — backup-opus — videofix6 20.08: части 1 и 3 закрыты — состояние кэша теперь видно в ответе прогона, и добавлен forceReanalyze (принудительный свежий разбор) в POST /api/video/pipeline/run. Тест analysisCacheVisibility.test.ts 8/8. ОСТА
- 2026-08-20T00:36:19.919Z — backup-opus — 25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=tr
- 2026-09-03T07:18:45.720Z — Fable — [A1 12:48 Фабл] Триаж 03.09 (owner: «чего они ждут — срочно принимайте, сажайте»): ⚠️ приватность: app-коммиты круга C (ab432cd5) потеряны; ENGINE-часть жива (ветка web047-owner-cache 4c517e41 в /home/ubuntu/nc-video-eng
- 2026-09-05T17:35:28.601Z — fable-coordinator — [2026-09-05 17:40Z] Ревизия доски (волна 2040 boardtriage, M1, luna): статус → parked. Основание: нет активности с 2026-08-29; последний найденный фрагмент ACC047B NO-GO. Если работа жива — верни статус и напиши в тикет,
- **Ветки/бандлы/отчёты:** ~/waves/VIDEOENGINE-REPORT.md.; sha: 80e8b5a, 11338129, 20260820, c8c3638, 081ff4fb5, 081ff4fb5f6110f8001daec7ed910ccef2e395dc, ab432cd5, 4c517e41
- **KNOWN ISSUES / ТРАБЛШУТИНГ:**
- 20.08 ~16:00 волна videoengine (A1): ФИКС ГОТОВ, НЕ ЗАДЕПЛОЕН
- Корень: ключ кэша движка не включал профиль качества — запрос на максималках получал отчёт с минималок. Починено: профиль вшит в ключ. Негативный тест: ломаем ключ — 2/2 теста падают; с фиксом 2/2 зелёные. Миграция накопленных записей ленивая, ничего не теряется. Правки в /home/ubuntu/nc-video-en…
- 20.08 ~18:40: живая кэш-проверка НЕ завершена. Pass 2: первый прогон ушёл на Авто (селектор качества найден поздно), повтор упёрся в лимит импортов 1/1 (тариф поднят до teamVoice). Pass 3 (qascreens5) гоняет Глибоко + повтор из кэша — вердикт будет в QA-SCREENS-REPORT-20260820.md.
- - buildFixed: v4-c8c3638; canonical: v4-081ff4fb5 / 081ff4fb5f6110f8001daec7ed910ccef2e395dc.
- videofix6 20.08: части 1 и 3 закрыты — состояние кэша теперь видно в ответе прогона, и добавлен forceReanalyze (принудительный свежий разбор) в POST /api/video/pipeline/run. Тест analysisCacheVisibility.test.ts 8/8. ОСТАЁТСЯ часть 2: профиль/режим в КЛЮЧ артефакта — это правка движка (ключ строит…
- 25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=true, posture=enforceready, failures=[]. Ограда переприменена, канон проштампов…
- [2026-09-05 17:40Z] Ревизия доски (волна 2040 boardtriage, M1, luna): статус → parked. Основание: нет активности с 2026-08-29; последний найденный фрагмент ACC047B NO-GO. Если работа жива — верни статус и напиши в тикет, какая волна её ведёт.
- **Эволюция:**
- 2026-08-19 → videofix6 20.08: части 1 и 3 закрыты — состояние кэша теперь видно в ответе прогона, и добавлен forceReanalyze (принудительный свежий разбор) в POST /api/video/pipeline/run. Тест analysisCacheVisibility.test.ts 8/8. ОСТАЁТСЯ часть 2: профиль/режим в КЛЮЧ артеф
- 2026-08-20 → 25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=true, posture=enforceready, failures=[]. О
- 2026-09-03 → [A1 12:48 Фабл] Триаж 03.09 (owner: «чего они ждут — срочно принимайте, сажайте»): ⚠️ приватность: app-коммиты круга C (ab432cd5) потеряны; ENGINE-часть жива (ветка web047-owner-cache 4c517e41 в /home/ubuntu/nc-video-engine, на Pi не раскатана) → волна 1516 (a
- 2026-09-05 → [2026-09-05 17:40Z] Ревизия доски (волна 2040 boardtriage, M1, luna): статус → parked. Основание: нет активности с 2026-08-29; последний найденный фрагмент ACC047B NO-GO. Если работа жива — верни статус и напиши в тикет, какая волна её ведёт.
- Найдено 19.08 на 24-й (v4-80e8b5a) по прямому вопросу владельца. ДОКАЗАНО: три прогона ОДНОГО файла (sha 11338129…) дали побайтно одинаковый разбор — транскрипт 1775 символов, все три подписи сцен, 5 строк OCR, 5 буллетов overview и сами кадры base64 совпали; различий всего 7 и все они — идентифи…
- 20.08 ~16:00 волна videoengine (A1): ФИКС ГОТОВ, НЕ ЗАДЕПЛОЕН
- 20.08 ~18:40: живая кэш-проверка НЕ завершена. Pass 2: первый прогон ушёл на Авто (селектор качества найден поздно), повтор упёрся в лимит импортов 1/1 (тариф поднят до teamVoice). Pass 3 (qascreens5) гоняет Глибоко + повтор из кэша — вердикт будет в QA-SCREENS-REPORT-20260820.md.
- 2026-08-23 BOARDSWEEP: INPROGRESS-LIVE
- videofix6 20.08: части 1 и 3 закрыты — состояние кэша теперь видно в ответе прогона, и добавлен forceReanalyze (принудительный свежий разбор) в POST /api/video/pipeline/run. Тест analysisCacheVisibility.test.ts 8/8. ОСТАЁТСЯ часть 2: профиль/режим в КЛЮЧ артефакта — это правка движка (ключ строит…
- 25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=true, posture=enforceready, failures=[]. Ограда переприменена, канон проштампов…
- **Следующий шаг:** Найдено 19.08 на 24-й (v4-80e8b5a) по прямому вопросу владельца. ДОКАЗАНО: три прогона ОДНОГО файла (sha 11338129…) дали побайтно одинаковый разбор — транскрипт 1775 символов, все три подписи сцен, 5 строк OCR, 5 буллетов overview и сами кадры base64 совпали; различий всего 7 и все они — идентифи… | 25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=true, posture=enforceready, failures=[]. Ограда переприменена, канон проштампов…
Чем закрывается (приёмка)
1) Пользователь видит, что результат взят из кэша (поле в ответе run и отметка в UI/PDF). 2) Ключ кэша учитывает профиль/режим — прогон на max не может получить артефакт, снятый на budget, и наоборот. 3) Есть способ запросить свежий разбор (принудительный re-run без кэша).
Доказательства
[2026-08-26 09:25Z] Волна web047: дедуп видео сделать явным (пометка «из ранее разобранного» + время исходного разбора, опция принудительного свежего разбора). Тарификацию НЕ менять. ⭐ Обязательный негатив: дедуп не отдаёт разбор чужого пользователя/тенанта.
[2026-08-26 10:02Z] КАРТА ДЛЯ НУЛЕВОГО АГЕНТА (как войти в задачу с нуля):
Бокс A1: ssh a1nc. Родительское дерево /home/ubuntu/waves/wt-l40 (из него делаются worktree: git -C /home/ubuntu/waves/wt-l40 worktree add <путь> <ветка>). Запуск работника: ~/codex-a1.sh exec -m gpt-5.6-luna -c model_reasoning_effort=xhigh --dangerously-bypass-approvals-and-sandbox "$(cat <бриф>)"; работа держится в tmux (tmux ls), логи /home/ubuntu/waves/<имя>-codex.log, отчёты /home/ubuntu/waves/<ИМЯ>-REPORT.md, готовность = маркер-ФАЙЛ <ИМЯ>_DONE (не строка в отчёте!).
Ветка web047, worktree wt-web047. Суть: при повторной загрузке того же видео отдаётся кэшированный разбор, но пользователю это не показывается — он не понимает, почему результат мгновенный и не учитывает новые настройки. Надо пометить результат как взятый из ранее разобранного (с временем исходного разбора) и дать принудительный свежий разбор. ⚠️ Тарификацию НЕ менять. ⭐ Обязательный негатив: дедуп не должен отдать разбор ЧУЖОГО пользователя/тенанта.
ПРАВИЛА ДОМА: (1) приёмку делает НЕ автор и НЕ прежний приёмщик, со СВОИМИ новыми тестами и обязательным НЕГАТИВНЫМ тестом (проверка, которая всё пропускает, ничего не стоит); (2) отсутствие ошибок != фича жива, нужен сквозной пруф; (3) починка одного слоя != починка фичи; (4) правило 10 — catch без лога и маячка запрещён; (5) монетарные файлы и цены не трогать без отдельного решения; (6) прод/деплой/платные вызовы — только по явному разрешению.

[2026-08-26 14:35Z] ХЕНДОФФ ПОД КОМПАКТ: полное состояние в /Users/annakorin/Downloads/HANDOFF-COMPACT-2026-08-26.md. ⚠️ АВАРИЯ A1 (с ~09:30Z): бокс не пускает по ssh. Волна по этому тикету была запущена на A1 и её состояние НЕИЗВЕСТНО до восстановления. Бриф сохранён — волна перезапускается той же постановкой. Доказано: диск НЕ полон (74%, свободно 52ГБ), IP НЕ забанен (отказ и с M1, и с Pi), инстанс RUNNING, консоль гипервизора отвечает мгновенно; версия — повреждение ФС после жёсткой перезагрузки. Работа на диске не потеряна.

WEB047 закрыт в коде двух безопасных worktree: `/home/ubuntu/waves/wt-l59-gdiag` (app, `gdiag-l62`) и `/home/ubuntu/waves/wt-l59-gdiag-engine` (engine, `web047-owner-cache`).

Причина: engine решал cache hit по содержимому, но пользовательский слой не показывал `cache_state` и время исходного разбора. Кроме того, прежняя защита не имела owner scope, а force-флаг мог остаться только метаданными.

Сделано:

- `cache_state` и `cached_at` проходят engine → webhook → run GET → viewer/report/PDF;
- пользователь видит «Показан прежний разбор; впервые сделан …» и кнопку «Разобрать заново»;
- `forceReanalyze` пропускает app clone cache, `force_refresh` пропускает engine artifact lookup и запускает provider заново;
- cache key engine учитывает `owner + content SHA + analysis variant`;
- старые ownerless artifacts/DB rows не выдаются автоматически;
- добавлены постоянные проверки same-owner hit, forced miss/provider call и cross-owner miss.

Проверки: engine 4/4; app WEB047-набор 55/55; engine scoped tsc чистый. App scoped tsc остаётся с известным baseline-шумом вне WEB047; `next build` не запускался; прод не трогался.

[записал координатор: с A1 нет доступа к доске, блок перенесён из отчёта волны]

---
## 2026-08-29 02:20Z — вымывка доски: работа волны 26.08 НАЙДЕНА и сохранена
- При обходе «в работе» обнаружено: работа волны от 26.08 лежала НЕЗАКОММИЧЕННОЙ в дереве на A1 (после аварии бокса 26.08 состояние волны было неизвестно). Закоммичено координатором: `563e2d8b` (база старая `e857b22f`, НЕ l66).
- Заряжена приёмка ACC047B (A1 queue/346) — по существу решения; перенос на актуальную линию (l66/l67) — отдельный шаг координатора ПОСЛЕ GO.
- Отчёт автора: /home/ubuntu/waves/ на A1.

---
## 2026-08-29 03:00Z — ACC047B: NO-GO. ⚠️ Найдена УТЕЧКА ЧУЖИХ ДАННЫХ
- Принято: видимость дедупа пользователю, force-bypass, owner-check на уровне приложения.
- БЛОКЕР (приватность): authenticated owner НЕ передаётся из app в engine; для content-analysis cache движок использует общий workspace_id → пользователь B может получить content-кэш пользователя A. Это утечка между владельцами, а не косметика.
- Круг WEB047C заряжен (A1 queue/350): владелец обязан быть частью ключа кэша; нет владельца → промах (fail-closed) с маячком; адверсариальные пробы A-кладёт/B-читает; аудит СОСЕДНИХ кэшей движка на тот же класс (нет ли ещё общего ключа).
- Контекст срочности: пользователей на проде нет (owner 28.08, малинка = дев), поэтому это не P0-пожар, но чинить до открытия обязательно.
- Отчёты: /home/ubuntu/waves/ACC047B-REPORT.md, WEB047-REPORT.md.


[BOARDTRIAGE] ACC047B NO-GO 29.08 03:00Z: owner не доходит в engine, возможна cross-owner выдача. Следующий шаг WEB047C: owner в ключе, fail-closed без owner и adversarial A/B-проверки.
Замечен в сборке
v4-80e8b5a
Починено в
v4-c8c3638
Лента
2026-08-19T23:36:20.102Z · backup-opus
videofix6 20.08: части 1 и 3 закрыты — состояние кэша теперь видно в ответе прогона, и добавлен forceReanalyze (принудительный свежий разбор) в POST /api/video/pipeline/run. Тест analysisCacheVisibility.test.ts 8/8. ОСТАЁТСЯ часть 2: профиль/режим в КЛЮЧ артефакта — это правка движка (ключ строится в lib/content-analysis-cache.ts по одному лишь sha256 содержимого), спека в отчёте.
2026-08-20T00:36:19.919Z · backup-opus
25-я посадка 20.08: serving v4-c8c3638, артефакт sha d2adfe8f408d249cd5c6376a9e6e865a03132d79c2a3bb5a7979c8294b0d9bf3, аттестация v12 подписана ВЛАДЕЛЬЦЕМ ЛИЧНО ключом активации (проверено против прод-пина). paidReady=true, posture=enforce_ready, failures=[]. Ограда переприменена, канон проштампован. ЖИВАЯ ПРОВЕРКА: GET /api/media/transcribe-local отвечает 401 вместо 500 — пятисотка вылечена. Продуктовая часть в проде; остаток — правка движка nc-video-engine, спека в VIDEOFIX6-REPORT.md.
2026-09-03T07:18:45.720Z · Fable
[A1 12:48 Фабл] Триаж 03.09 (owner: «чего они ждут — срочно принимайте, сажайте»): ⚠️ приватность: app-коммиты круга C (ab432cd5) потеряны; ENGINE-часть жива (ветка web047-owner-cache 4c517e41 в /home/ubuntu/nc-video-engine, на Pi не раскатана) → волна 1516 (app+engine сквозняком).
2026-09-05T17:35:28.601Z · fable-coordinator
[2026-09-05 17:40Z] Ревизия доски (волна 2040 boardtriage, M1, luna): статус → parked. Основание: нет активности с 2026-08-29; последний найденный фрагмент ACC047B NO-GO. Если работа жива — верни статус и напиши в тикет, какая волна её ведёт.
2026-09-10T18:55:03.674Z · coordinator
BOARD-WASH-20260910:WAVE-3338
По поручению владельца 18:43Z назначена исполнительская волна 3338 (video), Codex gpt-5.6-luna xhigh, M4. Полная история карточки и база l115c 1ad52e16b доставлены, brief-guard и проверка Git-базы пройдены. Задача: проверить существующую сдачу, устранить остатки, передать бандл и доказательства. Финальная приёмка и посадка остаются за координатором. Ранее отложенная функция не включается; статус parked/backlog сохранён, идёт проверка технического остатка.
КАРТА ДОКУМЕНТОВ: ноут /Users/annakorin/nc-ops-scripts/board-wash-20260910/3338-wash-video-brief.md; M4 /Users/milamarty/waves/inputs/board-wash-20260910/video-tickets.json; ожидаемый отчёт /Users/milamarty/waves/3338WASHVIDEO-REPORT.md. Правила обогащения: WEB-449.
2026-09-13T11:01:35.728Z · coordinator
[13.09 11:01Z координатор] Мойка отложенных, волна 3668. Вердикт: ЖДЁТ-ВЛАДЕЛЬЦА. Видео выключено владельцем (R4.1 #4); ACC047B NO-GO — cross-owner утечка; следующий круг WEB047C.
2026-09-22T18:28:17.647Z · triage-m1
РЕШЕНИЕ=parked
ОСНОВАНИЕ=2026-09-22 проверка: ACC047B (29.08) NO-GO из-за cross-owner cache leak; посадка 25, v4-c8c3638; engine 4c51741 на Pi не раскатан; video off по R4.1 #4.
ЧТО НУЖНО=разбудить после решения владельца включить видео и подтверждения WEB047C: owner в ключе, fail-closed без owner, adversarial A/B; затем посадка и живой пруф.
triage-m1 4614
2026-09-22T18:47:22.507Z · coordinator
[22.09 18:47Z координатор] ## Решение владельца 22.09 18:46Z
РЕШЕНИЕ=parked (подтверждено владельцем): видео-фича выключена в первом релизе (R4.1 #4); Bedrock Model access поднимать при возврате видео. Условие пробуждения: решение о возврате видео-импорта. Для WEB-047 при пробуждении первой чинить cross-owner утечку кэша.
2026-09-23T12:50:47.868Z · triage-neo
РЕШЕНИЕ=parked
ОСНОВАНИЕ=2026-09-22, решение владельца: видео-фича off до возврата; ACC047B NO-GO из-за cross-owner cache leak, посадка engine 4c51741 не подтверждена.
ЧТО НУЖНО=владелец: подтвердить возврат видео-импорта; triage-neo 4713
Воркер
не проверен 3338-wash-video M4 движение в панели: неизвестно
Подключиться и смотреть/перехватить руками. Колесо мыши листает; клавишами — Ctrl-b затем [, выход из прокрутки q. Отсоединиться — Ctrl-b затем d:
Прочитать историю панели без подключения — листается и ищется (/ поиск, q выход), воркеру не помешает:
Обновлён
2026-09-22T18:28:17.672Z