Commit Graph
368 Commits
Author SHA1 Message Date
Codexandclaude[bot] c12ecad3e3 docs: require the trusted-proxy switch for the rate-limit source (#43)
User-Visible: no
Issue: #43
2026-09-02 00:05:36 +00:00
Codexandclaude[bot] 3bbe555ad8 docs: pin the rate-limit source and the webhook recipe (#43)
User-Visible: no
Issue: #43
2026-09-02 00:05:36 +00:00
Codexandclaude[bot] ca86e79501 feat(relay): deliver through the maintainer's Home Assistant webhook (#43)
User-Visible: no
Issue: #43
2026-09-02 00:05:36 +00:00
Codexandclaude[bot] 6b3703f0b5 docs: switch the support sink to a maintainer channel (#43)
User-Visible: no
Issue: #43
2026-09-02 00:05:36 +00:00
Sergey Matyuninandclaude[bot] 65e0c2deed docs: address support spec review
Issue: #43
User-Visible: no
2026-09-02 00:05:36 +00:00
Sergey Matyuninandclaude[bot] 8074612f6b docs: rewrite support feedback spec
Issue: #43
User-Visible: no
2026-09-02 00:05:36 +00:00
Sergey Matyunin d5c93d4e28 docs: revise #405 spec after review
Issue: #405
User-Visible: no
2026-09-01 22:14:26 +03:00
CodexandSergey Matyunin 2c6d937d46 docs: specify draft delete awaiting and witness floor (#405)
User-Visible: no
Issue: #405
2026-09-01 22:12:13 +03:00
Sergey Matyuninandclaude[bot] 7806ab7182 docs: document confirm shell tradeoff
Issue: #406
User-Visible: no
2026-09-01 16:32:25 +00:00
Sergey Matyuninandclaude[bot] c3bb62a3b6 docs: resolve beta2 polish review
Issue: #406
User-Visible: no
2026-09-01 16:32:25 +00:00
Sergey Matyuninandclaude[bot] aad1eeaa10 docs: revise beta2 polish spec
Issue: #406
User-Visible: no
2026-09-01 16:32:25 +00:00
Codexandclaude[bot] 15ff625964 docs: specify the beta.2 polish batch (#406)
User-Visible: no
Issue: #406
2026-09-01 16:32:25 +00:00
Matysh 8ac8f0105a fix: let the product build the marker-dialog fixture
Прогон показал, что дописать binding и bindingMode было мало: у объявленного
типа больше сорока обязательных полей, и рендер упал на следующем
недостающем — теперь на name внутри _markerDraft. Гоняться за типом руками
бессмысленно.

Смок открывает диалог штатным _openMarkerDialog() и переопределяет три поля.
Это заодно и доказательство, что дефекта поведения нет: продукт своим же
путём собирает объект, на котором рендер не падает.

Issue: #404
User-Visible: no
2026-09-01 19:19:05 +03:00
Matysh 2903374b72 fix: the exception guard reads its counter after delivery, not before
Гард «uncaught exception внутри карточки» жил в demo/serve.mjs с 2026-07-27 и
не срабатывал ни разу в самом частом случае. Счётчик читался синхронно, а
Playwright доставляет pageerror асинхронно по CDP: если исключение возникло
после последнего обращения смока к странице, счётчик к моменту проверки
нулевой, а browser.close() уносит недоставленное событие. В логе это видно
дословно — EXC печатается после результата и до OK.

finish() теперь делает round-trip по открытым страницам перед чтением
счётчика. Страницы регистрируются там, где создаются: ссылок на них у
finish(browser, out) нет, а менять сигнатуру нельзя — так её зовут 205
смоков.

Medium-1 жёлтого ревью ТЗ закрыт расширением, а не оговоркой. Страницы,
созданные смоком после launch(), регистрация в launchInternal не покрывает:
smoke_zoom_flash печатал своё EXC2 мимо счётчика, три страницы
smoke_svg_sandbox не имели слушателя вовсе. Документировать слепую зону в
задаче, которая существует ради устранения слепой зоны, значит закрыть issue,
оставив дефект. Наружу отдана одна функция watchPage(page): подписка и
регистрация неразделимы, иначе появится страница, чьи исключения считаются, а
доставки не ждёт никто.

Разрыв оказался шире, чем в ревью: проверка по всему набору нашла ещё два
файла со своей подпиской — smoke_cold_view_toggle и smoke_cold_view_vacuum.
Они не слепая зона, их страница приходит из launchColdView и уже
зарегистрирована, а свой счётчик они превращают в отдельное утверждение.
Поэтому инвариант сформулирован как «ни одна страница не создаётся мимо
гарда» и закреплён по всему набору, а не по двум названным файлам.

reportPageErrors() из #407 стал асинхронным: второй читатель счётчика обязан
ждать доставку так же, как finish(). Пять смоков получили await.

Фикстура smoke_danger_confirmation приведена к объявленному типу: без binding
и bindingMode _bindingHasHaPage падал на undefined.split(':') — два
исключения, которых гард не видел. Дефекта поведения нет, все 15 мест в src/,
создающих диалог, binding пишут; врала фикстура.

Два отступления от ТЗ, каждое по измеренной причине. Пробы лежат в
demo/guard/, а не demo/fixtures/: последний входит в корпус sourceFingerprint,
и каждый файл там объявил бы устаревшими бандл, скриншот-индекс и
golden-индекс — пробы же не касаются ни одного пикселя. Поведение
доказывается в job со браузером, а не в npm test: job «Фронтенд» браузеры не
ставит, и тест молча скипался бы — тот самый тихий успех, против которого вся
задача.

Issue: #404
User-Visible: no
2026-09-01 19:08:07 +03:00
Sergey Matyuninandclaude[bot] 355b0516c7 fix: preserve area relocation state
Issue: #403
User-Visible: yes
2026-09-01 15:08:22 +00:00
Sergey Matyuninandclaude[bot] 98d6edb7b2 docs: revise area relocation safety spec
Issue: #403
User-Visible: no
2026-09-01 15:08:22 +00:00
Codexandclaude[bot] 8e7c927264 docs: specify area relocation safety (#403)
User-Visible: no
Issue: #403
2026-09-01 15:08:21 +00:00
Codex 11959e4c85 docs: #402 spec revision 2 per SPEC-REVIEW-402-r1
User-Visible: no
Issue: #402
2026-08-31 16:22:50 +03:00
Codex d94db87ee7 docs: specify the branch-independent danger confirmation (#402)
User-Visible: no
Issue: #402
2026-08-31 16:08:52 +03:00
Matysh 633cb20e59 fix: follow Home Assistant Area marker moves
Issue: #126
User-Visible: yes
2026-08-31 09:45:53 +03:00
Matysh cdd9588ca6 docs: address HA area relocation review
Issue: #126
User-Visible: no
2026-08-31 09:45:52 +03:00
Matysh 59546662e6 docs: update HA area relocation contract
Issue: #126
User-Visible: no
2026-08-31 09:45:52 +03:00
Sergey MatyuninandMatysh 84f9901ca0 docs: specify HA area marker relocation
Issue: #126
User-Visible: no
2026-08-31 09:45:52 +03:00
Codex 60c211c82a docs: specify the beta polish batch (#400)
User-Visible: no
Issue: #400
2026-08-31 07:36:44 +03:00
Codex bb635298c1 docs: #399 spec revision 3 per SPEC-REVIEW-399-r2
User-Visible: no
Issue: #399
2026-08-31 04:26:14 +03:00
Codex 6d229c66f1 docs: #399 spec revision 2 per SPEC-REVIEW-399-r1
User-Visible: no
Issue: #399
2026-08-31 04:16:18 +03:00
Codex a1d7e0da55 docs: specify the backend gate honesty fixes (#399)
User-Visible: no
Issue: #399
2026-08-31 04:06:40 +03:00
Codex 9fde407e4e docs: #398 spec revision 3 per SPEC-REVIEW-398-r2
User-Visible: no
Issue: #398
2026-08-31 03:40:36 +03:00
Codex 480d202fa5 docs: #398 spec revision 2 per SPEC-REVIEW-398-r1
User-Visible: no
Issue: #398
2026-08-31 03:30:10 +03:00
Codex 69dd09a7c9 docs: specify the sys.modules guard scope fix (#398)
User-Visible: no
Issue: #398
2026-08-31 03:17:55 +03:00
Codex 6edcde012a docs: #397 spec revision 2 per SPEC-REVIEW-397-r1
User-Visible: no
Issue: #397
2026-08-31 02:21:20 +03:00
Codex 83692e7959 docs: #397 spec — correct the fingerprint line number
User-Visible: no
Issue: #397
2026-08-31 02:11:19 +03:00
Codex 9fcbb64633 docs: specify the device position echo fix (#397)
User-Visible: no
Issue: #397
2026-08-31 02:10:49 +03:00
Codex 8f485c0b00 fix: the camera keeps the zoom you see and the point you hold (#396)
Three findings of the v1.70.0-beta.1 audit, all on the transition path
added by #82, all of the same shape — the new path did not inherit a
property the old one had.

B1: persisting the zoom moved into _settleCameraTransition only, and a
cancellation never settles. Touching the plan mid-flight — the literal
scenario of the issue — froze the shown frame and threw it away; before
which kind it is: the user one (_stagePointerDown) persists the frame
that stays on screen, the eleven structural ones keep writing nothing.
The distinction is now also written down in spec #82 §13, which had one
line for both.

B2: the anchor was read from the presented (lagging) frame while the
zoom accumulated from the target, so a six-notch trackpad series walked
the point under the cursor 17 px away — against §10's own promise. Both
now come from the same state. Spec §10 said to use the presented frame
and to keep the anchor within 0.5 px; those two are incompatible, and
the paragraph is corrected rather than left as a trap.

M2: the feather freeze keyed on the two gesture flags, which an
animated transition does not set, so every tween frame rebuilt the blur
region. It keys on 'the camera is still' now.

Guards: unit tests pin the anchor at 1e-9 across 8/16/33 ms series and
prove zoom accumulation is untouched; the smoke checks the shown zoom is
the stored one, that a structural cancellation stores nothing, and that
the anchor holds; three mutants (cancel-loses-zoom, anchor-from-
presented, feather-thaws) were run by hand and each reddens.

User-Visible: yes
Issue: #396
2026-08-31 01:36:59 +03:00
Codex 371f2e9869 docs: #396 spec revision 3 per SPEC-REVIEW-396-r2
User-Visible: no
Issue: #396
2026-08-31 01:36:53 +03:00
Codex 7cf22cb54f docs: #396 spec revision 2 per SPEC-REVIEW-396-r1
User-Visible: no
Issue: #396
2026-08-31 01:36:53 +03:00
Codex 54f9efb798 docs: specify the camera transition fixes (#396)
User-Visible: no
Issue: #396
2026-08-31 01:36:53 +03:00
Matysh 4ba1b2730f docs: budget unified confirmation surface
User-Visible: no
Issue: #32
2026-08-31 00:24:32 +03:00
Matysh 206bcd1ae7 docs: refresh danger confirmation spec
User-Visible: no
Issue: #32
2026-08-31 00:17:19 +03:00
Matyshandclaude[bot] bb79ece0b3 docs: actualize smooth zoom specification
Issue: #82
User-Visible: no
2026-08-30 16:11:35 +00:00
Sergey Matyuninandclaude[bot] 2cf82d9156 docs: specify smooth viewport zoom
Issue: #82
User-Visible: no
2026-08-30 16:11:35 +00:00
Codex 3ae3ec0f48 docs: #42 spec revision 6 — final r4 fix by owner arbitration
User-Visible: no
Issue: #42
2026-08-30 17:04:34 +03:00
Matyshandclaude[bot] 857537c620 docs: apply review notes for device position undo
Issue: #74
User-Visible: no
2026-08-30 13:16:27 +00:00
Matyshandclaude[bot] df92f8d448 docs: actualize device position undo specification
Issue: #74
User-Visible: no
2026-08-30 13:16:27 +00:00
Sergey Matyuninandclaude[bot] f049d3b1eb docs: specify device position undo
Issue: #74
User-Visible: no
2026-08-30 13:16:27 +00:00
Codex 84008a0a8f docs: #42 spec revision 5 per SPEC-REVIEW-42-r3
User-Visible: no
Issue: #42
2026-08-30 15:55:26 +03:00
Codex 5bdde98b50 docs: #42 spec revision 4 per SPEC-REVIEW-42-r2
User-Visible: no
Issue: #42
2026-08-30 15:46:41 +03:00
Codex 0ed83c36f0 docs: #42 spec revision 3 per SPEC-REVIEW-42-r1
User-Visible: no
Issue: #42
2026-08-30 15:40:40 +03:00
Codex 582d673a2d docs: #42 spec revision 2 — mechanism + baseline stage, measured facts
User-Visible: no
Issue: #42
2026-08-30 15:28:52 +03:00
Matysh 981b6b25e8 test: add reviewed 200 percent help goldens
Capture the general-settings help surface at 390 CSS pixels and DPR 2 in
both themes, assert its viewport contract, and teach the golden runner to
select a renderer scale per scenario.

Issue: #86
User-Visible: no
2026-08-30 14:49:27 +03:00