Skip to content

Releases

v0.3.10

Choose a tag to compare

@shaomingbo shaomingbo released this 24 Sep 09:07

Fix: installer default source was pinned to v0.3.7 (default entry installed the old version); now generated from the package version with an identity guard test. Installer verified matrix now includes dsh 0.1.7-alpha.1 (web/base 0.1.7-alpha.1). Users of v0.3.8/v0.3.9: reinstall with the default entry to get v0.3.10.

v0.3.9

Choose a tag to compare

@shaomingbo shaomingbo released this 24 Sep 08:35

Visualization plugin: render vega-lite/mermaid/diagram fenced blocks.

dsh-visualization 0.3.6

Choose a tag to compare

@shaomingbo shaomingbo released this 14 Sep 09:43

json-table hardening

  • Concrete failure causes: an invalid json-table body no longer fails with a generic message. The error card now shows a localized cause line (zh: 失败原因:… / en: Cause: …) with the JSON parser's own message (e.g. Expected ':' after property name in JSON at position 13), or an accurate shape description (e.g. found number at index 0).
  • New accepted shape — row arrays with a leading header row: [["Column"],["Value"]] (first row = header, the same convention as csv); ragged rows are padded or truncated to the header width. Arrays of flat objects and the explicit {columns, rows} object remain accepted.
  • Model guidance updated: the ui:data-table-fences system-prompt section documents the three shapes and bans brace-comma pseudo-objects at the source.
  • Installer default source and README pinned tags move to v0.3.6.

Verified against dsh 0.1.2-alpha.3 / 0.1.5-rc.1 / 0.1.5-rc.2 (installer matrix; host web/base 0.1.2-rc.1 and 0.1.5-rc.2). Isolated acceptance: official CLI install on a reserved lab slot, byte-identity between the installed bundle and the packed candidate, factory-execution + react-dom render behavioral evidence (7/7), snapshot/verify drift check unchanged, and an independent final review that re-ran the parser tests (17/17).

Tag commit: 1cefc898dcb469b57e56966f3342c7d510189466

0.3.5 — fix every visualization fence on DSH 0.1.5 Hosts

Choose a tag to compare

@shaomingbo shaomingbo released this 12 Sep 08:23

Root cause

The published 0.1.5 frontends wrap the fence <pre> in a [data-code-block-content] seat inside md-code-block, so the language banner is the seat's previous sibling instead of the <pre>'s. The legacy DOM adapter — the only renderer seam on Hosts that lack the conversation.chat.assistant.codeBlock slot — resolved the banner with pre.previousElementSibling, which is null in that markup, so it returned no target for every code block and kept the raw source visible. Data tables (csv, tsv, json-table), Mermaid, Vega-Lite, and dsh-svg were all affected, and because the adapter fails open nothing was logged.

Fix

  • Resolve the claim anchor from the md-code-block shell, prefer the [data-code-block-banner] seat for the fence language, and accept both Host generations: the pre-0.1.5 markup (banner and <pre> as siblings) and the 0.1.5 markup (banner plus a [data-code-block-content] seat wrapping the <pre>).
  • Regression coverage: a real code-block DOM fixture captured from a running 0.1.5-rc.2 Web GUI, plus a nested-seat case and a fail-open case. 81 tests pass.
  • The verified installer matrix now includes 0.1.5-rc.2 (exact versions only: 0.1.2-alpha.3, 0.1.5-rc.1, 0.1.5-rc.2).
  • lib/ is rebuilt from src/ (bundled CSS-module class hashes are regenerated by the build).

Verified

  • 0.1.5-rc.2 Host (legacy DOM adapter, candidate build): csv renders the data table and Mermaid renders its preview; the Host block is hidden only after a valid preview exists.
  • 0.1.2-rc.1 Host: the pre-0.1.5 sibling markup still claims and renders — no regression on the previous generation.

Install or upgrade

npx --yes github:shaomingbo/dsh-visualization#v0.3.5

Restart DSH and hard-refresh the Web GUI afterwards.

dsh-visualization 0.3.4

Choose a tag to compare

@shaomingbo shaomingbo released this 11 Sep 01:55

Installer matrix includes exact dsh 0.1.5-rc.1 (and 0.1.2-alpha.3). Prefer this over v0.3.3. Does not claim 0.1.5-*.

npx --yes --ignore-scripts github:shaomingbo/dsh-visualization#v0.3.4

v0.3.2 — uninstall compatibility with pnpm 11

Choose a tag to compare

@shaomingbo shaomingbo released this 10 Sep 09:08

Fixed

Live verification of the v0.3.1 uninstall loop found that pnpm 11 rejects remove --ignore-scripts (unknown option), so the idempotent uninstall could not complete on the verified matrix.

