edit | blame | history | raw

用户目标

  • 用户接受“先脱钩,后改名”的建议。
  • 要求正式开始执行 TxtflowyAnyBlock 完全脱钩的迁移工作。

本轮执行范围

  • 不改目录名 Txtflowy -> P1-Txtflowy
  • 不删除旧 any-block 链路
  • 只执行第一批安全迁移:
  • 建立新的根级独立工程骨架
  • 抽离第一批最小闭环模块
  • 跑通根级 build
  • 同步迁移文档与执行清单

当前起点

  • 当前可用基线版本:0.5.20
  • 当前旧链路源码根:/Users/ar/Projects/ExcalidrawX/Txtflowy/any-block
  • 当前新目标源码根:/Users/ar/Projects/ExcalidrawX/Txtflowy/src

已完成事项

  • 创建新的根级独立工程文件:
  • Txtflowy/.gitignore
  • Txtflowy/package.json
  • Txtflowy/manifest.json
  • Txtflowy/tsconfig.json
  • Txtflowy/esbuild.config.mjs
  • Txtflowy/styles.css
  • 创建新的活跃源码根目录:
  • src/core
  • src/renderer
  • src/editor
  • src/obsidian
  • 抽离第一批核心模块:
  • src/core/TxtflowyNode.ts
  • src/core/parseTxtflowyBlock.ts
  • src/core/serializeTxtflowyBlock.ts
  • src/renderer/safeInlineHtml.ts
  • src/renderer/txtflowyShadowStyle.ts
  • src/renderer/renderTxtflowy.ts
  • src/editor/TxtflowyEditorExtension.ts
  • src/obsidian/commands.ts
  • src/obsidian/codeBlockProcessor.ts
  • src/obsidian/main.ts
  • 保持旧 any-block 链路不动,作为回滚基线
  • 更新迁移与执行文档:
  • docs/clean-extraction-060.md
  • docs/clean-extraction-060-execution-checklist.md
  • docs/implementation-log.md
  • GTD-TxtFlowy.md
  • VERSION.md
  • OBSIDIAN-LOCAL-TEST.md
  • requirements/2026-06-25-clean-extraction-batch1.md

关键决策

  • 新主线源码根确定为:Txtflowy/src
  • clean extraction 的第一批目标不是功能扩张,而是:
  • 独立构建入口
  • 独立 parser
  • 独立 renderer
  • 独立 editor extension
  • 独立 Obsidian plugin entry
  • any-block 暂时保留,仅用于回滚和对照,不再作为新代码的活跃归宿

构建验证

执行命令:

cd /Users/ar/Projects/ExcalidrawX/Txtflowy
npx --yes pnpm@10.10.0 install
npx --yes pnpm@10.10.0 build

结果:

  • 安装成功,生成根级 pnpm-lock.yaml
  • 构建成功,输出:
  • Txtflowy/main.js
  • Txtflowy/manifest.json
  • Txtflowy/styles.css
  • 额外检查:
  • src/main.js 中未发现 ABConvertManager / ABCSetting / ABReplacer_ / @/ABConverter / list2mubu 运行依赖引用

文件变更

  • 新增:
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/.gitignore
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/package.json
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/manifest.json
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/tsconfig.json
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/esbuild.config.mjs
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/styles.css
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/core/TxtflowyNode.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/core/parseTxtflowyBlock.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/core/serializeTxtflowyBlock.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/renderer/safeInlineHtml.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/renderer/txtflowyShadowStyle.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/renderer/renderTxtflowy.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/editor/TxtflowyEditorExtension.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/obsidian/commands.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/obsidian/codeBlockProcessor.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/src/obsidian/main.ts
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/docs/clean-extraction-060-execution-checklist.md
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/requirements/2026-06-25-clean-extraction-batch1.md
  • /Users/ar/Projects/ExcalidrawX/.codex-sessionhistory/2026-06-25-Txtflowy脱钩执行.md
  • 修改:
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/docs/clean-extraction-060.md
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/GTD-TxtFlowy.md
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/VERSION.md
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/docs/implementation-log.md
  • /Users/ar/Projects/ExcalidrawX/Txtflowy/OBSIDIAN-LOCAL-TEST.md

未决问题

  • 新独立链路还没有替换用户当前实际安装中的插件副本
  • 还没有完成阅读视图 / Live Preview / 快捷键等价回归
  • 业务规则文档中的部分“代码来源路径”仍指向旧 any-block

下一步建议

  • 进入 Batch 2:
  • 对照旧链路逐项做行为等价验证
  • 补齐新链路与旧链路的功能差异
  • 再决定何时切换本地 Obsidian 安装源