Tianyi Cui
6250c103b6
docs(tools): sync bounded output contracts
2026-07-22 01:11:47 +08:00
Tianyi Cui
0dfd9545a6
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/persistence-catalog.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/fs-write/session.jsonl
# packages/ui/tui/src/index.ts
# scripts/type-equiv.manifest.json
2026-07-22 00:23:00 +08:00
Tianyi Cui
4072673c03
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
...
# Conflicts:
# packages/cordis/tool-cordis/src/api-catalog.ts
2026-07-22 00:05:23 +08:00
Tianyi Cui
3ed74d5476
docs: refresh merged contract references
2026-07-21 23:44:08 +08:00
Tianyi Cui
7d3cb39047
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
...
# Conflicts:
# .agents/notes/implemented/feature/2026-06-30-interception-seams.md
# docs/config-catalog.md
# docs/cookbook/adding-a-tool.i18n.yaml
# docs/cookbook/adding-a-tool.md
# docs/cookbook/adding-a-tool.zh.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/tools.md
# docs/event-producer-consumer.md
# docs/persistence-catalog.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# packages/bash/tool-bash/src/index.ts
# packages/core/agent-loop/src/tool-calls.ts
# packages/core/agent-loop/tests/cancel.spec.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# packages/core/agent-loop/tests/tool-calls.spec.ts
# packages/core/tools/README.md
# packages/core/tools/src/index.ts
# packages/core/tools/tests/code-mode.spec.ts
# packages/core/tools/tests/tools.spec.ts
# packages/fs/tool-fs-search/tests/integration.spec.ts
# packages/fs/tool-fs-search/tests/tools.spec.ts
# packages/fs/tool-fs/tests/integration.spec.ts
# packages/mcp/mcp-client/src/tools.ts
# packages/timeout/timeout-policy/tests/timeout-policy.spec.ts
# packages/web/tool-web/tests/integration.spec.ts
# packages/web/tool-web/tests/tool-web.spec.ts
2026-07-21 23:39:03 +08:00
Tianyi Cui
2c36792b6c
docs(architecture): synchronize Chinese pair
2026-07-21 23:10:47 +08:00
Tianyi Cui
5d514ccdb2
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
...
# Conflicts:
# docs/config-catalog.md
# docs/cookbook/adding-a-tool.i18n.yaml
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# packages/core/tools/tests/tools.spec.ts
2026-07-21 23:04:32 +08:00
Tianyi Cui
3176d232b8
Merge master into codex/session-title
2026-07-21 22:59:41 +08:00
Tianyi Cui
57cd9ce2bf
Merge master into feat/xdg-single-root-home
2026-07-21 22:14:45 +08:00
Tianyi Cui
af1e40e7c6
Merge master into feat/xdg-single-root-home
2026-07-21 21:20:43 +08:00
Tianyi Cui
3a895ce815
Merge master into codex/session-title
2026-07-21 21:11:32 +08:00
Tianyi Cui
2c6c565647
Merge remote-tracking branch 'origin/master' into codex/enforce-tool-cancellation
2026-07-21 20:40:52 +08:00
Tianyi Cui
0273af40bf
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
2026-07-21 20:39:49 +08:00
Tianyi Cui
0feeecbfbd
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
2026-07-21 20:39:49 +08:00
Tianyi Cui
5acd0c6305
Merge commit 'refs/codex/unblock/master-current' into HEAD
...
# Conflicts:
# package.json
2026-07-21 20:31:42 +08:00
Tianyi Cui
779d8f112a
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
2026-07-21 20:11:04 +08:00
Tianyi Cui
911abf73c8
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
2026-07-21 20:10:57 +08:00
Tianyi Cui
73ccb67469
Merge remote-tracking branch 'origin/master' into codex/enforce-tool-cancellation
2026-07-21 20:03:47 +08:00
Tianyi Cui
0004b8675f
Merge remote-tracking branch 'origin/master' into codex/enforce-tool-cancellation
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/bash-spill/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/session.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/session.jsonl
# packages/context/workspace-context/tests/workspace-context.spec.ts
# packages/core/agent/src/index.ts
# packages/support/invariants/tests/invariants.spec.ts
# packages/ui/acp/src/index.ts
# packages/ui/tui/tests/harness.ts
# packages/ui/tui/tests/tui.spec.ts
2026-07-21 20:03:00 +08:00
Tianyi Cui
8ae6e1ffbd
docs(architecture): retain canonical output budget
2026-07-21 20:00:09 +08:00
Tianyi Cui
72a48fede6
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
...
# Conflicts:
# docs/event-producer-consumer.md
# packages/context/time-context/tests/time-context.spec.ts
# packages/context/workspace-context/tests/workspace-context.spec.ts
2026-07-21 19:56:43 +08:00
Tianyi Cui
21721bf3b1
Merge branch 'master' into fix/compaction-kv-cache-reuse
...
# Conflicts:
# packages/compact/compact-basic/src/index.ts
# packages/compact/compact-basic/src/summarizer.ts
# packages/compact/compact-basic/tests/compact-basic.spec.ts
2026-07-21 19:45:43 +08:00
Tianyi Cui
6a45e6e16b
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
...
# Conflicts:
# docs/event-producer-consumer.md
# packages/cordis/tool-cordis/src/api-catalog.ts
2026-07-21 19:44:49 +08:00
Tianyi Cui
5b36be339d
docs(architecture): keep canonical output map concise
2026-07-21 19:26:52 +08:00
Tianyi Cui
72c6696e4f
Merge branch 'master' into worktree/routed-model-compaction-policy
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-21 19:23:54 +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
373bf333ac
docs: refresh config catalog for replay capacity
2026-07-21 19:05:40 +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
39eb6e21cd
Merge current master into invariant service seam
2026-07-21 18:35:24 +08:00
Tianyi Cui
78f8a3f5d9
Merge branch 'master' into worktree/routed-model-compaction-policy
2026-07-21 18:30:57 +08:00
Tianyi Cui
071fe76755
Merge latest master into invariant service seam
2026-07-21 18:27:46 +08:00
Tianyi Cui
8a93072537
Merge origin/master into worktree/tui-session-controls
2026-07-21 18:12:11 +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
504fbf59f3
fix(invariants): replay histories and pack companions
2026-07-21 17:46:43 +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
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
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
Tianyi Cui
5d411f9c4e
fix(session-title): preserve agent turn outcomes
2026-07-21 15:49:37 +08:00
Tianyi Cui
c622a2881d
fix(session-title): deduplicate fallback creation
2026-07-21 15:23:27 +08:00
Yichen Jiang
49a9bca9f6
fix: validate compaction config pairs
2026-07-21 14:49:57 +08:00
Tianyi Cui
d9557fa5e0
fix(session-title): serialize provider request writes
2026-07-21 14:39:09 +08:00
Tianyi Cui
b3ba4345f5
fix(session-title): respect request and config boundaries
2026-07-21 14:09:17 +08:00
Turtle
a0268d2509
fix(compact-basic): replay conversation prefix so summarization reuses KV cache
...
Automatic compaction fires mid-conversation, right after the loop warmed
the provider's KV cache with the last routed request. The default
summarizer then issued a separate request whose prefix shared nothing
with that warm request — a bespoke summarizer system prompt followed by
the older history flattened to one rendered transcript string — so a
differing first token invalidated the entire cached prefix and every
compaction re-processed the whole replayed history twice.
Move the compaction directive from the FRONT (a fresh system prompt) to
the END (a trailing user message), and replay the last routed request's
own system prompt, tools, message prefix, and shadowed-region messages
verbatim via session.requestHeader() + deriveEventMessage. The auxiliary
call is now a genuine prefix-extension of the warm request, so the
provider reuses the cached tokens up to the trailing instruction.
SummarizationInput carries the replayed prefix instead of a flat string;
the now-unused renderTranscript/renderContentBlocks path is removed with
its spec. Cache reuse is best-effort (head compaction guarantees a hit;
a mid-range compaction or a differently-routed summarizer forgoes it),
correctness is not.
2026-07-21 13:55:22 +08:00
Turtle
92e0d0e04f
refactor(paths): collapse harness home resolution into one resolver
...
Delete @deepseek-ai/dsh-home and make dsh-paths the sole owner of the
single-root harness home ($DSH_HOME || ~/.dsh). Migrate tool-bash,
skill-local, and agent-spine-demo off dsh-home, and fold telemetry's
divergent globalConfigDir onto the shared resolver, dropping its second
XDG/APPDATA policy and the deepseek-harness namespace so the anonymous
id lives under the harness home. Add dshHomeDisplay() for symbolic
user-facing paths, replacing workspace-context's bespoke check.
2026-07-21 13:52:00 +08:00
Tianyi Cui
63cb16a540
fix(session-title): honor request lifecycle
2026-07-21 13:37:28 +08:00
Tianyi Cui
2fd995bf3c
fix(lsp): align operations and harden lifecycle
2026-07-21 13:29:40 +08:00
Tianyi Cui
d6bebc18f8
Merge remote-tracking branch 'origin/codex/enforce-tool-cancellation' into worktree/explicit-turn-signal
...
# Conflicts:
# docs/architecture.md
# docs/cordis-catalog/events.md
# docs/core-data-structures/core.md
# docs/event-producer-consumer.md
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/agent.ts
# packages/core/agent/README.md
# packages/core/agent/src/types.ts
# packages/ui/acp/src/index.ts
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/harness.ts
2026-07-21 12:48:46 +08:00
Tianyi Cui
43d50a38b1
Merge remote-tracking branch 'origin/master' into codex/enforce-tool-cancellation
...
# Conflicts:
# docs/architecture.md
# packages/core/agent-loop/README.md
2026-07-21 12:30:08 +08:00