
Nick ShirokovandClaude Opus 4.7
1eff62de42
docs(web-test): полный sync спеки + contexts[] в testResult
spec.md v0.2 (последний sync 2026-05-13):
§1 CLI: добавлены --report-dir и `--` separator в таблицу флагов.
§1 «Режим выполнения»: убрана несуществующая «группировка по контексту»,
описана реальная алфавитная модель + lazy ensureContext.
§2 пример multi-context: latin ID контекстов вместо кириллицы (clerk/manager)
+ showcase closeContext в финальном шаге.
§3 список API расширен: контексты (createContext/closeContext/setActive/
listContexts/hasContext/getActiveContext), overlay-helpers (hideTitleSlide/
hideImage/setHighlight/isHighlightMode), error-helpers (dismissPendingErrors/
fetchErrorStack).
§6 пример _hooks.mjs: убран mock-навигация в beforeAll, добавлены примеры
afterOpenContext/beforeCloseContext, afterEach показывает testResult.
§8 переписан раздел «Реализация в browser.mjs» (мульти-контекст уже live)
+ новая таблица режимов изоляции tab/window.
§9 JSON example: поле "context" → "contexts": [...] (массив).
§10: убрано упоминание несуществующего verbose-режима.
§13 «Параметризация»: убран статус «будущее», описана реальная семантика
T6 (template name, param 2-м аргументом, testInfo.param).
§14 buildContext: переписан под done-состояние + scoped-вариант.
§16 каталог тест-кейсов: 13 → 19 файлов (multi-context, recording,
errors-stack, tree-form, misc, hooks).
§17 дорожная карта: 10 → 18 пунктов, M4–M8 включены.
run.mjs:
- testResult получил поле contexts: [...names] во всех ветках
(passed/failed/skipped/context-setup-failed). Раннер передаёт
declaredContexts из единой точки до if(skip), чтобы skip-результаты
тоже несли структурную информацию.
Регресс 19/19 ✓ (9m 8.7s) после --rebuild-stand.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 17:11:51 +03:00
..
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-04-25 13:35:44 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-04-25 13:29:20 +03:00
2026-04-25 15:26:54 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-08 12:16:44 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-08 12:16:44 +03:00
2026-05-07 15:30:06 +03:00
2026-05-08 12:16:44 +03:00
2026-05-12 12:56:35 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-03 20:10:10 +03:00
2026-05-08 12:16:44 +03:00
2026-05-07 15:30:06 +03:00
2026-05-08 12:16:44 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-11 13:47:50 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-08 12:16:44 +03:00
2026-05-08 12:16:44 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-07 15:30:06 +03:00
2026-05-13 17:11:51 +03:00
2026-05-07 15:30:06 +03:00
2026-03-09 14:58:49 +03:00