Repository navigation
[0.2.0] — 2026-10-04
Ported to the review surface dsh 0.2 ships. Breaking: /review no longer
opens the pinned Changes page, because dsh 0.2 removed it along with per-chunk
Keep/Reject, the working-tree revert, and the rejection note that reached the
model. Nothing on the 0.2 side reverts a change behind the agent's back.
Changed
/reviewnow opens the newest recorded turn's changed files in the
right sidebar, each with its side-by-side or unified comparison. That view is
thechanges-reviewtab type owned by@deepseek-ai/dsh-client-ui-deliverables.- The command is offered only while all three of its preconditions hold: the
comparison view is registered, the Session's right column is mounted, and the
Session holds a turn whose changes the recorder announced.isMounted(), which
dsh 0.2 removed from the right-sidebar service, is replaced by the
mounted-Session snapshot. - The
dsh-change-reviewSkill was rewritten for the 0.2 record: the turn, not
the tool call, is the unit the User reviews; only top-level turns are recorded,
so a subagent's edits never reach the diff; comparisons live only while the
Session lives; and nothing is reverted, so a comment on a change means the
change is still in the file. It no longer teaches a rejection contract that
0.2 cannot honour. - The pack finds the turn's coordinates by reading the Session's own loaded event
window (ctx.sessions.binding(sessionId).eventSource) instead of importing the
changed-files constant.dsh.client.externalis therefore empty, and the built
browser bundle has no dependency on any other dsh package — the whole
cross-package surface is restated insrc/protocol.tsand pinned by tests.
Added
src/protocol.ts— the one module that restates the surface this pack does not
own (the tab kind, theworkspace/changesevent, and the
dsh-resource://changes-review/session/<sessionId>/<seq>/<turn>address), with
tests/protocol.spec.tsasserting each restated fact so an upstream rename
fails loudly instead of turning/reviewinto a silent no-op.- Tests for the event-window scan, the three availability preconditions, the
address encoding, and the refusal of an announcement whose payload names no
turn.
Removed
- The dependency on
@deepseek-ai/dsh-client-ui-sidebar-documentpreviewand its
CHANGES_KIND, which dsh 0.2 deleted.
Notes
- 0.1.x remains the release for a dsh 0.1.5 build, where the Changes page and
keep/reject still exist. The README's compatibility table states which pack
drives which dsh.