Skip to content

Releases

v0.3.4 — routing-cell failover

Choose a tag to compare

@yfwu2020 yfwu2020 released this 06 Nov 08:45

Why

The connection loaded fine, but long conversations could not send a single token. The OpenCode Zen Go gateway pins every request carrying the same x-opencode-session to one backend cell, and a cell short on prefill capacity answers 429 [prefill_cap_refused] in about a second. Retrying the same session id kept hitting the same cell, so the whole conversation failed while a new one worked.

Measured against the live gateway with one identical body:

Attempt Body Result
stuck session id ×3 250k chars 429 prefill_cap_refused in 1.2–2.2s, 3/3
three random ids 250k chars served 2/3 (one transient overloaded), 11–16s
fresh id 700k chars served in 62s
stuck session id 700k chars refused in 3.7s

What changed

One refusal now advances that conversation to <sessionId>#r<n>; the host's existing retry then lands on another cell, and later requests keep using the derived id so the new cell keeps its prompt cache.

  • healthy conversations keep their original id and cache affinity;
  • transient [overloaded] answers do not rotate;
  • rotations are bounded at 32 per session and tracked for at most 256 sessions;
  • README documents the behaviour and the per-provider retryPolicy knob for longer backoff.

Validation

27 tests pass, including three new ones: a refusal rotates once, a healthy stream never rotates, and an always-refusing endpoint stops at #r32. npm ci accepts the lockfile and the release tag agrees with 0.3.4.

v0.3.3 — DSH 0.2.2 compatibility

Choose a tag to compare

@yfwu2020 yfwu2020 released this 06 Nov 07:56

Why

DSH desktop upgraded to 0.2.2-rc.1, which the old engines.dsh: >=0.2.1-rc.1 <0.2.2-0 range rejected. The loader marked the bundle incompatible-version, inserted no rows, and the whole second Go connection disappeared from the app after the upgrade.

What changed

  • engines.dsh and the DSH peer ranges now read >=0.2.1-rc.1 <0.2.3-0, so 0.2.1-rc.x and 0.2.2-rc.x both load.
  • @deepseek-ai/schemastery peer widened to >=3.18.5 <3.20.0; DSH 0.2.2 ships 3.19.0.
  • Tests now run against @deepseek-ai/dsh-llm-pi-ai@0.2.2-rc.1; every public symbol this plugin imports still exists and behaves the same.
  • The fake host context used by the interleave test implements the cordis 4.1 waterfall hook that the native pi-ai adapter now calls while preparing request headers.

Plugin behavior, routes, stored credentials, saved model selections and manual-only model refresh are unchanged.

Validation

24 local tests pass against the 0.2.2-rc.1 packages (including the real PiAiAdapter header path and 38-model protocol matrix); npm ci accepts the refreshed lockfile; package-lock.json and the release tag agree on 0.3.3.

v0.3.2 — trusted npm publishing

Choose a tag to compare

@yfwu2020 yfwu2020 released this 17 Oct 10:27

Adds the GitHub Actions publish.yml workflow for npm Trusted Publishing (OIDC). Formal GitHub Releases now run version checks and all tests before publishing to npm latest. No npm token is stored in the repository or GitHub secrets.

This patch validates the trusted publisher binding; plugin behavior, saved model selections, credentials and manual-only model refresh are unchanged.

Validation: 24 local tests pass, matching/mismatched release-tag checks pass, and the distribution archive passes privacy checks.

v0.3.1 — npm distribution

Choose a tag to compare

@yfwu2020 yfwu2020 released this 17 Oct 09:32

Publishes OpenCode Go · 2 to npm as dsh-opencode-go-second@0.3.1.

Install with dsh plugin --profile desktop add dsh-opencode-go-second. The package repository metadata enables the community catalog to discover npm releases; the listing update removes the fixed GitHub tarball. Subsequent npm versions do not require a new catalog PR.

DSH compatibility remains 0.2.1-rc.1 / 0.2.1-rc.2. Saved model selections, credentials, provider isolation and manual-only model refresh are unchanged.

Validation: 24 offline tests pass; the 16-file distribution archive passes privacy checks and installs with the rc.1 host adapter deduplicated. No paid inference was performed.

v0.3.0 — DSH 0.2.1 compatibility

Choose a tag to compare

@yfwu2020 yfwu2020 released this 17 Oct 09:06

Updates OpenCode Go · 2 for DeepSeek Harness 0.2.1-rc.1 and 0.2.1-rc.2.

  • Moves compatibility metadata to the new engines.dsh field and accepts the tested 0.2.1 release candidates.
  • Updates the official DSH adapter peers to the 0.2.1 line and pi-ai to 1.1.0. Official packages are reused from the host.
  • Includes the new native stream idle watchdog; a regression test covers a stalled transport that ignores abort.
  • Preserves manual model refresh, saved model selections, independent credentials and per-conversation session headers.

Validation: all 24 offline tests pass on both DSH 0.2.1-rc.1 and 0.2.1-rc.2. The release tarball installs against the rc.1 host without duplicate adapter packages. Backend import, client registration, bundle contents and privacy scans pass. Desktop rc.1 hot activation and the saved model settings UI were checked. No paid inference was performed.

For DSH 0.2.0-rc.2, retain plugin v0.2.2.

v0.2.2

Choose a tag to compare

@yfwu2020 yfwu2020 released this 16 Oct 14:01

Adds distribution packaging and installation documentation for the independent OpenCode Go · 2 connection in DeepSeek Harness.

  • Includes backend, settings UI, bundle patch, and model metadata in a prebuilt tarball.
  • Declares official DSH packages as peer dependencies; verified with DSH 0.2.0-rc.2 and Node.js >=22.19.0.
  • Preserves manual model refresh only, with no scheduled or startup refresh.
  • Existing native providers and the first OpenCode Go connection are not modified.

Validation: 23 offline tests passed; the release tarball installed in a clean directory, and backend imports, client registration, bundle patch, and model data were checked. Real model availability depends on the OpenCode account and upstream service.

The archive excludes credentials, deployment records, logs, backups, local analysis output, and development-only migration tooling.