The installer now passes the config-form flag --config.ignore-scripts=true to both dsh plugin add and dsh plugin remove — accepted by pnpm add and remove alike, keeping lifecycle scripts disabled either way.

Verified live against dsh 0.1.2-alpha.3 + pnpm 11.9.0 in an isolated DSH_HOME: fresh install, idempotent install, read-only status, uninstall, and idempotent uninstall. Bundle code unchanged.

Install

npx --yes github:shaomingbo/dsh-visualization#v0.3.2

v0.3.1 — installer fix-forward (official dsh plugin path)

Choose a tag to compare

@shaomingbo shaomingbo released this 10 Sep 09:04

Fixed

Post-release verification of v0.3.0 in a clean environment surfaced an installer defect: on a machine without an existing DSH profile it crashed with a raw ENOENT, and it edited the profile manifest directly instead of using the host's public management command.

The v0.3.1 installer:

  • delegates install/uninstall to the official dsh plugin --profile <name> add/remove <source> --ignore-scripts (profile initialization and bundle-list reconciliation stay with the host CLI);
  • gates on the verified dsh CLI version (0.1.2-alpha.3, with DSH web/base 0.1.2-rc.1) and fails with guidance — changing nothing — when dsh is missing or unverified;
  • judges outcomes by exit status plus the profile-manifest postcondition; status stays read-only and clean on missing or malformed profiles.

Verified in an isolated DSH_HOME: fresh-profile install, idempotent re-install, read-only status, idempotent uninstall, and guidance failures (missing / unverified / failing CLI).

The bundle code is unchanged from v0.3.0; only bin/install.js, tests, and docs changed.

Install

npx --yes github:shaomingbo/dsh-visualization#v0.3.1

⚠️ Known issue (fixed in v0.3.2): on the verified matrix (pnpm 11), the v0.3.1 uninstall path fails because pnpm 11 rejects remove --ignore-scripts. Use v0.3.2 — the bundle code is identical.

v0.3.0 — dsh-svg static channel + dsh-diagram-design skill

Choose a tag to compare

@shaomingbo shaomingbo released this 10 Sep 08:59

Highlights

  • New dsh-svg static SVG channel: single SVG root protocol, independent security policy (size limits enforced before any XML parsing, structural validation, allowlist-driven ID rewriting with marker/IDREF integrity, full-coverage numeric grammar with coordinate and percent bounds, output re-validation), preview claim gated on decoded images and mount liveness.
  • dsh-diagram-design skill (bundled provider): adapted for DSH over pinned upstream cathrynlavery/diagram-design @ 562dbdf (MIT), with engineering-fidelity rules, system font stacks, and unitless line-wrap guidance. See skill/dsh-diagram-design/PROVENANCE.md.
  • Rebuilt lib/ artifacts from source via rolldown; installer pinned to github:shaomingbo/dsh-visualization#v0.3.0.

Install

npx --yes github:shaomingbo/dsh-visualization#v0.3.0

Restart DSH and hard-refresh the GUI afterwards. dsh-svg renders through the existing visualization plugin (Mermaid stays the default for ordinary diagrams; vega-lite for numeric charts).

Verification

  • 69/69 tests, npm run check, git diff --check, npm pack --dry-run (34 files) — all green on release commit 03ab68b.
  • Candidate sha256 e6adc624bbb36bb4ee3763e9697bdd75e857e2a7a3dd9dc7d5ac19b3bda12f6f installed and browser-verified in an isolated lab environment (host web/base 0.1.2-rc.1, CLI 0.1.2-alpha.3).

⚠️ Installer known issue (fixed in v0.3.1): the v0.3.0 installer crashes on machines without an existing DSH profile and bypasses the official dsh plugin management command. Use v0.3.1 instead — the bundle code is identical.

dsh-visualization v0.2.7

Choose a tag to compare

@shaomingbo shaomingbo released this 30 Aug 13:20

Release metadata alignment for Plugin Center Catalog v2. Pins the no-argument installer, bilingual documentation, manifest assertions, and help contract to v0.2.7. Runtime rendering behavior is unchanged from v0.2.6; all 35 tests pass.

dsh-visualization v0.2.6

Choose a tag to compare

@shaomingbo shaomingbo released this 30 Aug 00:28
  • Show a neutral "rendering…" status for offscreen lazy previews instead of the failure label, so unscrolled diagrams no longer read as "无法安全渲染此 Mermaid 图表" before their first render attempt.
  • Reserve the failure label for post-attempt errors; real Mermaid parse failures keep their detailed message.
  • Apply to both Mermaid and Vega-Lite frames.
  • All existing Mermaid, table, and Vega-Lite behavior unchanged.