Commit Graph

2229 Commits

Author SHA1 Message Date
Yichen Jiang
21f7104ed4 Merge branch 'master' into worktree/semantic-session-checkpoints 2026-07-21 18:04:05 +08:00
Yichen Jiang
380a94febb fix(session): close checkpoint cancellation races 2026-07-21 17:58:34 +08:00
Yichen Jiang
c0d7ef22ec fix(subagent-acp): repair the composition fixture for the merged depth budget
Master landed the tool-subagent depth budget while this branch was in
flight: the numeric default maxDepth now fails the mount against the
ACP provider's depthLimit: false, so the composition fixture must state
maxDepth: 'provider-managed' — the documented opt-out for a provider
whose recursion budget lives in the child harness. The fixture also
moves off the retired stdio-demo REPL onto the current app-boot driver
pattern (runLoaderSmoke + one-shot cli), and the split isDirectory
statements gain the file-not-a-directory case the single-expression
form used to cover implicitly.
2026-07-21 17:14:10 +08:00
Yichen Jiang
6fe8cfb5d1 Merge branch 'fix/acp-subagent-cwd' of github.com:deepseek-harness/deepseek-harness into fix/acp-subagent-cwd 2026-07-21 16:53:46 +08:00
Yichen Jiang
822651a2c7 test(subagent-acp): cover inherited cwd through a Loader composition
The inheritance branch ran only under hand-mounted plugin tests, and
the with-key e2e always configures an explicit cwd. Add a test-only
cordis.yml (scripted delegating model + the scripted mock ACP child)
booting the stdio app through the real Loader with cwd omitted: the
child proves it ran in — and was announced — the parent session's
workspace, keylessly.
2026-07-21 16:53:26 +08:00
Yichen Jiang
f1e0410a5d Merge branch 'master' into worktree/semantic-session-checkpoints 2026-07-21 16:52:24 +08:00
Yichen Jiang
04117b58bd docs(subagent): align the parent contract with ACP cwd inheritance
SubagentStartRequest.parent, its core-data type-equiv mirror, and the
ACP backend Agent Note still said the out-of-process backend ignores
request.parent — no longer true: with cwd unconfigured it reads exactly
the session header's cwd, and a parent session without one now rejects
at start. State the one-field read at each owning contract, record the
workspace-resolution decision in the Agent Note, and align the README's
accessibility wording with the search-permission guard.
2026-07-21 16:51:49 +08:00
Yichen Jiang
fcbbd22af7 fix(subagent-acp): require search permission on the child cwd
statSync().isDirectory() is true for a mode-600 directory, but a
subprocess cwd needs X_OK — spawn would fail EACCES, deferring a
self-contained configuration error past the load/start boundary the
resolution owns. Probe accessSync(X_OK) alongside the type check so
"not an accessible directory" is literally what the guard verifies.
2026-07-21 16:51:32 +08:00
Tianyi Cui
29ef3b5a7e Merge origin/master into fix/acp-subagent-cwd 2026-07-21 16:51:28 +08:00
Yichen Jiang
ddc1c66c03 fix(python): mount session checkpoint policy 2026-07-21 15:23:45 +08:00
Yichen Jiang
6d12e3ab41 fix(session): add semantic crash checkpoints 2026-07-21 14:50:06 +08:00
Huanqi Cao
5d6db0cd56 fix: stub DSH_HOME in 'labels the default DSH home' test
The test 'labels the default DSH home as ~/.dsh when HOME points at the
configured default' mocks node:os to return a temporary home directory
and expects discoverBaselineInstructionFiles to fall back to the default
~/.dsh path. However, when DSH_HOME is externally set (e.g. in the DSH
agent environment), resolveDshHome(undefined) reads that external value
instead of falling back to defaultDshHome(), causing the test to look for
AGENTS.md in the wrong directory and return an empty result.

