Files
dsh-context/docs/compatibility.md
T
Bowen Liang 48806646d8 test(compat): extend the seam matrix to the alpha.5 and rc.1 baselines
Add the two heads of the declared 0.1.2 lines as matrix baselines: the
preview window's head (dsh-v0.1.2-alpha.5, where the DSH STORE
latest-three compatibility window currently ends) and the next-channel
release candidate (dsh-v0.1.2-rc.1). Their seam faces verified identical
to alpha.2, so the generation's client faces collapse into one shared
CLIENT_0_1_2 constant.

The new baselines surfaced a real staging drift: since 0.1.2-alpha.3 the
session-projection sources import SessionLogOffset/SessionSeq from
@deepseek-ai/dsh-session as runtime values, so the compat driver now
installs each baseline's own vendored dsh-session release next to cordis
(Baseline.session).

The release workflow fetches the two new baseline tags before testing.

docs/compatibility.md records the per-release verification evidence,
including the 2026-09-03 disposable-profile install/uninstall matrix
across 0.1.1-rc.2, 0.1.2-alpha.3/4/5 and 0.1.2-rc.1 (ref
AI-Scarlett/DSH-Store#439).
2026-09-03 23:12:19 +08:00

2.8 KiB

Compatibility

dsh-context declares per-release compatibility with @deepseek-ai/dsh in its package manifest (dsh.compatibility.dshReleases). This page records what is actually verified for each declared release, and how.

Last verified: 2026-09-03 (plugin dsh-context@0.41.2 source tree).

Supported dsh releases

dsh release npm channel Declared Automated seam matrix Disposable-profile install / uninstall
0.1.1-rc.2 latest (stable) compatible ✅ baseline v0.1.1-rc.2 ✅ install OK → 1 composed row → uninstall OK → 0 rows
0.1.2-alpha.2 — compatible ✅ baseline v0.1.2-alpha.2 not run (covered by the seam matrix at its tag)
0.1.2-alpha.3 — compatible same generation, bracketed by the alpha.2 / alpha.5 baselines ✅ install OK → 1 composed row → uninstall OK → 0 rows
0.1.2-alpha.4 — compatible same generation, bracketed by the alpha.2 / alpha.5 baselines ✅ install OK → 1 composed row → uninstall OK → 0 rows
0.1.2-alpha.5 alpha (preview) compatible ✅ baseline v0.1.2-alpha.5 ✅ install OK → 1 composed row → uninstall OK → 0 rows
0.1.2-rc.1 next compatible ✅ baseline v0.1.2-rc.1 ✅ install OK → 1 composed row → uninstall OK → 0 rows

What each check means

  • Automated seam matrix — part of this repository's pnpm test (the compat vitest project). For every baseline tag it stages the harness's REAL sources at that tag, boots the plugin's built host entry into that tag's actual SessionProjectionRegistry on the cordis release the line vendors, and probes the tag's client seams (slots, finalized-nodes seat, image loader, history face/envelope, markdown chrome, platform module table, durable-event vocabulary, settings namespace). Definitions live in tests/baselines.ts; the release workflow fetches the pinned baseline tags before testing.
  • Disposable-profile install / uninstall — for each release, that exact dsh CLI version was installed from npm into a temporary DSH_HOME (the real ~/.dsh is never touched), then:
    1. dsh plugin --profile <disposable> add dsh-context — install OK;
    2. dsh --profile <disposable> --dump-config — the bundle's - id: dsh-context row composes into the effective configuration (exactly 1 row);
    3. dsh plugin --profile <disposable> remove dsh-context — uninstall OK, dump-config back to 0 rows.

Scope

These checks prove source-level seam compatibility and disposable-profile install/start-composition/uninstall per release. They are not a claim of full web-app runtime acceptance on a real Profile — visible UI behavior depends on the harness generation and the browser half, which the seam matrix approximates from the tag's sources.