mirror of
https://github.com/jacobinwwey/obsidian-NotEMD.git
synced 2026-07-22 05:48:27 +00:00
docs(progress): sync current-main roadmap truth
This commit is contained in:
parent
7af2f9bbb7
commit
58df2b377e
8 changed files with 116 additions and 22 deletions
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
date: 2026-05-08
|
||||
last_updated: 2026-06-06
|
||||
last_updated: 2026-06-09
|
||||
topic: packaging-semantic-convergence-progress-and-next-steps
|
||||
---
|
||||
|
||||
|
|
@ -341,6 +341,22 @@ Interpretation:
|
|||
1. current repo-saga behavior is still unchanged;
|
||||
2. the useful change is stronger proof of the checked-in sync helper's real CLI behavior, not only its source-shape and lock-helper internals.
|
||||
|
||||
### 2026-06-09 Current-Main Progress-Sync Delta
|
||||
|
||||
The next drift risk in this lane was no longer code. It was documentation ownership across the current-main truth surfaces.
|
||||
|
||||
1. the canonical progress docs in `docs/brainstorms/2026-05-20-*` and `docs/brainstorms/2026-05-28-*` now explicitly treat the helper-entrypoint proofs above as landed current-main evidence instead of pending follow-through;
|
||||
2. the diagram-platform roadmap in `docs/superpowers/plans/2026-04-14-diagram-rendering-platform-roadmap.*` now also reads:
|
||||
- Task 0 as the still-live packaging/source-build bottleneck;
|
||||
- Task 2 as compatibility-surface convergence rather than pipeline existence work;
|
||||
- Task 3 as MermaidProcessor responsibility reduction guarded by real Obsidian verification;
|
||||
3. the packaging lane therefore remains the primary architecture bottleneck on current main, while the release / chronicle / repo-saga helper-entrypoint proofs act as contract-depth evidence supporting that lane rather than as a separate architecture track.
|
||||
|
||||
Interpretation:
|
||||
|
||||
1. this batch still does not widen the shipped topology;
|
||||
2. it does reduce one more class of drift by making roadmap/progress truth follow the same checked-in helper-entrypoint evidence that code/tests already prove.
|
||||
|
||||
### Priority 2: treat backup-branch Stage-C work as reintegration candidates
|
||||
|
||||
Candidate later slices may still be valuable, but they must be re-proved on current `main`:
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
date: 2026-05-08
|
||||
last_updated: 2026-06-06
|
||||
last_updated: 2026-06-09
|
||||
topic: packaging-semantic-convergence-progress-and-next-steps
|
||||
---
|
||||
|
||||
|
|
@ -341,6 +341,22 @@ release-follow-through 这条链路里的 repo-saga 侧入口现在也补上了
|
|||
1. 当前 repo-saga 行为仍然没有变化;
|
||||
2. 真正收紧的是:现在被更强地证明的是已检入 sync helper 的真实 CLI 行为,而不只是其源码形态与 lock-helper 内部逻辑。
|
||||
|
||||
### 2026-06-09 Current-Main Progress-Sync 增量
|
||||
|
||||
这条轨道接下来的漂移风险已经不再主要来自代码,而是来自 current-main 真值文档之间的所有权断层。
|
||||
|
||||
1. `docs/brainstorms/2026-05-20-*` 与 `docs/brainstorms/2026-05-28-*` 这两组 canonical progress 文档,现在已经把上面的 helper-entrypoint proof 视为 current main 的已落地证据,而不是待完成跟进;
|
||||
2. `docs/superpowers/plans/2026-04-14-diagram-rendering-platform-roadmap.*` 现在也会把:
|
||||
- 任务 0 读成仍然活跃的 packaging/source-build 瓶颈;
|
||||
- 任务 2 读成 compatibility-surface 收口,而不是 pipeline 是否存在;
|
||||
- 任务 3 读成带真实 Obsidian 验证门槛的 MermaidProcessor 降责;
|
||||
3. 因此,在当前主线上,packaging 轨道仍然是首要架构瓶颈;release / chronicle / repo-saga helper 的入口级证明,则是支撑这条轨道的 contract-depth 证据,而不是另一条独立架构主线。
|
||||
|
||||
正确解释:
|
||||
|
||||
1. 这次仍然没有扩大已发货 topology;
|
||||
2. 但它又补上了一类漂移控制:让 roadmap/progress 真值开始跟随同一套已检入 helper-entrypoint 证据,而不是只靠人工记忆。
|
||||
|
||||
### Priority 2:把备份分支的 Stage-C 工作视为 reintegration 候选
|
||||
|
||||
以下切片未来仍可能值得回灌,但都必须在当前 `main` 上重新证明:
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
date: 2026-05-20
|
||||
last_updated: 2026-06-06
|
||||
last_updated: 2026-06-09
|
||||
topic: unified-follow-through-matrix
|
||||
canonical: true
|
||||
---
|
||||
|
|
@ -22,7 +22,7 @@ From this checkpoint onward:
|
|||
|
||||
This matrix is grounded in:
|
||||
|
||||
1. live `origin/main` after the 2026-05-24 force rewrite, re-audited against the current `main` working tree on 2026-06-06 after the `1.9.2` release boundary plus the later post-release contract/evidence follow-through commits;
|
||||
1. live `origin/main` after the 2026-05-24 force rewrite, re-audited against the current `main` working tree on 2026-06-09 after the `1.9.2` release boundary plus the later post-release contract/evidence follow-through commits;
|
||||
2. prior current-main documents:
|
||||
- `docs/brainstorms/2026-05-07-cli-next-phase-planning.*`
|
||||
- `docs/brainstorms/2026-05-08-packaging-semantic-convergence-progress-and-next-steps.*`
|
||||
|
|
@ -37,6 +37,7 @@ Current execution baseline for this matrix update:
|
|||
3. after `7999a5f` (`test(local-kb): broaden stage-c fixture coverage`), that fixture lane also explicitly carries broader real-note/query diversity beyond the chapter-split showcase as current evidence instead of future intent;
|
||||
4. the matrix therefore treats local-KB, file selection, and chapter split as landed product contracts whose next work is evaluation depth, maintainer-example alignment, and packaging-boundary discipline.
|
||||
5. the current batch further closes maintainer example alignment onto real docs-vault paths: helper help, the bilingual capability matrix, and tests now jointly cover explicit research queries, cross-folder batch-title source paths, diagram-source retrieval, and bounded `topK` / `slidingWindowSize` overrides without widening the public CLI boundary.
|
||||
6. `7af2f9b` (`docs(progress): sync current-main helper proof truth`) is the current docs-sync baseline: it does not widen runtime behavior, but it does re-lock the canonical progress docs and the diagram roadmap to the same current-main helper-entrypoint truth.
|
||||
|
||||
## 3. Current Unified Matrix
|
||||
|
||||
|
|
@ -61,6 +62,7 @@ Current Batch-C alignment note:
|
|||
- the checked-in release dry-run create/repair path plus invalid-tag wrapper failures;
|
||||
- the chronicle refresh wrapper's no-op / override / git-failure paths;
|
||||
- the repo-saga sync/generation wrapper's sync-only stamp hit, active-lock refusal, isolated generation, and invalid-argument fast-fail behavior.
|
||||
8. The diagram-platform roadmap EN/ZH is now also part of this current-main truth set: it is expected to keep Task 0 as the packaging-boundary bottleneck, Task 2 as compatibility-surface convergence, and Task 3 as MermaidProcessor responsibility reduction instead of implying the platform is still unbuilt.
|
||||
|
||||
## 4. Reconfirmed Current-Main Register
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
date: 2026-05-20
|
||||
last_updated: 2026-06-06
|
||||
last_updated: 2026-06-09
|
||||
topic: unified-follow-through-matrix
|
||||
canonical: true
|
||||
---
|
||||
|
|
@ -22,7 +22,7 @@ canonical: true
|
|||
|
||||
本文基于以下事实建立:
|
||||
|
||||
1. 2026-05-24 force rewrite 之后的 live `origin/main`,并在 2026-06-06 基于 `1.9.2` 发货边界以及后续 post-release contract/evidence follow-through commits 重新审计当前 `main` 工作树;
|
||||
1. 2026-05-24 force rewrite 之后的 live `origin/main`,并在 2026-06-09 基于 `1.9.2` 发货边界以及后续 post-release contract/evidence follow-through commits 重新审计当前 `main` 工作树;
|
||||
2. 先前仍与当前主线相关的文档:
|
||||
- `docs/brainstorms/2026-05-07-cli-next-phase-planning.*`
|
||||
- `docs/brainstorms/2026-05-08-packaging-semantic-convergence-progress-and-next-steps.*`
|
||||
|
|
@ -37,6 +37,7 @@ canonical: true
|
|||
3. `7999a5f`(`test(local-kb): broaden stage-c fixture coverage`)之后,fixture lane 已把 chapter-split showcase 之外的真实 note/query 多样性纳入当前证明范围;
|
||||
4. 因此,本文把 local-KB、file selection 与 chapter split 视为已落地产品契约;下一步是评估深度、maintainer 示例对齐与 packaging 边界纪律,而不是继续做存在性重证。
|
||||
5. 当前批次继续把 maintainer example alignment 收口到真实 docs-vault 路径:helper help、双语 capability matrix 与测试现在共同覆盖 explicit research query、跨文件夹 batch-title source path、diagram-source retrieval,以及有界 `topK` / `slidingWindowSize` override;这仍是 maintainer-only 诊断面,不是 public CLI 扩面。
|
||||
6. `7af2f9b`(`docs(progress): sync current-main helper proof truth`)是当前 docs-sync 基线:它没有扩大 runtime 行为,但重新把 canonical progress 文档与 diagram roadmap 锁回同一套 current-main helper-entrypoint 真值。
|
||||
|
||||
## 3. 当前统一矩阵
|
||||
|
||||
|
|
@ -61,6 +62,7 @@ canonical: true
|
|||
- 已检入 release dry-run 的 create/repair 路径与非法 tag 的 wrapper 失败路径;
|
||||
- chronicle refresh wrapper 的 no-op / override / git-failure 路径;
|
||||
- repo-saga sync/generation wrapper 的 sync-only stamp 命中、active-lock refusal、隔离生成路径,以及非法参数 fast-fail 行为。
|
||||
8. diagram-platform roadmap 的中英文版本现在也属于这套 current-main truth:它们应继续把任务 0 写成 packaging 边界瓶颈,把任务 2 写成 compatibility-surface 收口,把任务 3 写成 MermaidProcessor 降责,而不是继续暗示平台尚未建成。
|
||||
|
||||
## 4. 当前主线已确认 register
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
date: 2026-05-28
|
||||
last_updated: 2026-06-06
|
||||
last_updated: 2026-06-09
|
||||
topic: mainline-progress-audit-and-next-level-direction
|
||||
canonical: true
|
||||
---
|
||||
|
|
@ -258,6 +258,24 @@ This is no longer only a principle statement. The repo now carries tracked mirro
|
|||
|
||||
Those mirrors are now also part of executable Stage-C evidence instead of remaining docs-only truth: the local-KB offline fixture and maintainer inspect examples now probe them through real retrieval paths.
|
||||
|
||||
### 2.9 Current `7af2f9b` docs-sync baseline
|
||||
|
||||
The current remote-synced baseline is now also explicit at the documentation layer: `7af2f9b` (`docs(progress): sync current-main helper proof truth`).
|
||||
|
||||
What that baseline means:
|
||||
|
||||
1. no shipped runtime or product behavior changed in that docs-sync commit;
|
||||
2. the canonical current-main progress docs now explicitly treat the release / chronicle / repo-saga helper-entrypoint proofs as landed evidence instead of future intent;
|
||||
3. the diagram-platform roadmap is now expected to describe:
|
||||
- Task 0 as packaging/source-build boundary truth;
|
||||
- Task 2 as compatibility-surface convergence rather than pipeline existence work;
|
||||
- Task 3 as MermaidProcessor responsibility reduction under a real-Obsidian verification bar.
|
||||
|
||||
Correct interpretation:
|
||||
|
||||
1. current-main truth maintenance now includes keeping roadmap/progress language synchronized with the checked-in helper-entrypoint evidence;
|
||||
2. document sync is now a regression boundary, not optional prose cleanup.
|
||||
|
||||
## 3. Deep Comparison Against Earlier Plan Language
|
||||
|
||||
### 3.1 What the 2026-05-25 audit now understates
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
date: 2026-05-28
|
||||
last_updated: 2026-06-06
|
||||
last_updated: 2026-06-09
|
||||
topic: mainline-progress-audit-and-next-level-direction
|
||||
canonical: true
|
||||
---
|
||||
|
|
@ -258,6 +258,24 @@ canonical: true
|
|||
|
||||
这些镜像现在也已经进入可执行的 Stage-C 证据面,而不再只是 docs-only 真值:local-KB 的离线 fixture 与 maintainer inspect 示例会沿真实检索路径探测它们。
|
||||
|
||||
### 2.9 当前 `7af2f9b` 的文档同步基线
|
||||
|
||||
当前远端同步后的基线,也已经在文档层被明确下来:`7af2f9b`(`docs(progress): sync current-main helper proof truth`)。
|
||||
|
||||
这个基线真正意味着:
|
||||
|
||||
1. 这次 docs-sync commit 没有改变任何已发货 runtime 或产品行为;
|
||||
2. canonical 的 current-main progress 文档现在会把 release / chronicle / repo-saga helper 的入口级证明明确视为已落地证据,而不是未来意图;
|
||||
3. diagram-platform roadmap 现在也应明确把:
|
||||
- 任务 0 读成 packaging/source-build 边界真值;
|
||||
- 任务 2 读成 compatibility-surface 收口,而不是 pipeline 是否存在;
|
||||
- 任务 3 读成带真实 Obsidian 验证门槛的 MermaidProcessor 降责工作。
|
||||
|
||||
正确解释:
|
||||
|
||||
1. 当前主线真值维护现在也包括让 roadmap/progress 语言持续跟上已检入 helper-entrypoint 证据;
|
||||
2. 文档同步现在已经是回归边界,而不是可选的 prose 清理。
|
||||
|
||||
## 3. 相对先前方案语言的深度对比
|
||||
|
||||
### 3.1 2026-05-25 审计现在低估了什么
|
||||
|
|
|
|||
|
|
@ -36,6 +36,17 @@ This also needs to be explicit:
|
|||
Deep comparison and next-step implementation note:
|
||||
- `docs/brainstorms/2026-05-08-packaging-semantic-convergence-progress-and-next-steps.md`
|
||||
|
||||
## 2026-06-09 Current-Main Truth Sync
|
||||
|
||||
This roadmap now also needs to track the current-main docs-sync baseline explicitly: `7af2f9b` (`docs(progress): sync current-main helper proof truth`) on clean `main...origin/main`.
|
||||
|
||||
What that correction means:
|
||||
|
||||
- Task 0 is still the primary architecture bottleneck. Current build/release/audit/docs truth still enforces single-entry `main.js` plus inline `srcdoc`, and `createRenderHostBundleBuildOptions()` remains candidate-only outside the production `esbuild.config.mjs` path.
|
||||
- Task 2 is no longer about proving that the spec-first generation pipeline exists. It is now a compatibility-surface convergence problem across legacy command IDs, workflow/sidebar labels, and experimental-era naming.
|
||||
- Task 3 is no longer about proving Mermaid subtype support. It is now about reducing `src/mermaidProcessor.ts` responsibility under the already-declared rule that every sub-slice must be verified in a real Obsidian session with saved-artifact inspection.
|
||||
- The checked-in release / chronicle / repo-saga helper entrypoints now have process-level regression proof, so Task 0 packaging evidence is repo-owned truth rather than maintainer memory.
|
||||
|
||||
---
|
||||
|
||||
**Goal:** Evolve Notemd from a single Mermaid-text generation path into an extensible diagram platform built around intent detection, structured specs, specialized renderers, and multi-format output inside Obsidian.
|
||||
|
|
@ -111,14 +122,14 @@ All existing provider configs, transport protocols, and settings UI remain uncha
|
|||
|
||||
| Task | Status | Current reality |
|
||||
|---|---|---|
|
||||
| Task 0 | Delivered with explicit limits | `src/rendering/webview/*` and `src/rendering/host/iframeRenderHost.ts` have landed with an inline `srcdoc` host. `scripts/audit-render-host-bundle.js`, the release workflow, and tests now lock the requirement that the render host must ship self-contained inside `main.js`. `esbuild.config.mjs` is still single-entry, so true heavy-runtime isolation is not complete. |
|
||||
| Task 0 | Delivered with explicit limits | `src/rendering/webview/*` and `src/rendering/host/iframeRenderHost.ts` have landed with an inline `srcdoc` host. `scripts/audit-render-host-bundle.js`, the release workflow, `scripts/lib/packaging-contract.js`, and tests now lock the requirement that the render host must ship self-contained inside `main.js`. `createRenderHostBundleBuildOptions()` remains candidate-only outside the production `esbuild.config.mjs` path, so true heavy-runtime isolation is still not complete. |
|
||||
| Task 1 | Delivered | `DiagramIntent`, `DiagramSpec`, validators, planner logic, and intent inference rules are on the mainline with tests. |
|
||||
| Task 2 | Partial (hard constraint) | The spec-first prompt and service pipeline are landed, and `src/main.ts`, `src/ui/NotemdSidebarView.ts`, and `src/operations/diagramCommandHostAdapter.ts` now route diagram generation/preview through canonical internal entrypoints (`generateDiagramCommand`, `previewDiagramCommand`, `runPreviewDiagramCommandWithHost`). Workflow/sidebar action metadata also now uses canonical action IDs (`generate-diagram`, `preview-diagram`) while older `*-experimental-diagram` action tokens are normalized as compatibility aliases. The remaining dual-track surface is therefore mostly compatibility-era public command IDs and labels rather than divergent execution chains. **Hard Constraint:** The legacy Mermaid prompt in `promptUtils.ts` was specifically tuned for the original scenario. Any extension or retirement MUST fully preserve the original scenario's usability. Cross-version stability takes priority over cleanup. |
|
||||
| Task 3 | Partial (hard constraint) | Mermaid subtype adapters and `mermaid.parse` validation are shipped. Flowchart pipe-label escaping moved into adapter emit, and a large share of note-directive parsing / edge-label helpers have started moving into `src/diagram/adapters/mermaid/legacyFixerUtils.ts`. `src/mermaidProcessor.ts` still owns too much legacy fixer work. **Hard Constraint:** Each sub-task MUST be individually verified in a real Obsidian instance before proceeding. Diagram output images MUST be saved, checked, and confirmed complete. Unit tests alone are insufficient to advance beyond any sub-task boundary. |
|
||||
| Task 4 | Delivered | Renderer registry/service, cache, inline host, iframe preview session, and unified preview modal are all landed. |
|
||||
| Task 5 | Delivered | `.canvas` output, baseline deterministic layout, save flows, and preview support are all landed. |
|
||||
| Task 6 | Delivered with explicit limits | Vega-Lite preview now boots through the iframe host with a target-specific sandbox and `srcdoc` bootstrap path. The remaining limit is packaging, not preview routing: the runtime still ships through the main bundle bridge until Task 0 grows a real multi-entry host asset strategy. |
|
||||
| Task 7 | Delivered with explicit limits | Theme, locale, SVG/PNG/source export, and the support matrix are aligned with current code. HTML still promises only iframe fallback preview and raw source save. The release workflow now also pins supported `actions/checkout@v6` and `actions/setup-node@v6` majors so the release path does not inherit the older Node 20 JavaScript-action deprecation warning. |
|
||||
| Task 7 | Delivered with explicit limits | Theme, locale, SVG/PNG/source export, and the support matrix are aligned with current code. HTML still promises only iframe fallback preview and raw source save. The release workflow now also pins supported `actions/checkout@v6` and `actions/setup-node@v6` majors so the release path does not inherit the older Node 20 JavaScript-action deprecation warning, and the checked-in release / chronicle / repo-saga helper entrypoints now have process-level regression proof for the current release-contract lane. |
|
||||
| Task 8 | Deferred by design | Advanced DSL / renderer evaluation remains intentionally postponed. |
|
||||
|
||||
### Cross-Validated Medium-Term Agenda
|
||||
|
|
@ -724,11 +735,11 @@ The following should not enter the mainline now:
|
|||
|
||||
If work continues now, it should be a convergence batch, not a new-target batch:
|
||||
|
||||
1. Finish Task 2's remaining command-architecture convergence
|
||||
2. Finish Task 3's remaining `mermaidProcessor.ts` responsibility reduction and legacy-fixer sunset boundary
|
||||
3. Revisit Task 0's remaining heavier-runtime packaging boundary so bridge-backed iframe preview can graduate to a real dedicated host bundle
|
||||
4. Keep strengthening Task 7 so the support matrix is bound more tightly to docs and release contracts
|
||||
5. Treat Task 0's smoke gate as a hard regression boundary; any move to standalone host assets must upgrade release/install design first
|
||||
1. Revisit Task 0's remaining heavier-runtime packaging boundary first, so current source/build/release/audit truth stays aligned before any broader claim widening
|
||||
2. Finish Task 2's remaining command-architecture convergence
|
||||
3. Finish Task 3's remaining `mermaidProcessor.ts` responsibility reduction and legacy-fixer sunset boundary
|
||||
4. Keep strengthening Task 7 so the support matrix, release contracts, and checked-in helper-entrypoint proof stay aligned
|
||||
5. Treat Task 0's smoke gate plus candidate-only build guard as hard regression boundaries; any move to standalone host assets must upgrade release/install design first
|
||||
|
||||
Reason:
|
||||
|
||||
|
|
|
|||
|
|
@ -36,6 +36,17 @@ notebook-navigator 全部交叉参考模式已完成(4/5 已实现,1 项延
|
|||
深度对比与下一步落地说明:
|
||||
- `docs/brainstorms/2026-05-08-packaging-semantic-convergence-progress-and-next-steps.zh-CN.md`
|
||||
|
||||
## 2026-06-09 Current-Main 真值同步
|
||||
|
||||
这份路线图现在也需要把 current-main 的 docs-sync 基线显式写出来:`7af2f9b`(`docs(progress): sync current-main helper proof truth`),并且该基线开始前仓库处于 clean 的 `main...origin/main` 状态。
|
||||
|
||||
这条校正的真实含义是:
|
||||
|
||||
- 任务 0 仍然是首要架构瓶颈。当前 build/release/audit/docs 真值仍然只承认单入口 `main.js` + inline `srcdoc`,并且 `createRenderHostBundleBuildOptions()` 继续保持在 production `esbuild.config.mjs` 之外的 candidate-only 状态。
|
||||
- 任务 2 已不再是“spec-first pipeline 是否存在”的问题,而是 legacy command ID、workflow/sidebar 文案以及 experimental-era naming 的兼容收口问题。
|
||||
- 任务 3 已不再是“Mermaid subtype 支持是否存在”的问题,而是带真实 Obsidian 会话与已保存产物检查门槛的 `src/mermaidProcessor.ts` 降责问题。
|
||||
- 已检入的 release / chronicle / repo-saga helper 入口现在都具备 process-level 回归证明,因此任务 0 的 packaging 证据已经是 repo-owned 真值,而不再只是维护者经验。
|
||||
|
||||
---
|
||||
|
||||
**目标:** 将 Notemd 从“LLM 直接生成 Mermaid 文本并事后修补”的单一路径,升级为“图形意图识别 + 中间规格 + 专门渲染 + 多格式输出”的可扩展图形平台,在 Obsidian 内稳定支持更多图像与图表类型。
|
||||
|
|
@ -110,14 +121,14 @@ Phase-2 需求快照:
|
|||
|
||||
| 任务 | 状态 | 当前现实 |
|
||||
|---|---|---|
|
||||
| 任务 0 | 已交付,但限制已明确 | `src/rendering/webview/*` 与 `src/rendering/host/iframeRenderHost.ts` 已落地,继续采用内联 `srcdoc` 方案;`scripts/audit-render-host-bundle.js`、release workflow 与单测已把“render host 必须由 `main.js` 自包含携带”的 smoke gate 固化下来,但 `esbuild.config.mjs` 仍是单入口,真正的 heavier-runtime isolation 仍未完成。 |
|
||||
| 任务 0 | 已交付,但限制已明确 | `src/rendering/webview/*` 与 `src/rendering/host/iframeRenderHost.ts` 已落地,继续采用内联 `srcdoc` 方案;`scripts/audit-render-host-bundle.js`、release workflow、`scripts/lib/packaging-contract.js` 与单测已把“render host 必须由 `main.js` 自包含携带”的 smoke gate 固化下来。`createRenderHostBundleBuildOptions()` 继续保持在 production `esbuild.config.mjs` 之外的 candidate-only 状态,因此真正的 heavier-runtime isolation 仍未完成。 |
|
||||
| 任务 1 | 已交付 | `DiagramIntent`、`DiagramSpec`、validator、planner 和意图推断规则均已进入主线,并有单测覆盖。 |
|
||||
| 任务 2 | 部分完成(硬性约束) | spec-first prompt 与 service pipeline 已落地,`src/main.ts`、`src/ui/NotemdSidebarView.ts` 与 `src/operations/diagramCommandHostAdapter.ts` 现在也已经改为通过 canonical 内部入口(`generateDiagramCommand`、`previewDiagramCommand`、`runPreviewDiagramCommandWithHost`)来收口图表生成与预览链路。workflow/sidebar action metadata 也已经切到 canonical action ID(`generate-diagram`、`preview-diagram`),而旧的 `*-experimental-diagram` action token 仅作为兼容别名在解析阶段被归一化。剩余双轨现在主要收缩为兼容期 public command ID 与文案,而不是内部执行链继续分叉。**硬性约束:** `promptUtils.ts` 中的旧版 Mermaid 提示词为原场景专门调优。任何扩展或退役必须完全保留原场景的可用性。跨版本稳定性优先于清理。 |
|
||||
| 任务 3 | 部分完成(硬性约束) | Mermaid subtype adapters 与 `mermaid.parse` 校验已落地,flowchart pipe-label escaping 已前移到 adapter emit,legacy note directive parsing / edge-attachment / note-node formatting 与一批 edge-label merge/quote/rewrite helper 也已开始下沉到 `src/diagram/adapters/mermaid/legacyFixerUtils.ts`;但 `src/mermaidProcessor.ts` 仍承担大量 legacy fixer 责任,adapter-driven fixer 拆分未完成。**硬性约束:** 每个子任务必须在真实 Obsidian 实例中独立验证后方可推进。图表输出图像必须保存、检查并确认完整正确。仅凭单元测试不足以跨越任何子任务边界。 |
|
||||
| 任务 4 | 已交付 | renderer registry/service、cache、inline host、iframe preview session 与统一 preview modal 已落地。 |
|
||||
| 任务 5 | 已交付 | `.canvas` 输出、基础 deterministic layout、保存与预览链路已落地。 |
|
||||
| 任务 6 | 已交付,但限制已明确 | Vega-Lite 预览现在已经改为通过 iframe host 启动,并配套 target-specific sandbox 与 `srcdoc` bootstrap 路径。剩余限制不再是预览路由,而是打包边界:在任务 0 落地真正的多入口 host 资产策略之前,运行时仍通过主 bundle bridge 提供。 |
|
||||
| 任务 7 | 已交付,但限制已明确 | 主题、locale、SVG/PNG/source export 和文档矩阵已对齐当前代码;HTML 目标仍只承诺 iframe fallback preview 与 raw source save。release workflow 也已补上 `actions/checkout@v6` 与 `actions/setup-node@v6` 的 action pin,避免继续背着旧版 Node 20 JavaScript-action 弃用告警。 |
|
||||
| 任务 7 | 已交付,但限制已明确 | 主题、locale、SVG/PNG/source export 和文档矩阵已对齐当前代码;HTML 目标仍只承诺 iframe fallback preview 与 raw source save。release workflow 也已补上 `actions/checkout@v6` 与 `actions/setup-node@v6` 的 action pin,避免继续背着旧版 Node 20 JavaScript-action 弃用告警;同时,当前 release / chronicle / repo-saga helper 入口也已经具备当前 release-contract 轨道所需的 process-level 回归证明。 |
|
||||
| 任务 8 | 按设计延后 | 高级 DSL / renderer 评估仍应继续推迟。 |
|
||||
|
||||
### 交叉验证后的中期议程
|
||||
|
|
@ -753,11 +764,11 @@ runtime boundary 现在已经比先前实质性前进:preview modal 不再优
|
|||
|
||||
如果现在继续推进,建议只做“收口批次”,不要回到“先加更多 target 再说”的路径:
|
||||
|
||||
1. 完成任务 2 剩余部分:diagram command architecture 收口
|
||||
2. 完成任务 3 剩余部分:`mermaidProcessor.ts` 降责与 legacy fixer sunset boundary
|
||||
3. 回到任务 0 的剩余 heavier-runtime packaging boundary,让 bridge-backed iframe 预览后续升级为真正独立的 host bundle
|
||||
4. 继续维护任务 7:把 support matrix 与 release/docs contract 绑定得更硬
|
||||
5. 把任务 0 的 smoke gate 当成回归边界,后续若引入独立 host 资产必须先升级 release/install 设计
|
||||
1. 先回到任务 0 的剩余 heavier-runtime packaging boundary,持续对齐当前 source/build/release/audit 真值,再考虑任何更宽的能力叙述
|
||||
2. 完成任务 2 剩余部分:diagram command architecture 收口
|
||||
3. 完成任务 3 剩余部分:`mermaidProcessor.ts` 降责与 legacy fixer sunset boundary
|
||||
4. 继续维护任务 7:把 support matrix、release contracts 与已检入 helper-entrypoint proof 绑定得更硬
|
||||
5. 把任务 0 的 smoke gate 与 candidate-only build guard 一起当成回归边界;后续若引入独立 host 资产必须先升级 release/install 设计
|
||||
|
||||
原因很直接:
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue