From 2805c2c8a0eebd371d7c2133a0243e9d3a42ed22 Mon Sep 17 00:00:00 2001 From: Sergey Matyunin Date: Mon, 24 Aug 2026 23:27:12 +0300 Subject: [PATCH] test: align Escape dialog smoke with #294 The full smoke suite still expected Escape to undo one wall point. The accepted #294 contract finishes and detaches the chain while Ctrl/Cmd+Z owns undo; the dedicated wall-tool smoke already proves geometry persistence. Issue: #294 User-Visible: no --- demo/smoke_esc_dialogs.mjs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/demo/smoke_esc_dialogs.mjs b/demo/smoke_esc_dialogs.mjs index 47c78264..1bd9de74 100644 --- a/demo/smoke_esc_dialogs.mjs +++ b/demo/smoke_esc_dialogs.mjs @@ -76,9 +76,11 @@ const res = await page.evaluate(async () => { c._openSettingsDialog(); c._infoCard = c._devices[0]; await c.updateComplete; await esc(); out.stacked = !c._infoCard && !!c._settingsDialog; await esc(); out.stacked2 = !c._settingsDialog; - // Esc в разметке по-прежнему откатывает точку, а не только диалоги + // #294: once no dialog remains, Escape is still routed to the Plan tool. + // It finishes and detaches the accepted chain while keeping Walls armed; + // Ctrl/Cmd+Z, not Escape, owns one-point undo. c._setMode('plan'); c._tool = 'draw'; c._path = [[1, 2], [3, 4]]; await c.updateComplete; - await esc(); out.undoPointStillWorks = c._path.length === 1; + await esc(); out.wallChainDetaches = c._path.length === 0 && c._tool === 'draw'; return out; }); checkAll(res);