Commit Graph
3603 Commits
Author SHA1 Message Date
Tianyi Cui 1ff0332ea0 Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results 2026-07-21 19:28:23 +08:00
Tianyi Cui 5b36be339d docs(architecture): keep canonical output map concise 2026-07-21 19:26:52 +08:00
Tianyi Cui 650a9cd82c Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
# Conflicts:
#	docs/module-graph.md
2026-07-21 19:16:10 +08:00
Tianyi Cui 0ed8e7baf6 docs(lsp): document canonical query results 2026-07-21 19:15:40 +08:00
Tianyi Cui 0cc5009f58 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
# Conflicts:
#	docs/config-catalog.md
#	examples/acp-agent/tests/snapshots/fs-escalation-approved/session.jsonl
2026-07-21 19:15:18 +08:00
Tianyi Cui e134e7cc38 test(snapshot): refresh unified tool schema fixtures 2026-07-21 19:06:52 +08:00
Tianyi Cui 7d9ed9f70a Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl 2026-07-21 19:03:15 +08:00
Tianyi Cui 9a96d7c341 docs(code-runtime): refresh config catalog 2026-07-21 18:50:15 +08:00
Tianyi Cui 38eaa05be9 Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results 2026-07-21 18:22:48 +08:00
Tianyi Cui 1f4f147699 test(tools): close canonical output coverage gaps 2026-07-21 18:22:14 +08:00
Tianyi Cui 80603b22f9 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 2026-07-21 18:20:32 +08:00
Tianyi Cui 72693a346e test(tools): cover adversarial JSON containers 2026-07-21 18:20:18 +08:00
Tianyi Cui 2623ddbee4 fix(code-runtime): validate arguments before worker dispatch 2026-07-21 18:19:07 +08:00
Tianyi Cui e29db14566 Merge pull request #446 from deepseek-harness/worktree/tui-session-controls
feat(tui): add session model controls and compact interaction views
2026-07-21 18:16:53 +08:00
Tianyi Cui 8a93072537 Merge origin/master into worktree/tui-session-controls 2026-07-21 18:12:11 +08:00
Tianyi Cui 0ac96409a8 Merge pull request #329 from deepseek-harness/lsp
RFC: LSP capability seam and model-facing query tool
2026-07-21 18:10:52 +08:00
Tianyi Cui 9e01fb060e Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
#	examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
#	examples/acp-agent/tests/snapshots/code-mode-workspace-context/system-prompt.expected.md
#	packages/core/tools/README.md
2026-07-21 18:08:56 +08:00
Tianyi Cui 648036d746 Merge origin/master into lsp 2026-07-21 18:04:17 +08:00
Tianyi Cui cd13f0f8b7 Merge pull request #472 from deepseek-harness/worktree/history-only-prs-368-372-374-v2
chore: preserve demo PR histories without changing master tree
2026-07-21 18:03:36 +08:00
Tianyi Cui e1633fbc3f fix(tools): preserve canonical output boundaries 2026-07-21 18:03:01 +08:00
Tianyi Cui c9a8c58467 Merge origin/master into lsp 2026-07-21 17:58:46 +08:00
Tianyi Cui f85b7cb72a Merge PR #374 as history-only demo (tree unchanged) 2026-07-21 17:55:08 +08:00
Tianyi Cui 8a21a383ed Merge PR #372 as history-only demo (tree unchanged) 2026-07-21 17:55:08 +08:00
Tianyi Cui a9ac68d0fd Merge PR #368 as history-only demo (tree unchanged) 2026-07-21 17:55:08 +08:00
Tianyi Cui 0d7ec2f8ba Merge pull request #390 from deepseek-harness/fix/acp-subagent-cwd
fix(subagent-acp): resolve child cwd from the parent session
2026-07-21 17:53:40 +08:00
Tianyi Cui 5606a05e91 Merge origin/master into worktree/tui-session-controls 2026-07-21 17:46:47 +08:00
Tianyi Cui 8f3aca4128 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 2026-07-21 17:45:00 +08:00
Tianyi Cui 4574340d7a fix(tools): harden unified JSON value boundaries 2026-07-21 17:44:46 +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
Tianyi Cui 02da51ff81 Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results 2026-07-21 17:08:47 +08:00
Tianyi Cui 2276755c7f Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 2026-07-21 17:03:53 +08:00
Tianyi Cui 0c50ed9f8e Merge branch 'master' into codex/tool-json-schema-dsl 2026-07-21 16:59:17 +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 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
Tianyi Cui 2477ef415a Merge origin/master into lsp 2026-07-21 16:47:35 +08:00
Tianyi Cui b9913db7de Merge pull request #459 from deepseek-harness/worktree/pr329-review-fixes
fix(lsp): align operation names and review contracts
2026-07-21 16:34:50 +08:00
Tianyi Cui 13982e98e1 Merge pull request #458 from deepseek-harness/fix/pre-push-dsh-home-env-leak
test(workspace-context): stub DSH_HOME in default-home label test
2026-07-21 16:16:45 +08:00
Tianyi Cui bc60b9ffe8 fix(lsp): cancel blocked document opens 2026-07-21 13:52:15 +08:00
Tianyi Cui 2fd995bf3c fix(lsp): align operations and harden lifecycle 2026-07-21 13:29:40 +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
Yichen Jiang a37e2e0f16 Merge remote-tracking branch 'origin/master' into worktree/tui-session-controls
# Conflicts:
#	docs/config-catalog.md
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	packages/ui/acp/src/index.ts
#	packages/ui/tui/README.md
#	packages/ui/tui/src/index.ts
#	packages/ui/tui/tests/harness.ts
#	packages/ui/tui/tests/plugin-shape.spec.ts
#	packages/ui/tui/tests/snapshots/disposed-terminal.expected.txt
#	packages/ui/tui/tests/snapshots/errors-and-help.expected.txt
#	packages/ui/tui/tests/tui.spec.ts
2026-07-21 10:15:49 +08:00
Dudu-0223 2a55f6b684 Merge origin/master into lsp 2026-07-21 09:57:36 +08:00
Tianyi Cui 1709b8cfee fix: keep source Code Mode worker self-contained
A direct runtime import of the session package made the unbuilt worker depend on sibling lib output. Use a parity-tested local JSON snapshotter and pin the isolated source closure with a real-worker test.
2026-07-21 05:19:40 +08:00
Tianyi Cui aca8162ef2 docs: describe lossless Code Mode bindings 2026-07-21 04:57:34 +08:00
Tianyi Cui c1d7b0df81 feat: return typed values from Code Mode 2026-07-21 04:37:09 +08:00
Tianyi Cui 66c36e7325 feat: add canonical typed tool outputs 2026-07-21 03:22:14 +08:00