Hypatia May
1e457b22e0
refactor(session-query): unify query service
2026-07-23 20:18:05 +08:00
Tianyi Cui
b65afd320a
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
2026-07-22 23:00:05 +08:00
Tianyi Cui
e962642926
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/examples/acp-demo/README.md
# packages/examples/acp-demo/src/index.ts
# packages/examples/acp-demo/tests/built-bin.e2e.ts
# packages/examples/tui-demo/package.json
# packages/examples/tui-demo/src/index.ts
# packages/examples/tui-demo/tests/tui-agent.spec.ts
2026-07-22 22:38:17 +08:00
Tianyi Cui
b0f5d9e313
Merge commit 'refs/codex-unblock/20260722-pr338-master' into HEAD
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/acp-agent/tests/acp.snapshot.ts
# packages/core/session/src/index.ts
# packages/examples/acp-demo/src/index.ts
# packages/session-persistence/session-persistence-jsonl/src/format.ts
# vitest.config.ts
2026-07-22 22:37:16 +08:00
kingwl
3922e956db
Merge remote-tracking branch 'origin/master' into jsonl-packed-chunk-rows
...
Master removed the stdio demo (#702c8cc30) — accept the deletion; this
branch's packChunks passthrough survives in acp-demo (auto-merged), and
cli-demo/tui-demo arrived from master without one (the follow-up snapshot
PR decides which demos expose the switch). Generated catalogs regenerated
over merged sources; the hand-written session.md durability paragraph
re-weaves this branch's lossless-encoding wording with master's invariant-
companion sentence.
2026-07-22 15:46:12 +08:00
Yichen Jiang
28b358650b
Merge remote-tracking branch 'origin/master' into worktree/semantic-session-checkpoints
...
# Conflicts:
# docs/architecture.md
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cancel-tool-calls/session.jsonl
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/loop.ts
# packages/core/agent-loop/tests/cancel.spec.ts
2026-07-22 10:29:09 +08:00
Yichen Jiang
951967217a
Merge remote-tracking branch 'origin/master' into worktree/session-reference
...
# Conflicts:
# docs/capability-seams.md
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/ui/acp/README.md
# packages/ui/acp/package.json
# packages/ui/acp/tsconfig.json
# packages/ui/tui/package.json
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/tui.spec.ts
# packages/ui/tui/tsconfig.json
# pnpm-lock.yaml
# python/sdk-runtime/package.json
# scripts/gen-doc-graphs.ts
# scripts/type-equiv.manifest.json
2026-07-22 10:21:17 +08:00
Yichen Jiang
380a94febb
fix(session): close checkpoint cancellation races
2026-07-21 17:58:34 +08:00
Yichen Jiang
ebb62c482c
fix(session): harden cross-session references
2026-07-21 17:54:44 +08:00
Yichen Jiang
32d786c439
feat(session): add cross-session references
2026-07-21 16:46:48 +08:00
Yichen Jiang
6d12e3ab41
fix(session): add semantic crash checkpoints
2026-07-21 14:50:06 +08:00
Tianyi Cui
b3ba4345f5
fix(session-title): respect request and config boundaries
2026-07-21 14:09:17 +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
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
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
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
kingwl
3869f2ce17
chore(acp-demo): fence the persistence passthrough clone for jscpd
...
The acp/stdio front doors intentionally duplicate their small persistence
passthrough blocks (same rationale as their Config schemas, already fenced).
2026-07-20 20:19:32 +08:00
kingwl
30e8130394
Merge remote-tracking branch 'origin/master' into jsonl-packed-chunk-rows
...
Master's Zstandard physical encoding (#416 ) and this branch's packed chunk
rows compose as orthogonal layers: packChunks shapes the logical storage
records, compression shapes the physical bytes. The backend keeps both
config keys; eventLines(events, packChunks) replaces master's singular
eventLine helper and feeds encodeMaterialization/encodeEventBatch so packed
rows flow through either encoding. Demo apps carry both passthroughs. The
packed-row layout tests pin compression: 'none' (they assert textual line
tags) and read through rawLogPath; zstd spec fixtures inline
JSON.stringify for verbatim lines.
2026-07-20 20:14:49 +08:00
kingwl
d85d2a4be3
Merge remote-tracking branch 'origin/master' into jsonl-packed-chunk-rows
...
Conflicts: the four generated catalog docs (regenerated over merged sources),
session index.ts exports (keep chunk-rows exports + master's SessionSurface
re-export), stdio/acp demo config schema and persistence wiring (thread
packChunks through master's DEFAULT_PERSISTENCE_ROOT/UI shape), stdio README
config table, and the jsonl spec import line. The packed-chunk fixture also
gains the provenance field master made required on assistant/message.
2026-07-20 15:24:58 +08:00
Tianyi Cui
3b0b0cefeb
feat: implement bounded LLM request recovery
2026-07-20 03:34:19 +08:00
Tianyi Cui
d139948ed2
feat(persistence): compress JSONL logs with Zstandard
2026-07-20 00:06:21 +08:00
Tianyi Cui
207692bc16
feat(goal): add human goal command
2026-07-19 23:55:33 +08:00
Tianyi Cui
400b4658ef
Merge remote-tracking branch 'origin/codex/goal-session' into codex/commands
2026-07-19 23:05:08 +08:00
Tianyi Cui
2850c22b7a
feat(ui): add plugin command registry
2026-07-19 22:11:59 +08:00
Yichen Jiang
3df3c6bf37
Merge remote-tracking branch 'origin/master' into worktree/dsbench-patch
...
# Conflicts:
# packages/bash/bash-local/README.md
# packages/bash/bash-local/src/index.ts
# packages/bash/bash-local/src/run.ts
# packages/bash/bash-local/tests/run.spec.ts
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/src/index.ts
# packages/ui/jsonrpc/README.md
# packages/ui/jsonrpc/src/server.ts
2026-07-19 14:53:03 +08:00
Tianyi Cui
fed4cfe8ff
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-19 01:57:31 +08:00
Tianyi Cui
21ec178841
docs: tighten parallel tool-call prose
2026-07-18 14:59:26 +08:00
Tianyi Cui
03e39f7f1c
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
...
# Conflicts:
# docs/config-catalog.md
# packages/examples/acp-demo/src/index.ts
# packages/examples/stdio-demo/src/index.ts
2026-07-18 12:42:33 +08:00
Tianyi Cui
3e07f9b270
Merge latest origin/master into parallel-tool-call
2026-07-17 22:28:38 +08:00
Tianyi Cui
688b95a7e5
Merge origin/master into parallel-tool-call
2026-07-17 22:13:33 +08:00
Tianyi Cui
53680ee6bc
Merge remote-tracking branch 'origin/master' into worktree/provider-routed-llm-adapters
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/context/time-context/tests/time-context.spec.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/session/README.md
# packages/core/session/src/types.ts
# packages/core/session/tests/surface.spec.ts
# packages/examples/acp-demo/tests/acp-agent.spec.ts
# packages/examples/stdio-demo/tests/stdio-agent.spec.ts
# packages/hooks/hooks-claude/tests/coverage.spec.ts
# packages/hooks/hooks-codex/tests/coverage.spec.ts
# packages/session-query/session-query/tests/session-query.spec.ts
# packages/support/invariants/tests/invariants.spec.ts
# packages/ui/acp/tests/harness.ts
2026-07-17 21:56:10 +08:00
Yichen Jiang
7d85d3027d
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/config-catalog.md
# docs/module-graph.md
# docs/rfc/INDEX.md
# packages/README.md
# packages/bash/bash-local/README.md
# packages/bash/bash/README.md
# packages/bash/tool-bash/README.md
# packages/bash/tool-bash/tests/tools.spec.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/examples/acp-demo/src/index.ts
# packages/examples/acp-demo/tests/acp-agent.spec.ts
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/src/index.ts
# packages/examples/agent-spine-demo/tests/agent-core.spec.ts
# packages/examples/stdio-demo/src/index.ts
# packages/examples/stdio-demo/tests/stdio-agent.spec.ts
# packages/util/README.md
# pnpm-lock.yaml
# tsconfig.build.json
# tsconfig.json
2026-07-17 18:39:05 +08:00
Yichen Jiang
a38ff125a7
feat(dsbench): add SDK evaluation composition
2026-07-17 17:29:38 +08:00
Yichen Jiang
027af418a2
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/architecture.md
# docs/capability-seams.md
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/bash.md
# docs/module-graph.md
# docs/tool-catalog.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.golden.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.golden.json
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.golden.md
# examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.golden.json
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.golden.md
# examples/acp-agent/tests/snapshots/permission-switching/tool-schemas.golden.json
# examples/acp-agent/tests/snapshots/skill-load/tool-schemas.golden.json
# examples/acp-agent/tests/snapshots/text-turn/tool-schemas.golden.json
# examples/acp-agent/tests/snapshots/workspace-edit/tool-schemas.golden.json
# packages/bash/bash-local/README.md
# packages/bash/bash-local/src/index.ts
# packages/bash/bash-local/tests/executor.spec.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/package.json
# packages/bash/tool-bash/src/index.ts
# packages/bash/tool-bash/tests/tools.spec.ts
# packages/bash/tool-bash/tsconfig.json
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/src/index.ts
# packages/examples/agent-spine-demo/tests/agent-core.spec.ts
# pnpm-lock.yaml
2026-07-16 16:47:31 +08:00
Yichen Jiang
97190c81ba
Merge remote-tracking branch 'origin/master' into worktree/provider-routed-llm-adapters
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/session.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/session.jsonl
2026-07-16 16:39:13 +08:00
Dudu-0223
17fe9e5b1e
fix(agent-loop): tighten parallel tool-call safety
2026-07-16 15:52:35 +08:00
Tianyi Cui
735e10b64f
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-15 23:57:57 +08:00
Tianyi Cui
6c846531e7
Merge current master into PR #106
2026-07-15 22:44:47 +08:00
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
Yichen Jiang
f47a87fcf5
Merge remote-tracking branch 'origin/master' into worktree/provider-routed-llm-adapters
...
# Conflicts:
# docs/config-catalog.md
# packages/examples/acp-demo/tests/acp-agent.spec.ts
# packages/examples/stdio-demo/README.md
# packages/examples/stdio-demo/src/index.ts
# packages/examples/stdio-demo/tests/stdio-agent.spec.ts
2026-07-15 20:14:09 +08:00
Tianyi Cui
54fb96ef04
refactor: name front door defaults
2026-07-15 19:52:09 +08:00
Yichen Jiang
ff3d893f74
Merge remote-tracking branch 'origin/master' into codex/project-instruction-files
...
# Conflicts:
# AGENTS.md
# docs/config-catalog.md
# docs/module-graph.md
# examples/echo-agent/composition.md
# packages/README.md
# packages/core/README.md
# packages/examples/acp-demo/package.json
# packages/examples/acp-demo/src/index.ts
# packages/examples/acp-demo/tests/acp-agent.spec.ts
# packages/examples/acp-demo/tests/built-bin.e2e.ts
# packages/examples/acp-demo/tsconfig.json
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/package.json
# packages/examples/agent-spine-demo/tests/agent-core.spec.ts
# packages/examples/stdio-demo/package.json
# 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
# packages/examples/stdio-demo/tsconfig.json
# pnpm-lock.yaml
# python/sdk-runtime/README.i18n.yaml
# python/sdk-runtime/src/deepseek_harness_runtime/runtime/cordis.yml
# python/sdk/tests/test_bundled_runtime.py
2026-07-15 17:04:16 +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
Yichen Jiang
20572f8468
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/config-catalog.md
# docs/module-graph.md
# packages/README.md
# packages/examples/acp-demo/README.md
# packages/examples/agent-spine-demo/README.md
# packages/examples/stdio-demo/README.md
# pnpm-lock.yaml
2026-07-15 16:53:56 +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