A failed build removes its holder. When both editors fail, the page tells the app and keeps the text; the next mode request rebuilds it. mark-broken.mjs breaks the editors through setAttribute and checks the fallback, the told failures, no leftover holders and the rebuild. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1.5 KiB
1.5 KiB
FAIL
-
apps/ely-mark/web/src/main.js:137:两种编辑器构建失败后,
current保持null,且没有构建任务运行;mode()在第 235–237 行仍把它当作正在构建,只记录asked。Windows 与 WSL 均复现:按新测试的方式让两种编辑器失败,恢复setAttribute后请求源码模式,没有新的shown,可见编辑器仍为零,模式切换无法恢复文档(MARK-02、UX-06)。区分构建中与构建失败,保留文本并允许源码模式重新构建;补充失败后恢复的回归断言。证据:.work/m13-r1-review/windows-probe.log、linux-probe.log。 -
apps/ely-mark/web/src/main.js:134:构建失败后直接返回,未移除
build()已挂入页面的隐藏容器,也未释放部分构建产生的监听器。沿用新测试的故障注入,初次打开失败后再重载四次,两端都留下五个隐藏容器和十个document.selectionchange监听器;恢复构建并成功打开源码后变为六个容器、十一个监听器,旧资源仍保留。失败重载会持续累积编辑器资源。构建失败时清理容器及已分配的编辑器资源,并在回归测试中检查连续失败、成功重开后的资源数量。证据同上述两份探针日志。 -
tests/scripts/mark-broken.mjs:1:本行与第 35 行的注释各有 11 个词,违反 agents.md 第 5 条的十词上限;逐行按空白分词即可复现,记录见
.work/m13-r1-review/comment-count.log。将这两条注释缩短至十词以内。