2696 Commits
Author SHA1 Message Date
imccyu f13fb4daeb docs(client): document split ownership 2026-08-23 16:28:18 +08:00
imccyu 3a23185edb chore(client): align split package graph 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 049170c6d0 refactor(interaction): move Approval and Question into UI owners 2026-08-23 16:28:17 +08:00
imccyu c7d8e32aec refactor(conversation): separate Conversation, Chat, and Trajectory owners 2026-08-23 16:28:17 +08:00
imccyu d231c8777a refactor(ui): add Session and Workspace React adapters 2026-08-23 16:28:16 +08:00
imccyu 1b535f611c refactor(client): extract Store and renderer Slot infrastructure 2026-08-23 16:28:16 +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 3728c0b13e test(client): cover reconnect and question scope paths 2026-08-23 16:16:05 +08:00
imccyu 18cf84d133 fix(client): materialize Agent scopes before list baseline 2026-08-23 16:16:05 +08:00
imccyu f494caca45 refactor(client): move pending interactions out of Session state 2026-08-23 16:16:04 +08:00
imccyu 30f43b9870 test(api-session): bind history probes to follow cursors 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 9ff067dfbd fix(client-runtime): close journals with session scopes 2026-08-23 16:16:03 +08:00
imccyu 2b2a45f30c fix(client-connection): release stream ownership on unload 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 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
Tianyi Cui c41c5f3959 Merge origin/master into todo-event-ownership-v2 2026-08-22 21:12:36 +08:00
Tianyi Cui a2b415096d refactor(todo): own todo event vocabulary 2026-08-22 21:10:02 +08:00
Tianyi Cui f964f4078c docs: remove rebase residue and hedge parser-swap regression
- drop the commit-message suffix left at the end of the ui-workspace zh README
- state parser-swap regressions as possible, not guaranteed
2026-08-22 20:35:11 +08:00
Tianyi Cui 750c7f7535 docs: address CoT review findings
- stop attributing the 45-case helper/Node divergence to the path port spec,
  which pins only the Node-facing port to Node
- keep the divergence measurement as provenance, without a dead owner
- fix the path corpus comment so it does not claim divergence from the spec
  that asserts equality
