imccyu
689644463d
fix(client): keep conversation updates incremental
2026-08-23 16:28:20 +08:00
imccyu
dc92793f10
fix(client): align domain split with repository gates
2026-08-23 16:28:19 +08:00
imccyu
f13fb4daeb
docs(client): document split ownership
2026-08-23 16:28:18 +08:00
imccyu
be531688f3
refactor(client): migrate consumers and remove Runtime
2026-08-23 16:28:18 +08:00
imccyu
0ea9a456c0
refactor(workspace): move Client ownership into Workspace Controller
2026-08-23 16:28:16 +08:00
imccyu
956730a5fb
refactor(session): move Client ownership into Session Controller
2026-08-23 16:28:16 +08:00
imccyu
8f919cb9ac
test: ignore defensive Remote branches
2026-08-23 16:16:06 +08:00
imccyu
2d974b187e
perf(api-gateway): skip Remote output decoding
2026-08-23 16:16:06 +08:00
imccyu
4326dd4bca
fix(api-session): preserve presenter fast path
2026-08-23 16:16:06 +08:00
imccyu
d34be03f7b
fix: skip get proxy
2026-08-23 16:16:05 +08:00
imccyu
08d6a215c9
perf(api-session): reuse live tool call arguments
2026-08-23 16:16:05 +08:00
imccyu
24a610db74
fix(api): preserve migrated transport semantics
2026-08-23 16:16:05 +08:00
imccyu
ddcab34c0e
test(api): close stream transport coverage gaps
2026-08-23 16:16:05 +08:00
imccyu
7d21611391
test(api-gateway): cover clientless Remote event replay
2026-08-23 16:16:04 +08:00
imccyu
a49b265f88
docs: synchronize controller transport documentation
2026-08-23 16:16:04 +08:00
imccyu
e38982adc8
fix(client): satisfy stream lifecycle contracts
2026-08-23 16:16:04 +08:00
imccyu
5d17b6798d
fix(api-gateway): retry journal pages after reconnect
2026-08-23 16:16:03 +08:00
imccyu
1e0e827425
refactor(client-runtime): remove Session interaction consumers
2026-08-23 16:16:03 +08:00
imccyu
639dcef5d8
refactor(api-session): remove interaction transport
2026-08-23 16:16:03 +08:00
imccyu
e8ede58603
fix(api-session): bind history pages to follow cursor
2026-08-23 16:16:03 +08:00
imccyu
9b1069c234
docs: document controller Remote transport
2026-08-23 16:16:03 +08:00
imccyu
54d739cf53
chore(api): align controller assembly and package graph
2026-08-23 16:16:02 +08:00
imccyu
dcddaa1a6e
refactor(client): replace legacy Host event carriers
2026-08-23 16:16:02 +08:00
imccyu
ae25df3ac6
refactor(workspace): move APIs into Workspace Controller
2026-08-23 16:16:02 +08:00
imccyu
d26acfa2e3
refactor(session): move APIs into Session Controller
2026-08-23 16:16:02 +08:00
imccyu
3d6d595d79
feat(api-gateway): unify Remote streams and events
2026-08-23 16:16:01 +08:00
imccyu
aa6c361a97
release(dsh): 0.1.1-rc.2
2026-08-21 19:48:58 +08:00
imccyu
3ec5e8f8c4
release(dsh): 0.1.1-rc.1
2026-08-21 14:11:09 +08:00
pku-xht
84cbec28e9
Merge remote-tracking branch 'origin/master' into codex/localized-chinese-doc-links
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.zh.md
# .agents/notes/implemented/architecture/2026-06-18-shared-persistence-write-coordinator.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.zh.md
# .agents/notes/implemented/bug-fix/2026-07-29-pnpm-setup-runner-isolation.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-29-pnpm-setup-runner-isolation.zh.md
# .agents/notes/implemented/bug-fix/2026-08-18-request-image-payload-bound.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-18-request-image-payload-bound.zh.md
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-sandbox.zh.md
# .agents/notes/implemented/feature/2026-07-16-persistent-pty-sessions.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.zh.md
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.zh.md
# .agents/notes/implemented/feature/2026-07-27-web-subagent-conversations.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-permission-default-for-new-sessions.i18n.yaml
# .agents/notes/implemented/feature/2026-08-03-web-search-source-scroll.i18n.yaml
# .agents/notes/implemented/feature/2026-08-03-web-search-source-scroll.zh.md
# .agents/notes/implemented/feature/2026-08-04-claude-code-and-codex-subagent-backends.i18n.yaml
# .agents/notes/implemented/feature/2026-08-04-claude-code-and-codex-subagent-backends.zh.md
# .agents/notes/implemented/feature/2026-08-05-agent-teams.i18n.yaml
# .agents/notes/implemented/feature/2026-08-05-agent-teams.zh.md
# .agents/notes/implemented/feature/2026-08-11-workspace-sidebar-order-and-folding.i18n.yaml
# .agents/notes/implemented/feature/2026-08-15-product-subagent-noninteractive-permissions.i18n.yaml
# .agents/notes/implemented/process/2026-07-21-serial-cross-platform-ci-reference.i18n.yaml
# .agents/notes/implemented/process/2026-07-21-serial-cross-platform-ci-reference.zh.md
# .agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.i18n.yaml
# .agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.zh.md
# .agents/notes/implemented/process/2026-07-23-portable-required-pull-request-ci.i18n.yaml
# .agents/notes/implemented/process/2026-07-23-portable-required-pull-request-ci.zh.md
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.i18n.yaml
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.zh.md
# .agents/notes/implemented/testing/2026-07-30-web-browser-snapshot-ci-gate.i18n.yaml
# .agents/notes/implemented/testing/2026-07-30-web-browser-snapshot-ci-gate.zh.md
# .agents/notes/proposed/architecture/2026-07-27-session-projection-and-command-log.i18n.yaml
# README.i18n.yaml
# README.zh.md
# docs/architecture.i18n.yaml
# docs/architecture.zh.md
# docs/development.i18n.yaml
# docs/development.zh.md
# docs/persistence-catalog.i18n.yaml
# docs/persistence-catalog.zh.md
# docs/subsystems/README.i18n.yaml
# docs/subsystems/README.zh.md
# docs/subsystems/agent-team.i18n.yaml
# docs/subsystems/agent-team.zh.md
# docs/subsystems/client-modules.i18n.yaml
# docs/subsystems/client-modules.zh.md
# docs/subsystems/commands.i18n.yaml
# docs/subsystems/commands.zh.md
# docs/subsystems/persistence.i18n.yaml
# docs/subsystems/persistence.zh.md
# docs/subsystems/session-reference.i18n.yaml
# docs/tool-catalog.i18n.yaml
# docs/tool-catalog.zh.md
# docs/user/guide/providers.i18n.yaml
# docs/user/guide/providers.zh.md
# packages/README.i18n.yaml
# packages/README.zh.md
# packages/bundle/web-app/README.i18n.yaml
# packages/bundle/web-app/README.zh.md
# packages/client/README.i18n.yaml
# packages/client/README.zh.md
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.zh.md
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.zh.md
# packages/client/ui-primitives/README.i18n.yaml
# packages/client/ui-primitives/README.zh.md
# packages/client/ui-sidebar/README.i18n.yaml
# packages/client/ui-sidebar/README.zh.md
# packages/client/ui-workspace/README.i18n.yaml
# packages/client/ui-workspace/README.zh.md
# packages/context/README.i18n.yaml
# packages/context/README.zh.md
# packages/core/agent-loop/README.i18n.yaml
# packages/credentials/README.i18n.yaml
# packages/credentials/README.zh.md
# packages/experimental/agent-team/README.i18n.yaml
# packages/experimental/agent-team/README.zh.md
# packages/experimental/tool-agent-team/README.i18n.yaml
# packages/experimental/tool-agent-team/README.zh.md
# packages/host/frontend-static/README.i18n.yaml
# packages/host/frontend-static/README.zh.md
# packages/host/webserver/README.i18n.yaml
# packages/host/webserver/README.zh.md
# packages/interaction/commands/README.i18n.yaml
# packages/interaction/commands/README.zh.md
# packages/plan/plan-mode/README.i18n.yaml
# packages/plan/plan-mode/README.zh.md
# packages/sandbox/sandbox-local/README.i18n.yaml
# packages/sandbox/sandbox-local/README.zh.md
# packages/session/README.i18n.yaml
# packages/session/README.zh.md
# packages/session/session-persistence-sqlite/README.i18n.yaml
# packages/session/session-persistence-sqlite/README.zh.md
# packages/session/session-projection-cache/README.i18n.yaml
# packages/session/session-projection-cache/README.zh.md
# packages/shell/tool-pwsh/README.i18n.yaml
# packages/shell/tool-pwsh/README.zh.md
# packages/subagent/subagent-codex/README.i18n.yaml
# packages/subagent/subagent-codex/README.zh.md
# packages/subagent/subagent/README.i18n.yaml
# packages/subagent/subagent/README.zh.md
# packages/web/tool-web/README.i18n.yaml
# packages/web/tool-web/README.zh.md
# scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-08-20 19:15:33 +08:00
Yichen Jiang
fecfabcac4
fix(credentials): name reference update event explicitly
2026-08-20 17:58:39 +08:00
imccyu
97f4d4608b
test(gateway): pin the namespace atomic-visibility guarantee
2026-08-20 16:13:05 +08:00
imccyu
3ca4997cd2
test: cover gateway rollback and theme fallback branches
2026-08-20 16:13:05 +08:00
imccyu
156bd075a9
feat(webserver): structured index injection table and the client boot seams
...
Replace per-plugin tapIndex regex edits with pure-data IndexInjection rows
collected fresh per render over one webserver/index-inject event. One table,
two renderers: the served form renders rows into index.html; a static worker
form ships the same rows over its boot payload. tapIndex survives as the
raw-HTML escape hatch, applied after row rendering; client-modules and
ui-theme move to the event, and the manifest global renders as
globalThis["__DSH_BOOT__"].
The client boot chain gains the seams a pre-injected transport needs: the
module loader takes loadBundle from the transport global by default, HTTP
prefetch stands down when a transport owns bundle bytes, the web-app bundle
can decline frontend serving, the gateway client installs a namespace's
whole method group inside its fiber apply so a parked dependent never
observes the service without its methods, and the dynamic-code precheck
gates through new Function so hosts without a real node:vm keep the
define-time parse gate.
2026-08-20 16:13:04 +08:00
imccyu
f1f7dc36fa
release(dsh): 0.1.0-rc.8
2026-08-19 23:00:28 +08:00
pku-xht
8d3674695b
docs(i18n): localize Chinese internal links
2026-08-18 19:00:37 +08:00
creatixchu
7d19a6c2c7
Merge remote-tracking branch 'origin/master' into worktree/web-file-session-references
2026-08-17 20:46:35 +08:00
imccyu
bb4ca698d6
release(dsh): 0.1.0-rc.7
2026-08-17 18:47:02 +08:00
creatixchu
6bb79911ba
refactor(reference): serve discovery through typert Remote faces
...
Replace the legacy reference.* API Proxy domain with @Remote methods on the
owning services, following the typert gateway design master adopted on
2026-08-02 (message-feedback and plugin-inventory precedents):
- FileReferenceService and SessionReferenceResolver extend TypertRemoteService;
fileReferences/list and sessionReferenceResolver/candidates are unary Remote
methods cancelled through the reserved trailing signal, and the candidates
face attaches each candidate's canonical mention under the configured limit
- move the wire types to type-only ./types subpaths (FileReferenceCandidate,
SessionReferenceMentionCandidate) and export ./typert plus ./remote artifacts
- mount both contributions in the api-remotes client assembly; ui-reference
consumes ctx.remote instead of connection.api.references and registers zh/en
locale dictionaries for its sections and labels
- delete the reference.* routes, schemas, map rows, client stubs, and fixtures;
the connection fixture serves the Remote endpoints instead
- release deliverPrompt admission listeners when the agent is disposed with the
prepared prompt still pending, and cover the reference-* RpcError codes in
the schema spec
- add the missing tsconfig paths for the /grammar and /types subpaths (clean-
tree vitest could not resolve @deepseek-ai/dsh-file-reference/grammar)
- regenerate the cordis catalog, capability seams, and event matrix; update the
owning bilingual READMEs, Agent Notes, and the reference-composer golden
2026-08-17 18:35:30 +08:00
Yichen Jiang
9b0f6f9017
Merge remote-tracking branch 'origin/master' into worktree/web-file-session-references
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-25-web-command-surfaces-and-assembly.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-25-web-command-surfaces-and-assembly.md
# .agents/notes/implemented/architecture/2026-07-25-web-command-surfaces-and-assembly.zh.md
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.md
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.zh.md
# .agents/notes/implemented/feature/2026-07-27-web-subagent-conversations.i18n.yaml
# apps/cli/config/web.cordis.yml
# apps/cli/package.json
# apps/web/tests/scaffold.ts
# docs/capability-seams.md
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/client/connection/src/client/api.ts
# packages/client/connection/src/client/fixture.ts
# packages/client/connection/src/client/index.ts
# packages/client/runtime/src/client/contract/session.ts
# packages/client/runtime/src/client/sessions/session.ts
# packages/client/runtime/tests/session.client.spec.ts
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.md
# packages/client/ui-conversation/README.zh.md
# packages/client/ui-conversation/src/client/chat/ChatView.tsx
# packages/client/ui-conversation/src/client/chat/MessageItem.tsx
# packages/client/ui-conversation/src/client/chat/chat-flow.ts
# packages/client/ui-conversation/src/client/input/facade.ts
# packages/client/ui-conversation/src/client/input/hub.ts
# packages/client/ui-conversation/tests/apply-inject.client.spec.tsx
# packages/client/ui-conversation/tests/chat-branch-tails.client.spec.tsx
# packages/client/ui-conversation/tests/chat-view.client.spec.tsx
# packages/client/ui-conversation/tests/input-bar.client.spec.tsx
# packages/client/ui-conversation/tests/input-matrix.client.spec.tsx
# packages/client/ui-conversation/tests/input-scenarios.client.spec.tsx
# packages/client/ui-conversation/tests/skeleton.client.spec.tsx
# packages/client/ui-input-trigger/package.json
# packages/client/ui-input-trigger/src/types.ts
# packages/client/ui-jobs/README.i18n.yaml
# packages/client/ui-slash/README.md
# packages/client/ui-slash/README.zh.md
# packages/client/ui-subagent/README.i18n.yaml
# packages/client/ui-subagent/README.md
# packages/client/ui-subagent/README.zh.md
# packages/client/ui-subagent/package.json
# packages/client/ui-subagent/src/client/index.ts
# packages/client/ui-subagent/tests/browser-plugin.client.spec.ts
# packages/client/ui-subagent/tsconfig.json
# packages/context/session-reference/README.i18n.yaml
# packages/context/session-reference/README.md
# packages/context/session-reference/README.zh.md
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/session/README.i18n.yaml
# packages/core/session/README.zh.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/api/index.ts
# packages/host/apiproxy/src/api/rpc-map.ts
# packages/host/apiproxy/src/api/rpc.schema.ts
# packages/host/apiproxy/src/api/rpc.ts
# packages/host/apiproxy/src/api/sessions.ts
# packages/host/apiproxy/src/fetch/client.ts
# packages/host/apiproxy/src/fetch/handler.ts
# packages/host/apiproxy/src/index.ts
# packages/host/apiproxy/tests/client-handler.spec.ts
# packages/host/apiproxy/tsconfig.json
# pnpm-lock.yaml
# scripts/gen-cordis-catalog.ts
# scripts/gen-doc-graphs.ts
# scripts/verify-package-readme-model-experience.ts
# tsconfig.base.json
# tsconfig.client.json
# vitest.config.ts
2026-08-14 16:18:40 +08:00
imccyu
15148dbd9a
release(dsh): 0.1.0-rc.6
2026-08-13 19:52:05 +08:00
imccyu
abe560f81e
release(dsh): 0.1.0-rc.5
2026-08-13 18:49:33 +08:00
imccyu
8c1e8d9890
build(release): publish the dsh family publicly
...
Every release member now declares publishConfig.access: public, so the scope no
longer mixes levels: the 221 packages/*/* and apps/* manifests join the vendored
framework and the native packages.
check-workspace-constraints drops the per-sequence expectation and holds every
release member to public, which is what stops a member from drifting back.
Access is a property of the package, not of a version: the dsh packages already
published as restricted become world-readable at their next publication.
2026-08-13 18:49:32 +08:00
imccyu
8a954b2eca
release(dsh): 0.1.0-rc.3
2026-08-13 18:39:06 +08:00
imccyu
60b04b6ef7
release(dsh): 0.1.0-rc.2
2026-08-13 17:19:37 +08:00
imccyu
22ab3beac1
release(dsh): 0.1.0-rc.1
2026-08-13 16:22:33 +08:00
Tianyi Cui
c905c4694e
Adopt MIT for DSH packages
2026-08-13 13:07:24 +08:00
imccyu
3e8a1cfa33
release(dsh): 0.0.1-rc.5
2026-08-13 06:14:27 +08:00
imccyu
a90d9af1b2
release(dsh): 0.0.1-rc.4
2026-08-13 05:16:02 +08:00
imccyu
1e99f20963
release(dsh): 0.0.1-rc.3
2026-08-13 03:24:38 +08:00
imccyu
39f55a049f
fix: rebase
2026-08-13 01:59:32 +08:00