Tianyi Cui
4fecc54998
fix(runtime): close teardown gaps and simplify framing
2026-08-08 21:27:58 +08:00
Tianyi Cui
045e8462ee
fix(pty): drain public signals during close
2026-08-08 21:27:58 +08:00
Tianyi Cui
727546ce6d
fix(code-runtime): bound every subprocess frame hop
2026-08-08 21:27:58 +08:00
Tianyi Cui
7eedfda961
fix(pty): fence delayed signal prompts
2026-08-08 21:27:57 +08:00
Tianyi Cui
277870dac2
Revert "fix(pty): fence delayed signal prompts"
...
This reverts commit a78958eeeaf04a3acdf22ef8a26dec370661a51d.
2026-08-08 21:27:57 +08:00
Tianyi Cui
d6b3de6e0d
fix(pty): fence delayed signal prompts
2026-08-08 21:27:57 +08:00
Tianyi Cui
be3533fa19
fix(subprocess): clean runtime state after teardown failure
2026-08-08 21:27:57 +08:00
Tianyi Cui
0fec058a48
fix(pty): retain send ownership through cancellation
2026-08-08 21:27:57 +08:00
Tianyi Cui
4d63552d00
fix(lsp): preserve workspace cancellation reason
2026-08-08 21:27:57 +08:00
Tianyi Cui
098f826001
fix(subprocess): honor teardown and PATH semantics
2026-08-08 21:27:57 +08:00
Tianyi Cui
f61a4943bd
fix(lsp): preserve POSIX backslash paths
2026-08-08 21:27:57 +08:00
Tianyi Cui
71e0eeac40
fix(code-runtime): contain hostile boundary failures
2026-08-08 21:27:57 +08:00
Tianyi Cui
f84f63ccd7
test(runtime): finish zombie quiescence migration
2026-08-08 21:27:57 +08:00
Tianyi Cui
562cd154a8
docs(lsp): remove resolved URI limitation
2026-08-08 21:27:57 +08:00
Tianyi Cui
ea047cc634
test(subprocess): accept zombie quiescence
2026-08-08 21:27:57 +08:00
Tianyi Cui
06a9224904
fix(subprocess): retain failed terminal cleanup
2026-08-08 21:27:57 +08:00
Tianyi Cui
a95e01d8b0
fix(pty): detach cancellation before close drain
2026-08-08 21:27:57 +08:00
Tianyi Cui
6e5d711099
fix(lsp): cancel executable setup on disposal
2026-08-08 21:27:57 +08:00
Tianyi Cui
4d96ff40af
docs(lsp): align canonical output field
2026-08-08 21:27:57 +08:00
Tianyi Cui
f2a3cc450e
fix(lsp): retain drive syntax in UNC worlds
2026-08-08 21:27:57 +08:00
Tianyi Cui
3572c65d57
fix(pty): join asynchronous terminal operations
2026-08-08 21:27:57 +08:00
Tianyi Cui
d29c73ddd6
fix(subprocess): treat zombie-only groups as quiescent
2026-08-08 21:27:56 +08:00
Tianyi Cui
ea75333c92
fix(lsp): compare UNC paths case-insensitively
2026-08-08 21:27:56 +08:00
Tianyi Cui
f5f40c7403
fix(pty): discard pre-write readiness evidence
2026-08-08 21:27:56 +08:00
Tianyi Cui
587fff9fe7
fix(runtime): honor platform quiescence semantics
2026-08-08 21:27:56 +08:00
Tianyi Cui
4997fb219e
fix(lsp): preserve execution-world URI semantics
2026-08-08 21:27:56 +08:00
Tianyi Cui
3537665806
fix(subprocess): honor Windows environment key casing
2026-08-08 21:27:56 +08:00
Tianyi Cui
03f1c8eb43
fix(subprocess): absolutize relative PATH lookups
2026-08-08 21:27:56 +08:00
Tianyi Cui
a0200376a1
fix(pty): defer the first readiness poll
2026-08-08 21:27:56 +08:00
Tianyi Cui
65264f6c80
refactor(subprocess): share terminal lifecycle
2026-08-08 21:27:56 +08:00
Tianyi Cui
32bce339da
fix(runtime): close lifecycle teardown races
2026-08-08 21:27:56 +08:00
Tianyi Cui
c17727d43d
test(subprocess): cover terminal release cleanup
2026-08-08 21:27:56 +08:00
Tianyi Cui
e5f3a67363
fix(runtime): publish completion before pipe cleanup
2026-08-08 21:27:56 +08:00
Tianyi Cui
ac81165662
fix(runtime): close async cleanup and framing races
2026-08-08 21:27:56 +08:00
Tianyi Cui
16cac3b5af
fix(runtime): close remote cleanup and readiness races
2026-08-08 21:27:56 +08:00
Tianyi Cui
8917ff8ef4
refactor(runtime): compose consumers over fs and subprocess
2026-08-08 21:27:55 +08:00
Tianyi Cui
987d477cfc
Merge pull request #2066 from deepseek-harness/worktree/1737-1751-review-fixes
...
fix(web): keep Send beside subagent Stop
2026-08-08 21:23:49 +08:00
Tianyi Cui
d21917f4cf
refactor(subagent): resolve list tool inputs explicitly
2026-08-08 21:05:58 +08:00
Tianyi Cui
07fbc2cda8
test(subagent): execute control tools in ACP replay
2026-08-08 21:05:58 +08:00
Tianyi Cui
ce16cf1b3b
test(web): exercise interrupt with parent offline
2026-08-08 21:05:58 +08:00
Tianyi Cui
5f755d5717
fix(web): keep Send beside subagent Stop
2026-08-08 21:05:58 +08:00
Ziya
05cbc185f0
Merge pull request #1661 from deepseek-harness/agent/task-surface-rfc
...
docs: propose Task Surface for structured session interaction
2026-08-08 05:37:01 -07:00
hypatiamay
ede2510f52
Merge pull request #1751 from deepseek-harness/feat/1535-interrupt-tool
...
feat(subagent): let ancestors interrupt descendants
2026-08-08 20:35:43 +08:00
Yichen Jiang
2cea99409f
test(web): re-record goldens with the header preset label now rendering live
...
20 files, each +2 lines: the label icon and 标准模式 in the banner — the DOM
the label fix makes appear for sessions created in-tab, which these goldens
recorded the absence of.
2026-08-08 20:34:03 +08:00
ZiyaZhang
3a05ddec79
docs: compile the self-contained Task Surface model sketches
...
The doc-typecheck opt-out ratio gate now fails at 74/146 after merging
master. The model and branded-ID blocks are self-contained, so check
them as ordinary ts fences (72/146 remain opted out); re-record the
pairing sidecar.
2026-08-08 05:28:14 -07:00
Tianyi Cui
582fafee5a
test(snapshot): refresh subagent control schema pin
2026-08-08 20:25:41 +08:00
Yichen Jiang
66e9b01fbd
fix(tools,client): chain-mode resolution and a live preset label
...
modeFor read only the exact scope's layer, so a `code`-preset session
advertised the native catalog: the mode is declared on the preset's STANDING
scope, and the agent only parents to it. Nearest scope wins along the chain —
the mode decides what the model SEES, which is the class of fact the chain
inherits. Caught live (the model politely computed with bash and said
run_code was not in its list); the chain test pins it.
The client half of the label fix: the create echo and the session-added
frame's agentPreset now reach the session list (newest wins in the upsert —
every producer of the field reports the CURRENT composition), and a confirmed
blank-session switch publishes through the new ISessions.noteAgentPreset, so
the header label moves with the composition instead of waiting for a reload.
2026-08-08 20:19:00 +08:00
Yichen Jiang
c578ededa1
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
2026-08-08 20:16:58 +08:00
Yichen Jiang
3926e95c61
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
2026-08-08 20:16:58 +08:00
Yichen Jiang
132debb5fe
fix(apiproxy): echo the resolved agent preset on create and session-added
...
session.create's reply named only the id, and the session-added frame's
agentPreset — which the server already derives via sessionListFields — was
stripped by the wire schema it never joined. A client therefore could not
label a session it just created (or learned live) until the next full list
refresh: the header's preset label rendered nothing for exactly the sessions
made in this tab. The create reply is the commit point that knows the
RESOLVED composition (a caller that named none gets the default the header
recorded), so both carriers now say it.
2026-08-08 20:16:50 +08:00