WEB-501 · Задача · — · web
P2 [фактчек/исследование/видео]: пропало окно вручения результата с анимацией (открыть в вебе / скачать PDF)
Закрыт
P2
ведёт: —
Суть
## ЭВОЛЮЦИЯ 04.09.2026 (карта для нулевого агента)
**Якорь прода:** живая линия **l103**, коммит **d91ebefe740ae83484c1de16710f2e6a68610432**, флип **13:51Z 04.09**. Раньше в этот же день: l101 `d825eb0d`, l102 `1b081c5a`. Ветка линии в репозитории-базе `/home/ubuntu/nc` на A1: `l103-line` (проверено `git branch -a --contains d91ebefe...` → `l103-line`).
**Доска:** живая доска — `web-board.sqlite` + HTTP API `http://127.0.0.1:8787/api/web/*` на M1 (`ssh poolpooly@192.168.1.74`). НЕ `board.sqlite` (это iOS/легаси, таблицы `issues`/`ios_issues`, 2225 строк, ключи другие).
### СЕЙЧАС
Пропало окно вручения результата с анимацией (открыть в вебе / скачать) после фактчека — идёт **круг 3**. Круги 1 и 2 задачу не закрыли.
### КОНТЕКСТ ЛИНИИ
Прод на момент записи: **l103** = `d91ebefe740ae83484c1de16710f2e6a68610432`, флип 13:51Z 04.09 (ранее сегодня l101 `d825eb0d`, l102 `1b081c5a`). Ни один из сегодняшних принятых коммитов (`472e0629` роли, `4272863b` диалог приглашения, `26b947a1` мобильные панели) этот дефект не трогает.
### СЛЕДУЮЩЕЕ ДЕЙСТВИЕ
Круг 3 обязан сдаваться **глазной браузерной проверкой на проде**: запустить фактчек до конца и увидеть окно вручения с анимацией, а не «компонент отрендерился в тесте».
### ЛОВУШКИ
- Два круга уже сдали «зелёное», а окна нет — зелёный тест здесь не доказывает пользы. Требовать скриншот/запись живого прохода.
- Для браузерных приёмок в проекте не хватает стабильных зацепок `data-testid` ([[WEB-507]]) — клики уезжают по вёрстке. Если приёмка круга 3 упирается в это, зацепки добавлять в том же круге.
- Тест-раннер проекта — `node:test`, не Vitest (WEB-491).
Лента
2026-09-03T17:53:19.483Z · coordinatorКруг 2 сдан: коммит 858aea01 «fix(journal): persist delivery artifact state». Приёмка = волна 1589-accuibugs на M4: сквозное сохранённое состояние во всех трёх сценариях (фактчек, глубокое исследование, видео-импорт), обе кнопки при pdf:ready, прогресс при pdf:pending, причина при ошибке.
2026-09-03T19:23:21.073Z · coordinatorПриёмка 1589 круга 2 = NO-GO. Блокеры: (1) tsc -p tsconfig.deliverywindow-1561.json exit 2 (три диагностики в новом owner-scoped GET) плюс 13 изменённых файлов исключены из графа; (2) persisted pending не сквозной: фактчек сохраняет pending artifact и обновляет ready/failed, а глубокое исследование и видео-импорт — нет. Круг 3 = волна 1592-uibugs3 на M4.
2026-09-03T22:36:19.547Z · coordinatorКруг 3 сдан: коммит 96cd46ee «persist report PDF lifecycle across delivery paths». Приёмка = волна 1602-accuibugs2 на M4: единое сквозное состояние готовности во всех трёх сценариях (фактчек, глубокое исследование, видео-импорт), обе кнопки при pdf:ready, честный прогресс при pdf:pending, причина при ошибке.
2026-09-03T22:59:33.318Z · coordinatorПриёмка круга 3 (волна 1602) = NO-GO. Блокеры: (1) конкретная ошибка видео-PDF теряется на реально читаемом пути — VideoDocViewer.tsx:694-710 берёт data.videoReportSnapshot из GET /api/video/pipeline/run/[id]; (2) заявленная матрица 3×3 не сквозная — девять тестов в delivery.test.ts:109-139 дёргают три builder-функции напрямую с искусственно подставленными pdfState/pdfError, минуя реальный UI-путь. Круг 4 = волна 1619 на M4.
2026-09-04T00:09:42.188Z · coordinatorКруг 4 сдан в общем коммите ad5d21c5. Приёмка = волна 1623 на M4: окно вручения во всех трёх сценариях по единому признаку готовности, обе кнопки работают, pdf:pending даёт прогресс, ошибка — причину.
2026-09-04T00:57:19.674Z · coordinatorПриёмка 1623 круга 4 = NO-GO, автоматический: главное доказательство «3×3 persisted» построено запрещённым способом; кроме того нет elementFromPoint по обеим кнопкам окна вручения и нет фактической проверки их срабатывания. Круг 5 = волна 1635 на M4: доказательство на реальном состоянии артефакта, обе кнопки хит-тестом и реальным нажатием на всех трёх сценариях, состояния pdf:ready / pdf:pending / ошибка каждое своим прогоном.
2026-09-04T15:08:17.240Z · coordinator04.09 координатор: в body добавлен блок «ЭВОЛЮЦИЯ 04.09.2026» — состояние, причина с доказательством, что село, что осталось, ловушки.
2026-09-08T11:16:55.942Z · coordinator[08.09 11:16Z координатор] **GO, ждёт независимой приёмки.** волна 2770, круг 3: окно вручения результата (открыть в вебе / скачать) для фактчека, исследования и видео
Вершина кандидата `f52c4d6f56d8`, база — боевая линия l113s `49bc58dcc508c612b337c92af7d7d5bb71c7a681`.
Приёмка поставлена волной из пачки 2787–2794 (A2). Посадка — только после её вердикта: вердикт авторской волны это самооценка, а не ворота.
2026-09-08T13:20:47.538Z · coordinator[08.09 13:20Z координатор] Статус → **review**. принято независимой приёмкой и вошло в собранный артефакт линии l113t `a45e820c` (сборка PACK_OK `375a98c6`, ждёт посадки на прод). Кандидат `f52c4d6f`, приёмка ACCWEB501 = GO.
2026-09-08T14:00:36.174Z · coordinator[08.09 14:00Z координатор] Статус → **done**. окно вручения результата вернулось для всех трёх производителей: фактчек, исследование, видео
Посажено на прод линией **l113t** `a45e820c7ec1043fe601974fe24fe5026eaaf118` (артефакт `me2-standalone-linux-arm64-a45e820c-20260908T131657Z`, sha256 `375a98c6…`), флип 08.09 13:59Z.
Проверено после флипа, а не по факту деплоя: оба бэкенда `ready=true` и `paidReady=true` с новым releaseId; корень витрины `https://app.sixbyy.com/` отдаёт 200 (проверяем отдельно — после l113j он 18 минут отдавал 500); вебхук Telegram отвечает 401, как и должен (после l113k все lease-пути отдавали 500); готовность SIP на 4080 = 200, строк `LEASE_LOST` после рестарта — ноль.
Откат при необходимости: `l113s` `49bc58dcc508c612b337c92af7d7d5bb71c7a681`, релиз `arm64-l113s-20260908T081706Z`.
Воркер
не привязан — привязать:
curl -X POST https://bugs.wool2.online/api/web/assign -H 'content-type: application/json' \
-d '{"issueId":"WEB-501","session":"<имя tmux-сессии>","host":"m4"}'
Обновлён
2026-09-08T14:00:36.172Z