- drop the v2 generation stamp from the cordis mount fallback test
- restate the watcher refusal rationale in current-state terms
- re-record the ui-workspace bilingual pair after rebase
2026-08-22 20:35:11 +08:00
Tianyi Cui 17f85bdbcd docs: trim CoT leakage from post-purge prose
Remove dead design-session citations, change narration, indexical
stamps, and review-adjacent justification found by the
dsh-trim-cot-leakage recall batteries in prose that landed after the
last purge. Bilingual README pairs are re-recorded.
2026-08-22 20:35:11 +08:00
_Kerman 3cd80a6f3f Merge remote-tracking branch 'origin/xtr/session-format-migration' into xtr/message-tool-call-id
# Conflicts:
#	.agents/notes/implemented/architecture/2026-06-20-branded-ids.i18n.yaml
#	.agents/notes/implemented/architecture/2026-06-20-branded-ids.md
#	.agents/notes/implemented/architecture/2026-06-20-branded-ids.zh.md
#	packages/fs/tool-fs/tests/read-image.spec.ts
#	packages/llm/llm-deepseek/tests/adapter.e2e.ts
#	packages/llm/llm-deepseek/tests/serialize.spec.ts
#	packages/llm/llm-pi-ai/src/context.ts
#	packages/llm/llm-pi-ai/tests/context.spec.ts
#	packages/llm/llm-pi-ai/tests/convert.spec.ts
#	packages/llm/llm/src/message.ts
#	packages/llm/llm/tests/content.spec.ts
2026-08-22 16:03:48 +08:00
Tianyi Cui d72ff1f49a docs: harden chain-of-thought leakage audits 2026-08-22 13:39:00 +08:00
Tianyi Cui 934976732d docs: purge residual chain-of-thought leakage 2026-08-22 13:10:23 +08:00
Tianyi Cui 1d6f84ff42 test(ci): apply review feedback 2026-08-22 02:31:11 +08:00
Tianyi Cui b9869d1e97 test(ci): stabilize cross-platform gate baselines 2026-08-22 01:47:43 +08:00
Turtle 6b3e971805 docs: remove implementation narration from prose 2026-08-21 22:22:23 +08:00
imccyu 8081620a35 fix: loopback 2026-08-21 20:35:34 +08:00
imccyu 0bee546177 feat(util): mint UUIDs without crypto.randomUUID in every context 2026-08-21 20:35:34 +08:00
imccyu 3cc90952cc chore(gates): regenerate catalogs and keep repository gates green
Config catalog, module graph, event producer-consumer tables, and
third-party notices regenerate over the webworker surface; the oxlint
rule fingerprint and the ui-renderer NodeNext import face follow.
2026-08-21 20:35:33 +08:00
imccyu fd3112a23f feat(web): unify served and preview startup behind a boot-ready seam
The webserver renders a boot-readiness tail after the injection rows and
AppWebEntry.run awaits the __DSH_BOOT_READY__ deferred before reading any
injected state. Whichever bootstrap applies the injection table settles
the deferred - the served renderer resolves it inline, an asynchronous
bootstrap installs it ahead of the entry module and settles it with the
handshake - so both deployments run one startup chain and a failed
handshake surfaces on the boot page instead of proceeding on missing
globals.
2026-08-21 20:35:32 +08:00
imccyu aa6c361a97 release(dsh): 0.1.1-rc.2 2026-08-21 19:48:58 +08:00
Yichen Jiang e08be4df6f Merge remote-tracking branch 'origin/master' into worktree/web-textarea-refactor-991614 2026-08-21 17:10:03 +08:00
Yichen Jiang 73792a81b1 fix(ui-conversation): restore the folder glyph on composer folder references
The old backdrop overpainted a folder reference's trigger character with
IconFolderClose16; the Lexical rewrite kept the data-ref-appearance
attribute but nothing consumed it, so the composer showed a bare blue
token while the sent bubble carried the icon. A Lexical text node cannot
split out its trigger character for overpainting, so the glyph renders
as an icon prefix instead: a currentcolor mask of the same asset before
the intact literal token. The Lexical note's behavior line follows.
2026-08-21 17:09:07 +08:00
_Kerman 9ce7ef3e23 Merge remote-tracking branch 'origin/xtr/session-format-migration' into xtr/message-tool-call-id 2026-08-21 17:05:09 +08:00
creatixchu d4b24b5148 Merge remote-tracking branch 'origin/master' into worktree/image-management-strategy 2026-08-21 16:55:00 +08:00
imccyu 7ce85283b5 Revert "Merge pull request #2608 from deepseek-harness/fix/permission-copy-and-default"
This reverts commit d51f4106a2b0669d33e0f5dc1d5dcf21a764d313, reversing
changes made to 69ace51625b6ac665b2f2ec1e81005d5b055f152.
2026-08-21 16:21:13 +08:00
_Kerman a789637db6 refactor(llm): rename CallId to ToolCallId 2026-08-21 16:10:24 +08:00
creatixchu 72b204afa1 feat(images): expand source upload envelope 2026-08-21 15:06:11 +08:00
Yichen Jiang 339a12030d fix(web): project sent user text inline and fold wire references in queue rows
The user-bubble decorator rendered every plain run through the
block-level MessageText div, so a decorated single-line message broke
into one line per run and the space between two tokens rendered as a
blank line. The queue dock's read-only row printed row.preview verbatim,
showing the wire session form (@[label](dsh-session:...)) instead of a
readable label. Both predate the Lexical composer; the logged model text
was correct in both cases.

One shared inline projection (reference/user-text.tsx) now owns sent
user text for the bubble and the queue row: plain runs are spans with
white-space policy left to the consumer (bubble pre-wrap, queue nowrap),
and a highest-precedence rule folds the wire session form to its label
chip, shielding the URI from the bare-token scan. The queue edit field
keeps the literal sent text. user-text.client.spec pins the inline
guarantee and every fold rule; queue-actions.e2e locators move to
row-container matching (the projection adds one span layer).
2026-08-21 14:23:01 +08:00
imccyu 3ec5e8f8c4 release(dsh): 0.1.1-rc.1 2026-08-21 14:11:09 +08:00
Yichen Jiang b010c20703 Merge remote-tracking branch 'origin/master' into worktree/web-textarea-refactor-991614
# Conflicts:
#	packages/client/ui-conversation/src/client/skeleton/InputBar.tsx
#	packages/client/ui-conversation/tests/input-bar.client.spec.tsx
2026-08-20 23:27:33 +08:00