F7.1: intra-diagram mermaid diffing (#22) #28

Merged
benstull merged 10 commits from f7.1-intra-diagram-mermaid-diff into main 2026-06-11 23:36:58 +00:00
Showing only changes of commit 4c4be84f37 - Show all commits
+28
View File
@@ -0,0 +1,28 @@
# Manual smoke — F7.1 intra-diagram mermaid diffing (#22)
Webview SVG rendering isn't covered by automated E2E (sealed sandbox, §6.8), so
verify the rendered colors by hand once. The host-side augmentation (the styling
directives injected into the mermaid source) *is* covered by unit + host E2E; this
smoke confirms mermaid actually paints them.
1. Open a markdown doc with a flowchart:
```mermaid
flowchart LR
A[Start] --> B[Parse]
B --> C[Emit]
```
2. Run **Cowriting: Show Track-Changes Preview** (`ctrl+alt+r`). Pin the baseline
(**Cowriting: Pin Diff Baseline**).
3. Edit the diagram: change `B[Parse]` → `B[Parse+Lint]`, add `B --> D[Validate]`,
and delete the `B --> C` edge and the `C[Emit]` node.
4. **Expect** in the preview: `B` outlined amber (changed), `D` green (added),
`C` shown as a faded dashed ghost (removed) with a dashed grey ghost edge, and
a legend `added · changed · removed` beneath the diagram.
5. Repeat with a `sequenceDiagram`: add a message (green `rect` band), remove one
(grey ghost band, message still visible), confirm a removed participant still
appears.
6. Change a diagram to a `classDiagram` and confirm it still shows the v1
whole-block "changed" badge (graceful fallback, INV-30) — no error, no broken
render.