Commit Graph
214 Commits
Author SHA1 Message Date
kingwl f408d420da Merge remote-tracking branch 'origin/master' into jsonl-packed-chunk-rows
# Conflicts:
#	docs/event-producer-consumer.md
2026-07-15 22:14:42 +08:00
kingwl 7ef21239ca feat(session): opt-in packed chunk rows in the JSONL log
Providers stream token-sized deltas, so a session log stores hundreds of
near-identical assistant/chunk lines whose JSON envelopes dwarf their
payloads (~56x measured on a real DeepSeek session, 73% of file bytes).

Add a lossless storage codec to dsh-session: packChunkRuns() folds each
run of >=3 consecutive same-block delta chunks into one storage row --
text-chunks / reasoning-chunks / tool-call-chunks, bare slash-less tags
like the header line's 'session' so rows cannot be confused with session
events -- and decodeStorageRecord() expands rows back to the exact
original events (seq0/time0 + dt gap array reconstruct every member's
seq/time; tool-call rows carry the run-constant id/name). The encoder
whitelists exact shapes and stores anything unrecognized verbatim; the
decoder validates row-tagged values and fails loud on malformation.

The JSONL backend gains a packChunks config (default false). Writing
packs only when enabled -- default-off output stays byte-identical to
the previous layout, so snapshot goldens are untouched. Reading is
layout-blind: scanLog always decodes rows and now checks seq contiguity
with a cursor instead of the line index, so packed, unpacked, and mixed
files all load identically. Fixture readers (llm-replay parseSessionLog,
acp-snapshot normalizeSessionLog) share the codec; the normalizer zeroes
a row's time0/dt exactly like an event's time. The two demo bundles
plumb packChunks from cordis.yml to the backend.

Measured on a real coding session: 105 KB -> 42 KB (-60%), 475 lines ->
74, with reasoning/tool-call heavy sessions saving the most. Covered by
example + fast-check round-trip codec tests, backend packed/mixed/torn-
tail specs, and an end-to-end demo run loading a packed log through a
default-config backend.
2026-07-15 21:26:36 +08:00
Tianyi Cui 8bb8ac8b3c docs(tasks): condense background task prose
The background-task change repeated its lifecycle design across implemented RFCs, package READMEs, JSDoc, test commentary, and model-visible schemas. That repetition obscured the contracts that maintainers must preserve and added avoidable prompt tokens.

Rewrite the implemented RFCs around the current design, keep authorization, exact-owner cleanup, wait/abort ordering, producer quiescence, and teardown-failure guarantees at their owning surfaces, and remove peer surveys, review history, control-flow narration, and emphatic restatement.

