docs: dsh 0.1.2 alpha: session-event format and settings API break, new Remote API cookbook - #18
Open
github-actions[bot] wants to merge 1 commit into
Open
docs: dsh 0.1.2 alpha: session-event format and settings API break, new Remote API cookbook#18github-actions[bot] wants to merge 1 commit into
github-actions[bot] wants to merge 1 commit into
Conversation
github-actions
Bot
force-pushed
the
docs/sync
branch
from
August 28, 2026 22:26
f804802 to
19eff56
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
August 30, 2026 16:46
19eff56 to
319f702
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
August 30, 2026 21:13
319f702 to
45dc86b
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
August 31, 2026 05:45
45dc86b to
d1da29c
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
August 31, 2026 14:01
d1da29c to
35b553e
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
August 31, 2026 22:55
35b553e to
79a0d8b
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 1, 2026 05:18
79a0d8b to
a27ef90
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 1, 2026 11:46
a27ef90 to
3f6b960
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 1, 2026 16:45
3f6b960 to
fd55fb9
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 1, 2026 21:07
fd55fb9 to
ee1a405
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 2, 2026 04:43
ee1a405 to
cc8e0aa
Compare
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 2, 2026 11:27
cc8e0aa to
c504889
Compare
…ew Remote API cookbook The dsh docs were refreshed to match a development snapshot that has moved well past the last tagged release: the npm page now tracks a new `0.1.2-alpha.2`→`.5` train (shipped daily 2026-08-30 → 09-02, `latest` still `0.1.1-rc.2`), and 46 mirrored pages were rewritten upstream with interface changes, not just wording. dsh is an unstable developer preview with no migration path, so plugin authors on the master/alpha line should expect to recompile and re-typecheck against these changes. - **Session event log format hardened.** Sequence positions are now branded types (`SessionSeq`, `SessionLogOffset`, `SessionSeqCursor`, `OptionalSessionSeq`) threaded through `SessionEvent`, `SurfaceOp`, and every `compaction/*` / `command/*` / session-surface type; event payloads gain an `ignorable?: true` skip marker (an unrecognized *required* event must now refuse reconstruction rather than be dropped); sessions track an `inheritedEventCount` fork-lineage cut; and `Session.events` is replaced by `snapshotEvents()` / `eventAt()` / `ownEvents()` / `isOwnSeq()`. Downstream plugins that merge custom event types or read the log will hit all of this. - **Settings plugin API changed shape.** The standalone `installSettingsSection(ctx, …)` helper and `settingsNamespace()` brand are gone; consumers now `ctx.inject(['settings'])` and call `ctx.settings.installSection(owner, ns, schema, entry, hooks)` (see the rewritten adding-a-settings-card cookbook). Namespace strings are validated as lowercase-hyphenated identifiers and remote failures now throw `RemoteError` with slash codes (`settings/conflict`, `settings/rejected`) instead of `TypertRemoteFailure` and kebab codes. - **New cookbook: adding a Remote API** (new page) — the five-step recipe for adding a `ctx.remote.<namespace>.<method>()` endpoint: `@Remote` declaration, one `RemoteError` code table merged into `RemoteErrorDetailsMap`, manifest generation, the typed client call, and Host/Client testing. Worth reading before any remote-call work. - **Remote/gateway config shifts.** The Typert gateway error taxonomy moved to `RemoteError` with `gateway/*` codes carried through unchanged; the session-controller adds a `coldBlankProbeMaxEvents` projection gate; the API-gateway WebSocket heartbeat default drops 30000 → 2000 ms. - **Package map churned** (`module-graph.md`, config-catalog): `agent-spine-demo` and `tool-subagent-report` are gone, `code-runtime-python` moved under experimental, and several plugins (`agent-instructions`, `agent-loop`, `agent-presets`) newly require `sessionProjections` — session projection callbacks and cached/cold snapshots now take an `inheritedEventCount` argument. - Also in this run (minor, not dsh): `.metadata.json` flags two older news pages (`news1226` DeepSeek-V3, `news251201` V3.2) as served-fallback-shell — the reverse of the previous clean fetch — so a future full refetch may gut them; file content is unchanged in this tree.
github-actions
Bot
force-pushed
the
docs/sync
branch
from
September 2, 2026 16:40
c504889 to
d1a6bca
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The dsh docs were refreshed to match a development snapshot that has moved
well past the last tagged release: the npm page now tracks a new
0.1.2-alpha.2→.5train (shipped daily 2026-08-30 → 09-02,lateststill0.1.1-rc.2), and 46 mirrored pages were rewritten upstream with interfacechanges, not just wording. dsh is an unstable developer preview with no
migration path, so plugin authors on the master/alpha line should expect to
recompile and re-typecheck against these changes.
types (
SessionSeq,SessionLogOffset,SessionSeqCursor,OptionalSessionSeq) threaded throughSessionEvent,SurfaceOp, and everycompaction/*/command/*/ session-surface type; event payloads gain anignorable?: trueskip marker (an unrecognized required event must nowrefuse reconstruction rather than be dropped); sessions track an
inheritedEventCountfork-lineage cut; andSession.eventsis replaced bysnapshotEvents()/eventAt()/ownEvents()/isOwnSeq(). Downstreamplugins that merge custom event types or read the log will hit all of this.
installSettingsSection(ctx, …)helper andsettingsNamespace()brand aregone; consumers now
ctx.inject(['settings'])and callctx.settings.installSection(owner, ns, schema, entry, hooks)(see therewritten adding-a-settings-card cookbook). Namespace strings are validated
as lowercase-hyphenated identifiers and remote failures now throw
RemoteErrorwith slash codes (settings/conflict,settings/rejected)instead of
TypertRemoteFailureand kebab codes.adding a
ctx.remote.<namespace>.<method>()endpoint:@Remotedeclaration,one
RemoteErrorcode table merged intoRemoteErrorDetailsMap, manifestgeneration, the typed client call, and Host/Client testing. Worth reading
before any remote-call work.
RemoteErrorwithgateway/*codes carried through unchanged; thesession-controller adds a
coldBlankProbeMaxEventsprojection gate; theAPI-gateway WebSocket heartbeat default drops 30000 → 2000 ms.
module-graph.md, config-catalog):agent-spine-demoand
tool-subagent-reportare gone,code-runtime-pythonmoved underexperimental, and several plugins (
agent-instructions,agent-loop,agent-presets) newly requiresessionProjections— session projectioncallbacks and cached/cold snapshots now take an
inheritedEventCountargument.
.metadata.jsonflags two older newspages (
news1226DeepSeek-V3,news251201V3.2) as served-fallback-shell —the reverse of the previous clean fetch — so a future full refetch may gut
them; file content is unchanged in this tree.