Commit Graph
1965 Commits
Author SHA1 Message Date
Tianyi Cui d488330ba4 fix(rebase): migrate the replayed E2B branch onto the rebased parent
The linear replay carried old-lineage content over parent-owned files;
this checkpoint restores them and adapts the branch to the parent's
post-rebase seam:

- restore all pty/lsp/subprocess/code-runtime surfaces to the parent's
  exact content (this branch claims none of them) and drop the net-zero
  code-runtime-e2b/pty-e2b/lsp-e2b residue and its registrations
- widen serializeRemoteEnvironment to the seam's NodeJS.ProcessEnv
  tombstone contract: an explicit undefined removes an ambient entry
- migrate the two E2B fixture Agent stubs to the Inbox-model interface
  and Session.create
- re-apply the branch's gen-doc-graphs roles, THIRD_PARTY_NOTICES e2b
  row, and packages/README group row (trimmed to the doc budget);
  regenerate catalogs and re-record bilingual pairings
2026-08-08 22:19:13 +08:00
Tianyi Cui 2abc9823e7 refactor(e2b): compose portable runtime consumers 2026-08-08 22:19:11 +08:00
Tianyi Cui e64d40837c refactor(e2b): group remote providers 2026-08-08 22:19:10 +08:00
Tianyi Cui 6667102890 Add E2B PTY, LSP, and code runtime providers 2026-08-08 22:19:10 +08:00
Tianyi Cui e7b682f1f6 feat(e2b): add remote runtime providers 2026-08-08 22:19:10 +08:00
Tianyi Cui fbceb8dcd5 fix(pty-local): restore the session-resolved workspace policy
The linear replay resurrected the July spawn path: mode folded inline
and both confinement and the default cwd fenced to the deployment
workspaceRoot. Master (and the pre-rebase merge result) resolve the
policy once per spawn — resolve({ session }) — so session.header.cwd
is both the workspace-write boundary and the default shell cwd, as the
README already states. Restores the single resolve, threads the policy
through spawnArgv and the cwd fallback, re-expresses master's
session-root test on the terminal spec, and pins the recorded confine
policy in the explicit-cwd test.

Also from the same review round: the Python SDK exe build stages
pty.node from subprocess-local (node-pty's home since the relocation),
and fs-local's README counts the seam's eleven primitives.
2026-08-08 21:28:00 +08:00
Tianyi Cui d070129622 fix(constraints): follow the spawn-helper relocation to subprocess-local
The workspace-constraints allowlist pinned scripts/ensure-spawn-helper.mjs
to dsh-pty-local; this branch relocates the helper (with node-pty
ownership) into dsh-subprocess-local, so the published-files expectation
moves with it.
2026-08-08 21:27:59 +08:00
Tianyi Cui 18ab9f6db2 fix(rebase): migrate the replayed stack onto current master APIs
The linear replay carried each commit's own lineage, so this checkpoint
restores the master-owned surfaces the conflicted regions clobbered and
migrates branch-owned code to master's post-rebase APIs:

- rebuild subprocess-local spawn.ts on master's tree-exit-observer
  machinery, keeping the branch's win32 childEnv key semantics and the
  Linux zombie-quiescence probe; the zombie test reaps its survivor
  directly since a confirmed-absent verdict is a permanent
  no-more-signals boundary
- migrate pty-local test stubs to the Inbox-model Agent interface,
  Session.create, runnerFailureRules, and the new turn/start payload
- implement the seam's resolveExecutable/spawnTerminal abstracts in the
  new pwsh-local and tool-fs-search test fakes
- restore code-runtime, atomic-write, pwsh-local, and app-boot to
  master's exact content (the net-zero code-runtime churn is pruned
  from this history) and drop rename-detection graft debris
- re-apply the PR's architecture rows and execution-world paragraph,
  re-record bilingual pairings, regenerate catalogs, and reconcile the
  lockfile
2026-08-08 21:27:59 +08:00
Tianyi Cui 4d5345794d refactor(code-runtime): remove subprocess backend 2026-08-08 21:27:59 +08:00
Tianyi Cui 68ccf50a77 refactor(code-runtime): generate shared subprocess runner 2026-08-08 21:27:58 +08:00
Tianyi Cui 8917ff8ef4 refactor(runtime): compose consumers over fs and subprocess 2026-08-08 21:27:55 +08:00
Hypatia May 33c4d5a164 chore(docs): report the first stale catalog line 2026-08-08 20:02:37 +08:00
Hypatia May d769d3cbb7 feat(subagent): let ancestors interrupt descendants
interrupt_agent(agent_id) passes the calling agent as the ancestor
authority for ctx.subagents.interrupt(); the service verifies live
registry identity and recorded lineage, so a direct child or deeper
descendant stops with the same generic parameter while send_message keeps
its exact-direct-parent authority.

Discovery: list_agents gains an optional scope. descendants walks the new
SubagentService.listDescendants() — one lineage trace flattened in stable
pre-order across ordinary and one-shot intermediates, each entry carrying
its verified parentId and depth — and every status now comes from the
live Agent registry (running/idle/complete).

Refs #1535
2026-08-08 20:02:37 +08:00
Hypatia May 57e9e6977c docs(subagent): record the public interrupt in the continuation contract docs
The continuable-subagent core-data page and the continuation lifecycle
Agent Note claimed no public subagent cancellation existed; interrupt()
is now that one public stop. Both pages and their Chinese counterparts
state the shipped contract and link the owning interrupt note.