Shorten the task and subagent schema wording, synchronize the bilingual tool cookbook, and regenerate the config, service, RFC, tool, and replay snapshot derivatives. Runtime behavior is unchanged; test edits update prose-only assertions and descriptions.
2026-07-15 21:08:58 +08:00
Yichen Jiang 306b79fa2c Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
# Conflicts:
#	docs/config-catalog.md
#	docs/module-graph.md
#	examples/coding-agent/README.md
#	examples/coding-agent/cordis.yml
#	packages/README.md
#	packages/examples/acp-demo/README.md
#	packages/examples/agent-spine-demo/README.md
#	packages/examples/agent-spine-demo/package.json
#	packages/examples/agent-spine-demo/src/index.ts
#	packages/examples/stdio-demo/README.md
#	pnpm-lock.yaml
#	scripts/doc-budgets.manifest.json
#	scripts/verify-package-readme-model-experience.ts
2026-07-15 16:57:03 +08:00
imccyu 6f77da4c8c refactor: relocate demo app bundles to packages/examples/*-demo
Move the agent-spine bundle and the stdio/ACP/JSON-RPC app packages out of
core/ and ui/ into a new packages/examples/ group, renamed with a -demo
suffix so the npm name marks them as non-product surface:

  core/agent-core   -> examples/agent-spine-demo  (dsh-agent-spine-demo)
  ui/stdio-agent    -> examples/stdio-demo        (dsh-stdio-demo)
  ui/acp-agent      -> examples/acp-demo          (dsh-acp-demo)
  ui/jsonrpc-agent  -> examples/jsonrpc-demo      (dsh-jsonrpc-demo)

Update every code/config/test reference and reference-only doc mentions, and
regenerate module-graph, config-catalog, and doc-graphs. The jsonrpc bin
(dsh-jsonrpc-agent) and single-file exe (dsh-jsonrpc-agent-pkg) keep their
names; the SDK runtime-startup surface is reconciled separately.
2026-07-15 16:46:05 +08:00
Tianyi Cui e7bae3aa3b Merge branch 'master' into feat/mcp-client 2026-07-15 15:50:59 +08:00
Yichen Jiang 4f92ede4a0 Merge branch 'master' into codex/rfc-subagent-background-tasks 2026-07-15 15:41:56 +08:00
Yichen Jiang 17511ea0d8 Merge branch 'master' into codex/rfc-subagent-background-tasks 2026-07-15 15:33:53 +08:00
Tianyi Cui dbae83d573 Merge remote-tracking branch 'origin/master' into codex/simp-drop-assembled-section-order 2026-07-15 15:31:29 +08:00
TianleLin 905b8ead9f Merge branch 'master' into feat/mcp-client 2026-07-15 15:22:32 +08:00
Tianyi Cui 0239ac3752 Merge remote-tracking branch 'origin/master' into codex/simp-drop-assembled-section-order 2026-07-15 14:05:54 +08:00
Tianyi Cui 627738c4ed Merge remote-tracking branch 'origin/master' into codex/simp-prune-code-runtime-surface 2026-07-15 13:58:44 +08:00
Yichen Jiang 40336f945a Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks 2026-07-15 13:38:22 +08:00
Yichen Jiang 09d9fec6f9 Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
# Conflicts:
#	docs/config-catalog.md
#	docs/core-data-structures/bash.md
#	packages/bash/bash-local/src/index.ts
#	packages/bash/bash/src/types.ts
#	packages/bash/bash/tests/service.spec.ts
#	packages/bash/tool-bash/README.md
#	packages/bash/tool-bash/src/index.ts
#	packages/bash/tool-bash/tests/tools.spec.ts
#	packages/cordis/tool-cordis/src/api-catalog.ts
2026-07-15 13:38:17 +08:00
Yichen Jiang 3285b77d3c Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
# Conflicts:
#	docs/event-producer-consumer.md
2026-07-15 13:30:39 +08:00
Tianyi Cui 96851da571 Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
# Conflicts:
#	docs/rfc/INDEX.md
2026-07-15 13:28:40 +08:00
Tianyi Cui fe2d61198f Merge remote-tracking branch 'origin/master' into codex/simp-prune-bash-surface 2026-07-15 13:23:16 +08:00
Tianyi Cui e6edee1d54 Merge remote-tracking branch 'origin/master' into codex/simp-drop-assembled-section-order 2026-07-15 13:21:06 +08:00
Tianyi Cui 38ea10eee0 Merge remote-tracking branch 'origin/master' into codex/simp-prune-code-runtime-surface 2026-07-15 13:20:08 +08:00
Tianyi Cui 3eb8c15b36 Merge remote-tracking branch 'origin/master' into codex/simp-prune-tools-prompt-surface 2026-07-15 13:14:56 +08:00
Tianyi Cui eccaf2e2f7 Merge remote-tracking branch 'origin/master' into codex/simp-prune-tools-prompt-surface 2026-07-15 13:10:16 +08:00
imccyu 8aa4c8f660 Merge branch 'master' into refactor/agent-leaf-dependencies 2026-07-15 13:10:14 +08:00
imccyu 517964fe84 Merge branch 'master' into refactor/agent-leaf-dependencies 2026-07-15 13:09:33 +08:00
Tianyi Cui 4d29e8b5d7 Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness 2026-07-15 13:03:53 +08:00
imccyu 4593bf6ed4 Merge remote-tracking branch 'origin/master' into refactor/agent-leaf-dependencies 2026-07-15 12:54:06 +08:00
Tianyi Cui cb682af117 Merge remote-tracking branch 'origin/master' into codex/simp-prune-workflow-worker-surface 2026-07-15 12:53:29 +08:00
Tianyi Cui c2d5a5be80 Merge origin/master into PR #219 review branch
Bring PR #219 onto current master before re-evaluating review findings so fixes are tested against the code that would actually land.

Resolve generated catalogs by regeneration, preserve the new ACP tool-schema sidecar format while refreshing affected snapshots keylessly, and update the newly paired Chinese adding-a-tool document to match the background-task guidance. This keeps generated and bilingual artifacts authoritative instead of choosing one conflict side blindly.
2026-07-15 11:40:26 +08:00
imccyu 80fbeefbd6 refactor(ui): extract stdio plugin package
Move the readline front door from stdio-agent into @deepseek-ai/dsh-stdio, keeping the loader shape and the stdio coverage with the new package.
2026-07-15 10:04:40 +08:00
Tianyi Cui 89bb0c47c3 Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-drop-assembled-section-order 2026-07-14 23:45:40 +08:00
Tianyi Cui aba1b18eac Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface 2026-07-14 23:45:39 +08:00
Tianyi Cui 73b34e5c4d Merge remote-tracking branch 'origin/master' into codex/simp-prune-tools-prompt-surface
# Conflicts:
#	docs/rfc/implemented/architecture/2026-06-18-session-surface.md
#	packages/core/session/src/surface.ts
#	packages/core/session/tests/surface.spec.ts
2026-07-14 23:45:25 +08:00
Tianyi Cui 0bbb2a5426 Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness 2026-07-14 23:44:40 +08:00
Tianyi Cui ebf2fb763a Merge remote-tracking branch 'origin/master' into codex/simp-hide-fs-internals 2026-07-14 23:44:40 +08:00
Tianyi Cui d8cced2602 Merge remote-tracking branch 'origin/master' into codex/simp-prune-workflow-worker-surface 2026-07-14 23:44:39 +08:00
Tianyi Cui 177144917d Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields 2026-07-14 23:44:38 +08:00
Tianyi Cui 7993f41da3 Merge remote-tracking branch 'origin/master' into codex/simp-prune-bash-surface 2026-07-14 23:39:05 +08:00
Tianyi Cui 98c12676af Merge remote-tracking branch 'origin/master' into feat/mcp-client 2026-07-14 23:16:43 +08:00
Tianyi Cui 528f9cba62 fix: default time context to system zone 2026-07-14 21:45:54 +08:00
Tianyi Cui bd0a1855b9 Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-drop-assembled-section-order
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
2026-07-14 19:06:25 +08:00
Tianyi Cui 59c5010283 Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
#	docs/rfc/implemented/feature/2026-06-15-code-mode.md
2026-07-14 19:05:23 +08:00
Tianyi Cui dbf4bebe83 Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness
# Conflicts:
#	examples/AGENTS.md
#	examples/coding-agent/tests/code-mode-keyless-smoke.e2e.ts
#	examples/coding-agent/tests/keyless-smoke.e2e.ts
#	examples/cordis-agent/tests/keyless-smoke.e2e.ts
#	examples/echo-agent/tests/echo.e2e.ts
2026-07-14 18:30:10 +08:00
Yichen Jiang 9956528495 Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
# Conflicts:
#	docs/architecture.md
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
#	docs/core-data-structures/bash.md
#	docs/event-producer-consumer.md
#	docs/rfc/implemented/feature/2026-07-06-sandbox.md
#	docs/rfc/proposed/architecture/2026-06-20-generic-long-running-tool-runtime.md
#	examples/AGENTS.md
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.jsonl
#	examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.golden.md
#	examples/acp-agent/tests/snapshots/both-mode-turn/session.jsonl
#	examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.golden.md
#	examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.golden.md
#	examples/acp-agent/tests/snapshots/permission-switching/system-prompt.golden.md
#	examples/acp-agent/tests/snapshots/skill-load/session.jsonl
#	examples/acp-agent/tests/snapshots/skill-load/system-prompt.golden.md
#	examples/acp-agent/tests/snapshots/text-turn/session.jsonl
#	examples/acp-agent/tests/snapshots/text-turn/system-prompt.golden.md
#	examples/coding-agent/cordis.yml
#	examples/sandbox-acp-agent/tests/snapshots/escalation-approved/session.jsonl
#	examples/sandbox-acp-agent/tests/snapshots/escalation-rejected/session.jsonl
#	examples/sandbox-acp-agent/tests/snapshots/mode-switching/session.jsonl
#	packages/bash/bash-local/README.md
#	packages/bash/bash-local/src/index.ts
#	packages/bash/bash-local/tests/executor.spec.ts
#	packages/bash/bash-sandbox/README.md
#	packages/bash/bash-sandbox/src/index.ts
#	packages/bash/bash/README.md
#	packages/bash/bash/src/index.ts
#	packages/bash/bash/src/types.ts
#	packages/bash/tool-bash/README.md
#	packages/bash/tool-bash/src/index.ts
#	packages/bash/tool-bash/tests/tools.spec.ts
#	packages/cordis/tool-cordis/src/api-catalog.ts
#	packages/core/agent-core/README.md
#	packages/core/agent-core/src/index.ts
#	packages/subagent/subagent/README.md
#	packages/subagent/tool-subagent/README.md
#	packages/subagent/tool-subagent/src/index.ts
#	packages/ui/acp-agent/README.md
#	packages/ui/acp/README.md
#	packages/ui/stdio-agent/README.md
#	packages/util/brand/src/index.ts
#	scripts/doc-budgets.manifest.json
2026-07-14 18:05:46 +08:00
Tianyi Cui 92c52eec20 Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
#	docs/core-data-structures/web.md
#	docs/rfc/implemented/simplification/2026-07-04-drop-unconsumed-web-observation-surface.md
#	packages/web/tool-web/tests/integration.spec.ts
#	packages/web/web-fetch-local/README.md
#	packages/web/web-fetch-local/src/provider.ts
#	packages/web/web/src/types.ts
2026-07-14 17:57:50 +08:00
Tianyi Cui d9d9487e0e docs: align time-context prose standard 2026-07-14 17:44:32 +08:00
Tianyi Cui f1a3484cca Merge remote-tracking branch 'origin/master' into codex/simp-prune-workflow-worker-surface
# Conflicts:
#	docs/config-catalog.md
2026-07-14 17:41:20 +08:00
Tianyi Cui 3c1470046a Merge remote-tracking branch 'origin/master' into codex/simp-prune-bash-surface
# Conflicts:
#	docs/config-catalog.md
#	packages/bash/tool-bash/src/index.ts
2026-07-14 17:38:15 +08:00
Tianyi Cui 89aedb5ea6 Merge remote-tracking branch 'origin/master' into codex/simp-hide-fs-internals
# Conflicts:
#	docs/config-catalog.md
2026-07-14 17:33:52 +08:00
Tianyi Cui 32ed403500 Merge remote-tracking branch 'origin/master' into codex/simp-prune-tools-prompt-surface
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
#	packages/core/agent-loop/src/loop.ts
#	packages/core/session/README.md
#	packages/core/session/tests/derived-cache.spec.ts
2026-07-14 17:30:34 +08:00
Tianyi Cui 498de7f042 Merge remote-tracking branch 'origin/master' into codex/time-context-plugin 2026-07-14 17:26:20 +08:00
Tianyi Cui 71790b7047 Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness
# Conflicts:
#	packages/support/README.md
2026-07-14 16:10:26 +08:00