diff --git a/docs/changelog.html b/docs/changelog.html index f37a137..539aac0 100644 --- a/docs/changelog.html +++ b/docs/changelog.html @@ -1,4 +1,4 @@ - +
@@ -2545,6 +2545,30 @@ main > *:nth-child(n+6) { animation-delay: 0.46s; }聚珍(Juzhen)/cjk-autospace 變更紀錄。← 回文檔
+承第一層(S2+S3)。本批含掃描/佈局提速與**增量恢復**(動態頁面局部變化免全樹重掃),全程獨立複驗+4 份真人撰寫真實文檔驗收。單元測試 130→140 全綠。
+insidePill/isAvoided 之「逐文本節點沿祖先鏈」以迭代回填記憶化(每元素恰算一次、兄弟共用),O(文本×depth)→O(元素)。掃描層 el.matches() 累計約降五成;深嵌套 render 進程隔離墻鐘 pre-Tier1 707ms→254ms(2.8×)。left/start(ltr) 之 ragged 右緣可整批跳過,省其 O(gaps) 次同步重排。非兩端對齊內容 gapTrim 由數千 ms 降至數十 ms;justify/center/right/RTL 保留完整算法、行為不變(真瀏覽器差分:trim 集指紋逐位相同)。invalidate(el) 清整棵子樹快取(祖先屬性變則後代快取變脏),revert 自動失效其子樹。rerender(root)=revert+render(局部恢復,實測編輯 400 段中一段 766×、matches 1441×)。observe/disconnect:MutationObserver 自動增量——內容/分類屬性變化重處理最近塊、新增之塊直接 render;render/revert 期間暫停觀察,自身注入絕不自觸發。jz-orphan)追加子塊使其轉非葉,須撤容器陳舊 orphan。revert 淨移除結構、真瀏覽器整條管線零報錯。render→revert 不還原 spacing 依契約規範化之贅餘作者空格(在 Neovim 中→在Neovim中)——固有、非本批引入。I1 明示此為刻意常態例外(語義不變、確刪空格且不還原);I6 明示「邏輯等價≠逐字節」之唯一差異即被規範化之空格。README 補「revert 之範圍」注。下游效能訴求(掃描疑 O(n²))之第一層——無狀態、保行為、無公開 API 變更之確定收益。單元測試 129→130 全綠、輸出不變。