test(mutation): свидетели жестов и подсказки лестниц — без браузера (#676)

#659 закрыл реестр браузерных гвардов ровно на 200 и проверяет число
точно: два новых смок-свидетеля #676 подняли его до 202, и юниты на
ребейзнутом кандидате покраснели («browser guard inventory is reviewed,
capped and exact»).

Оба инварианта — проводка Lit-шаблонов, которую без браузера не
импортировать, но можно засвидетельствовать по исходнику, как #659 сделал
для прежних трёх лестничных мутантов: подавление синтезированного click
после жеста (`_suppressClick` на один тик в конце протяжки и жеста узла,
`@click=${stop}` на обоих видах узлов) и условие подсказки Просмотра
(`if (!active) return;` — тот же признак, что делает лестницу ссылкой).
Мутанты переведены в группу `unitGuard('test/stairs-box.test.mjs')`,
свидетель — новый тест в `mutation-browser-offload.test.mjs`; поведение в
Chromium по-прежнему держит `demo/smoke_stairs.mjs` (AC6, AC8).

Issue: #676
User-Visible: no
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018qZfe7YS4rqEMKoVeS3GKd
This commit is contained in:
Claude
2026-09-27 17:54:21 +03:00
parent ab89187f4f
commit dd905888cb
2 changed files with 30 additions and 0 deletions
+6
View File
@@ -13149,6 +13149,12 @@ const UNIT_GUARD_GROUPS = [
'stairs-link-auto-creates-target-object',
'stairs-broken-targets-become-active',
]],
// #676: gesture-click suppression and the tooltip's `active` gate are template
// wiring; the box model beside them is pure and tested in stairs-box.test.mjs.
[unitGuard('test/stairs-box.test.mjs'), [
'stairs-gesture-click-reaches-plan-tool',
'stairs-view-tooltip-ignores-target-state',
]],
[unitGuard('test/device-hit-owner.test.mjs'), [
'device-hit-scroll-observer-disabled',
]],