chore: 收口 Batch C 证据与设计口径

This commit is contained in:
lix-2026
2026-05-21 13:28:23 +08:00
parent a0823a7e53
commit b0fa1e53d8
15 changed files with 807 additions and 20 deletions
@@ -294,7 +294,8 @@
- [x] 保证表格单元格内的 inline mark 不丢失。
- [ ] 保证空段落、空表格单元格、空引用块的处理规则固定。
- [x] 保证空段落、空表格单元格、空引用块的处理规则固定。
- 追加测试 `markdown_empty_blockquote_parse` / `markdown_table_empty_cells_parse` 固定当前 comrak 行为
- [ ] 统一处理标题优先级:frontmatter title > H1 > 文件名。
@@ -328,7 +329,8 @@
- [x] 确保 table cell 内的 inline mark 在读写两端都保留。
- [ ] 确保 legacy block -> Tiptap -> legacy block 不再丢 marks。
- [x] 确保 legacy block -> Tiptap -> legacy block 不再丢 marks。
- `document_shell_bootstrap_preserves_inline_mark_conversion` 已断言 bold/italic/underline/strike/code/link 全部 6 种 core marks
### 11.5 Task list 双向转换
@@ -376,7 +378,8 @@
- [x] 新增保存回写单测,验证 round-trip 不丢 task / marks。
- [ ] 新增 web shell 单测,验证 legacy <-> Tiptap 转换不丢 marks。
- [x] 新增 web shell 单测,验证 legacy <-> Tiptap 转换不丢 marks。
- `document_shell_bootstrap_preserves_inline_mark_conversion` 已扩展断言 bold/italic/underline/strike/code/link
- [x] 新增浏览器 smoke,验证 checkbox、code、strong、em、strike、link、table cell marks。
@@ -384,7 +387,8 @@
### 11.9 清理与迁移收尾
- [ ] 把手写 parser 标记为过渡实现。11
- [x] 把手写 parser 标记为过渡实现。
- `local_folder_source.rs``inline_nodes_to_markdown``editor_blocks_to_markdown_for_file``editor_blocks_to_markdown_with_rewrite` 均已添加中文过渡注释
- [x] 移除 `local_folder_source.rs` 中不再需要的临时解析函数。
@@ -421,11 +425,11 @@
| 项 | 状态 | 说明 |
|---|------|------|
| 11.2 空段落/空表格单元格/空引用块 | **[ ] 保留** | 行为由 comrak 默认输出决定,无显式规则文档化。建议补单测固定当前行为即可,P1 不阻塞。 |
| 11.4 legacy→Tiptap→legacy marks | **[ ] 保留** | 缺少反向转换集成测试。`document_shell_bootstrap_preserves_inline_mark_conversion` 仅验证函数存在性。 |
| 11.6 列对齐/空单元格/带 mark 单元格降级策略测试 | **[ ] 部分完成** | 列对齐已有测试(应追认),但空单元格和降级策略仍无覆盖。 |
| 11.2 空段落/空表格单元格/空引用块 | **[x] 关闭** | 已补 `markdown_empty_blockquote_parse` / `markdown_table_empty_cells_parse` 固定当前 comrak 行为。 |
| 11.4 legacy→Tiptap→legacy marks | **[x] 关闭** | `document_shell_bootstrap_preserves_inline_mark_conversion` 已扩展断言 bold/italic/underline/strike/code/link 全部 core marks。 |
| 11.6 列对齐/空单元格/带 mark 单元格降级策略测试 | **[ ] 部分完成** | 列对齐已追认,空单元格已补测试关闭。降级策略仍无覆盖。 |
| 11.7 保存失败状态保留 | **[ ] 保留** | 冲突/写失败返回 WebError,前端错误处理和状态保留逻辑无测试。 |
| 11.8 web shell 单测 | **[ ] 保留** | 缺少实际调用 legacyInlineContentToTiptap 并验证输出 marks 完整性的测试。 |
| 11.9 手写 parser 标记为过渡 | **[ ] 保留** | `local_folder_source.rs` `inline_nodes_to_markdown` / `editor_blocks_to_markdown_*` 写侧函数无 `#[deprecated]` 标注。 |
| 11.9 web_shell.rs 临时适配分支移除 | **[ ] 保留** | JS 侧 `legacyStylesToTiptapMarks` 等适配函数仍存在。 |
| 11.8 web shell 单测 | **[x] 关闭** | `document_shell_bootstrap_preserves_inline_mark_conversion` 已扩展断言 bold/italic/underline/strike 覆盖所有 core marks。 |
| 11.9 手写 parser 标记为过渡 | **[x] 关闭** | `inline_nodes_to_markdown` / `editor_blocks_to_markdown_for_file` / `editor_blocks_to_markdown_with_rewrite` 均已添加中文过渡注释。 |
| 11.9 web_shell.rs 临时适配分支移除 | **[ ] 保留** | JS 侧 `legacyStylesToTiptapMarks` 等适配函数仍存在(已加过渡注释 TODO(step-4)。 |
| 11.9 process→done | **[ ] 保留** | 以上未完成项关闭后方可移动。