Stub DSH_HOME to undefined so the test controls the full resolution path.
2026-07-21 13:08:34 +08:00
Yichen Jiang
7e43f8661c Merge branch 'master' into fix/acp-subagent-cwd 2026-07-21 12:29:50 +08:00
Tianyi Cui
5eb592aa89 Merge branch 'codex/goal-commands' into codex/ralph-tool 2026-07-20 23:39:48 +08:00
Tianyi Cui
9140f91561 Merge branch 'codex/commands' into codex/goal-commands 2026-07-20 23:39:41 +08:00
Tianyi Cui
9f59f198d8 Merge branch 'codex/goal-session' into codex/commands 2026-07-20 23:39:36 +08:00
Tianyi Cui
2aae64b5da fix(goal-session): preserve typed error variants 2026-07-20 23:35:49 +08:00
Tianyi Cui
cbae54c184 Merge branch 'codex/goal-commands' into codex/ralph-tool
# Conflicts:
#	docs/module-graph.md
2026-07-20 23:15:34 +08:00
Tianyi Cui
a9a9d40cb1 Merge branch 'codex/commands' into codex/goal-commands
# Conflicts:
#	docs/config-catalog.md
#	docs/module-graph.md
#	examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
#	packages/examples/acp-demo/README.md
#	packages/examples/acp-demo/src/index.ts
#	packages/examples/agent-spine-demo/README.md
#	packages/examples/agent-spine-demo/package.json
#	packages/examples/agent-spine-demo/src/index.ts
2026-07-20 23:10:33 +08:00
Tianyi Cui
22fa51845e Merge branch 'codex/goal-session' into codex/commands
# Conflicts:
#	docs/config-catalog.md
#	docs/module-graph.md
#	examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
#	packages/ui/acp/README.md
#	packages/ui/tui/README.md
2026-07-20 23:03:55 +08:00
Tianyi Cui
de72f972b7 Exercise normalized goal-round rate limits 2026-07-20 22:58:01 +08:00
Tianyi Cui
f98f0e9838 Merge branch 'codex/goal-tools' into codex/goal-session
# Conflicts:
#	docs/cordis-catalog/events.md
#	docs/event-producer-consumer.md
#	packages/core/agent-loop/README.md
#	packages/core/agent/README.md
2026-07-20 22:57:14 +08:00
Tianyi Cui
ea530241d8 Merge branch 'codex/goal-domain' into codex/goal-tools
# Conflicts:
#	docs/cordis-catalog/events.md
#	docs/event-producer-consumer.md
2026-07-20 22:50:36 +08:00
Tianyi Cui
076e46ebc0 Merge branch 'rfc/loop' into codex/goal-domain
# Conflicts:
#	docs/event-producer-consumer.md
#	docs/module-graph.md
2026-07-20 22:46:26 +08:00
Tianyi Cui
1b04e8eb2b Merge branch 'codex/goal-commands' into codex/ralph-tool
# Conflicts:
#	examples/repl-agent/README.md
#	examples/repl-agent/composition.md
#	examples/repl-agent/cordis.yml
2026-07-20 22:25:16 +08:00
Tianyi Cui
5c301febbf Merge branch 'codex/commands' into codex/goal-commands
# Conflicts:
#	docs/architecture.md
#	docs/config-catalog.md
#	docs/cookbook/extension-cookbook.i18n.yaml
#	docs/module-graph.md
#	packages/examples/README.md
#	packages/examples/agent-spine-demo/README.md
#	packages/examples/stdio-demo/README.md
#	packages/examples/stdio-demo/src/index.ts
#	packages/examples/stdio-demo/tests/stdio-agent.spec.ts
2026-07-20 22:18:20 +08:00
Tianyi Cui
cc2e14f76e fix: close recovery review gaps 2026-07-20 22:11:26 +08:00
Tianyi Cui
78472196c8 Merge branch 'codex/goal-session' into codex/commands
# Conflicts:
#	docs/architecture.md
#	docs/capability-seams.md
#	docs/config-catalog.md
#	docs/module-graph.md
#	knip.json
#	packages/examples/README.md
#	packages/examples/stdio-demo/README.md
#	packages/examples/stdio-demo/src/index.ts
#	packages/examples/tui-demo/package.json
#	packages/ui/README.md
#	packages/ui/tui/src/index.ts
2026-07-20 22:05:51 +08:00
Tianyi Cui
40f7195266 Merge latest master into codex/llm-error-recovery-rfc 2026-07-20 21:59:47 +08:00
Tianyi Cui
41196b7e4f Merge branch 'codex/goal-tools' into codex/goal-session
# Conflicts:
#	docs/event-producer-consumer.md
2026-07-20 21:55:13 +08:00
Tianyi Cui
9d0a75b154 Merge branch 'codex/goal-domain' into codex/goal-tools
# Conflicts:
#	docs/event-producer-consumer.md
2026-07-20 21:44:06 +08:00
Tianyi Cui
11afddf61d Merge branch 'rfc/loop' into codex/goal-domain
# Conflicts:
#	docs/event-producer-consumer.md
#	knip.json
2026-07-20 21:37:04 +08:00
Tianyi Cui
85c658b028 fix: drop retry dependency from pruner 2026-07-20 21:11:38 +08:00
Tianyi Cui
e9aef281a1 Document the Windows TUI contract 2026-07-20 21:11:38 +08:00
Yichen Jiang
e7220ccef4 Merge branch 'master' into fix/acp-subagent-cwd 2026-07-20 21:11:13 +08:00
Tianyi Cui
30d2ec4a95 Merge branch 'codex/goal-commands' into codex/ralph-tool
# Conflicts:
#	examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/model-switching/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/permission-switching/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/skill-load/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/text-turn/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/workspace-edit/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/workspace-edit/tool-schemas.expected.json
#	scripts/gen-tool-catalog.ts
2026-07-20 21:05:05 +08:00
Tianyi Cui
ad021067e0 fix: preserve transport cause diagnostics 2026-07-20 21:03:31 +08:00
Tianyi Cui
8c12f8945e Merge latest master into codex/llm-error-recovery-rfc
# Conflicts:
#	docs/architecture.md
#	docs/config-catalog.md
#	docs/cordis-catalog/events.md
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	docs/persistence-catalog.md
#	packages/cordis/tool-cordis/src/api-catalog.ts
#	packages/core/agent-loop/src/loop.ts
#	packages/core/agent/src/types.ts
#	packages/examples/agent-spine-demo/README.md
#	packages/examples/stdio-demo/README.md
#	packages/examples/stdio-demo/src/index.ts
#	packages/llm/llm-deepseek/README.md
#	packages/llm/llm-deepseek/src/adapter.ts
#	packages/llm/llm-deepseek/tests/adapter.spec.ts
#	packages/llm/llm/README.md
#	packages/llm/llm/src/error.ts
#	packages/llm/llm/tests/service.spec.ts
#	packages/sandbox/sandbox-policy/tsconfig.json
#	packages/ui/stdio/README.md
#	packages/ui/stdio/src/index.ts
#	packages/ui/stdio/tests/stdio.spec.ts
#	packages/ui/tui/src/index.ts
#	pnpm-lock.yaml
#	website/zh-CN/api/harness/events.md
#	website/zh-CN/api/harness/llm.md
2026-07-20 20:59:11 +08:00
Tianyi Cui
d121f87def Merge branch 'codex/commands' into codex/goal-commands
# Conflicts:
#	.agents/notes/implemented/feature/2026-06-30-interception-seams.md
#	docs/core-data-structures/core.md
#	examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/model-switching/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/permission-switching/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/skill-load/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/text-turn/tool-schemas.expected.json
#	examples/acp-agent/tests/snapshots/workspace-edit/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/workspace-edit/tool-schemas.expected.json
2026-07-20 20:55:50 +08:00
Tianyi Cui
dfc401a66a Merge branch 'codex/goal-session' into codex/commands
# Conflicts:
#	docs/event-producer-consumer.md
#	website/.vitepress/config/api-sidebar.json
#	website/zh-CN/api/harness/events.md
2026-07-20 20:43:02 +08:00
Tianyi Cui
eb5ae54a79 Merge branch 'codex/goal-tools' into codex/goal-session
# Conflicts:
#	.agents/notes/implemented/feature/2026-07-19-persisted-same-session-goal-domain.i18n.yaml
#	docs/cordis-catalog/events.md
#	docs/core-data-structures/core.md
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	examples/package.json
#	packages/core/agent/README.md
#	packages/core/agent/src/types.ts
#	website/zh-CN/api/harness/events.md
2026-07-20 20:35:15 +08:00
Tianyi Cui
a86b4c19f5 Merge remote-tracking branch 'origin/master' into codex/remove-stdio-agent
# Conflicts:
#	docs/config-catalog.md
#	docs/event-producer-consumer.md
#	packages/core/agent-loop/tests/config-session-id.spec.ts
#	packages/ui/stdio/README.md
#	packages/ui/stdio/src/index.ts
#	packages/ui/stdio/tests/stdio.spec.ts
2026-07-20 20:29:08 +08:00
Tianyi Cui
3e3f9a911d Merge branch 'codex/goal-domain' into codex/goal-tools
# Conflicts:
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	packages/core/agent/README.md
#	website/zh-CN/api/harness/events.md
2026-07-20 20:21:01 +08:00
Tianyi Cui
e5ac87454b Merge remote-tracking branch 'origin/master' into codex/remove-stdio-agent
# Conflicts:
#	AGENTS.md
#	docs/config-catalog.md
#	examples/echo-agent/README.md
#	packages/examples/stdio-demo/README.md
#	packages/examples/stdio-demo/src/index.ts
#	packages/examples/stdio-demo/tests/built-bin.e2e.ts
#	packages/examples/stdio-demo/tests/stdio-agent.spec.ts
#	scripts/run-gates.ts
2026-07-20 20:20:21 +08:00
Tianyi Cui
44ad2ef073 Remove the Echo agent 2026-07-20 20:16:41 +08:00
Tianyi Cui
710c62474a Merge branch 'master' into fetch-failed-diagnostics 2026-07-20 20:10:57 +08:00
Tianyi Cui
6cf681df4b Merge branch 'rfc/loop' into codex/goal-domain
# Conflicts:
#	docs/architecture.md
#	docs/capability-seams.md
#	docs/config-catalog.md
#	docs/event-producer-consumer.md
#	docs/glossary.md
#	docs/module-graph.md
#	examples/package.json
#	pnpm-lock.yaml
#	website/.vitepress/config/api-sidebar.json
#	website/zh-CN/api/harness/events.md
2026-07-20 20:06:23 +08:00
Tianyi Cui
153e4b47bd Merge branch 'master' into codex/jsonl-zstd-persistence 2026-07-20 19:58:41 +08:00
Tianyi Cui
2191d45ece Merge origin/master into codex/remove-stdio-agent
# Conflicts:
#	examples/repl-agent/cordis.yml
2026-07-20 19:58:40 +08:00
Tianyi Cui
82ce9dfe0e Merge branch 'master' into codex/jsonl-zstd-persistence 2026-07-20 19:52:47 +08:00