Refs #1535
2026-08-08 20:02:36 +08:00
Hypatia May 66a21a38b1 feat(subagent): add current-turn interrupt RPC
ctx.subagents.interrupt() stops one live continuable child's current turn
via Agent.cancel(cause, { keepInbox: true }) under either a human durable
parent address or an exact live ancestor Agent. Fire-and-return: admission
is synchronous, quiescence is not awaited. Pending inbox work, the
Activation, and published descendants are preserved; only a later waking
send resumes the parked FIFO queue. Absent, one-shot, and disposing
targets are accepted no-ops.

The new Host RPC subagent.interrupt calls only that primitive with user
authority — no catalog, history, persistence, or parent-registry lookup —
so a live child stays stoppable while its parent Agent is offline.

Refs #1535
2026-08-08 20:02:36 +08:00
imccyu 9c10925340 fix(docs): align ui-tool package contracts 2026-08-08 16:53:24 +08:00
Turtle bd518cb684 Merge pull request #1696 from deepseek-harness/codex/dsh-badge-plugin
feat: add optional dsh badge skill provider
2026-08-08 16:33:00 +08:00
Tianyi Cui 1627728eff fix: allow audited publishing repository links 2026-08-08 16:15:00 +08:00
Tianyi Cui dac4b068c4 Merge remote-tracking branch 'origin/master' into codex/unify-landlock-release
# Conflicts:
#	.agents/notes/implemented/process/2026-07-30-generated-third-party-notices.i18n.yaml
#	scripts/check-workspace-constraints.ts
2026-08-08 16:01:53 +08:00
Tianyi Cui 6d0a14d428 Merge origin/master into codex/dsh-badge-plugin 2026-08-08 15:42:47 +08:00
Tianyi Cui e0f113f55b Merge origin/master into codex/dsh-badge-plugin 2026-08-08 15:33:41 +08:00
Tianyi Cui d301dbdc7d Merge pull request #1995 from deepseek-harness/worktree/remove-dsh-cli-demo
cleanup(cli): remove separate dsh-cli-demo app
2026-08-08 15:26:56 +08:00
Tianyi Cui be3e4ac455 fix(test): address cli demo cleanup review feedback 2026-08-08 15:08:07 +08:00
Tianyi Cui dc57f7d854 cleanup(cli): remove dsh-cli-demo 2026-08-08 15:08:07 +08:00
Tianyi Cui 0411196489 fix(gates): address TypeRT review gaps 2026-08-08 15:03:23 +08:00
Tianyi Cui 4b73aa153e test(gates): isolate TypeRT graph assertions 2026-08-08 15:03:23 +08:00
Tianyi Cui 00ed703c21 test(i18n): refresh development prompt snapshot 2026-08-08 15:03:23 +08:00
Tianyi Cui f91fd2269d fix(typert): prepare remote contracts for source gates 2026-08-08 15:03:23 +08:00
Tianyi Cui a8879430f0 ci: harden private repository link gate 2026-08-08 14:24:28 +08:00
Tianyi Cui e8ee305b7b test(snapshot): refresh dsh run translation prompt fixture 2026-08-08 14:21:42 +08:00
Tianyi Cui 02d81f8178 Merge pull request #1974 from deepseek-harness/worktree/retire-fixmes-20260807
cleanup: retire FIXMEs without private repository links
2026-08-08 14:14:14 +08:00
Tianyi Cui cc407a2672 Merge pull request #1982 from deepseek-harness/worktree/dedupe-issue-lifecycle-reviews-20260808
cleanup: skip redundant Issue lifecycle ready runs
2026-08-08 14:04:57 +08:00
imccyu 8fc9032d71 test: refresh translation prompt snapshot 2026-08-08 12:36:50 +08:00
imccyu 863abcb427 build: enforce split project reference faces 2026-08-08 12:25:41 +08:00
imccyu d85d0806cd fix(build): align Client build metadata 2026-08-08 12:02:58 +08:00
imccyu 2a7c1175be fix(docs): keep doc typecheck on Host sources 2026-08-08 11:52:18 +08:00
imccyu 8865548ee2 docs: explain generated Remote build order 2026-08-08 04:20:39 +08:00
imccyu 9c3d5725a5 build: order Host and Client compilation faces 2026-08-08 04:20:39 +08:00
Tianyi Cui eba4df1e86 cleanup: skip redundant Issue lifecycle ready runs 2026-08-08 01:50:48 +08:00
Tianyi Cui 95c01e6e61 cleanup: reject private issue shorthand 2026-08-08 01:40:14 +08:00
Tianyi Cui 6d09c315b9 cleanup: remove private repository references 2026-08-08 01:10:57 +08:00
Tianyi Cui 3d1e4d31e1 Merge origin/master into worktree/retire-fixmes-20260807 2026-08-08 00:49:58 +08:00
Tianyi Cui a8a12ffc23 cleanup: replace FIXMEs with tracked issues 2026-08-08 00:04:55 +08:00
Tianyi Cui f00f45e3f9 Merge origin/master at f1402327fa 2026-08-07 23:57:23 +08:00
Tianyi Cui 62ae990c27 cleanup(config): consolidate source ownership rationale 2026-08-07 23:43:15 +08:00
Tianyi Cui 4ee93f7944 fix(config): cover shipped bundle source ownership 2026-08-07 23:26:39 +08:00
Tianyi Cui 2cfea8ab67 Merge branch 'master' into worktree/pr-to-issue-lifecycle 2026-08-07 22:25:01 +08:00
imccyu ddd43ec371 test(api-gateway): repair CI fixtures 2026-08-07 21:47:18 +08:00
imccyu 5c2625c26e docs(typert): align client remote type mapping 2026-08-07 21:47:18 +08:00
imccyu e89d078819 fix: test snapshot 2026-08-07 21:47:17 +08:00