Yichen Jiang
40ce342d81
Merge remote-tracking branch 'origin/master' into worktree/tui-file-autocomplete
...
# Conflicts:
# docs/config-catalog.md
2026-07-23 19:32:13 +08:00
Yichen Jiang
23fc9cc226
feat(tui): add path-only @file autocomplete
2026-07-23 17:39:30 +08:00
Tianyi Cui
59e325f571
Merge refreshed typed Code Mode results into result card fix
2026-07-22 22:38:23 +08:00
Tianyi Cui
101fcdd319
Merge refreshed canonical outputs into typed Code Mode results
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-22 22:34:52 +08:00
Tianyi Cui
e51b2fd834
Merge refreshed typed Code Mode results into result card fix
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-20-canonical-tool-output-contract.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
# examples/tui-agent/tests/snapshots/code-mode/terminal.expected.txt
2026-07-22 22:17:05 +08:00
Tianyi Cui
ce970bd31c
Merge refreshed canonical outputs into typed Code Mode results
...
# Conflicts:
# docs/module-graph.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/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/system-prompt.expected.md
# packages/core/tools/src/ts-types.ts
2026-07-22 21:49:35 +08:00
Tianyi Cui
3679b4d829
Merge master into worktree/semantic-session-checkpoints
2026-07-22 21:49:24 +08:00
Tianyi Cui
78c2741d3e
Merge remote-tracking branch 'origin/master' into worktree/pr504-retarget-latest-master
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/tui-agent/README.md
# examples/tui-agent/composition.md
# examples/tui-agent/cordis.yml
# examples/tui-agent/tests/snapshots/multi-turn-conversation/terminal.expected.txt
# examples/tui-agent/tests/tui-keyless-smoke.e2e.ts
# packages/ui/tui/README.md
# vitest.config.ts
2026-07-22 20:55:12 +08:00
Tianyi Cui
2478ef7d6d
Merge master into worktree/semantic-session-checkpoints
2026-07-22 20:50:46 +08:00
ZiyaZhang
1167e91409
fix(tui): polish /status diagnostics card
2026-07-22 03:29:59 -07:00
ZiyaZhang
280207c824
feat(tui): add /status session diagnostics
2026-07-22 03:10:14 -07:00
Tianyi Cui
e4840c5a88
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
2026-07-22 17:09:28 +08:00
Tianyi Cui
248d7bb81e
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
2026-07-22 17:07:49 +08:00
Tianyi Cui
c3fb3de64f
Merge PR #500 into codex/tool-json-schema-dsl
...
# Conflicts:
# docs/cordis-catalog/services.md
# scripts/type-equiv.manifest.json
2026-07-22 16:57:45 +08:00
Tianyi Cui
f4185122dc
refactor(plan): remove generic mode abstraction
2026-07-22 16:57:23 +08:00
Tianyi Cui
1d28743b12
feat(mode): submit optional slash-command message
2026-07-22 15:51:02 +08:00
Turtle
06827eb868
test(e2e): drive the TUI keyless smoke through the cross-platform PTY harness
...
The smoke's inline Python pty driver only ran on POSIX (no termios on
Windows). Rebuild every scenario — banner sweep, scripted conversation with
model switch, /skill:, Code Mode overlay, resume failure, and the dsh CLI
suite (default boot, personal overlay, invalid overlay, --resume flag,
source-path prompt) — as marker-gated action lists on pty-harness.ts, which
drives ConPTY via node-pty on Windows and the Python driver elsewhere. The
harness gains configArgs (bins with built-in default configs), prepare
(workspace seeding), and inspect (post-run log assertions); examples/
declares the session-title provider the shipped cordis.yml now mounts.
2026-07-22 15:35:19 +08:00
Turtle
2a9f248594
refactor(tui): drop the TUI-local auto-title; titles come from the session-title service
...
Master's log-backed session-title capability already titles sessions durably
(deterministic fallback in the spine, optional model providers). Remove the
TUI's own autoTitle generation — the latch, prompt, cap, and llm stream call —
and keep the terminal rename: the TUI folds the logged title on mount and sets
'<session title> — <configured title>' on every accepted session/title event.
The tui-agent example and the scripted PTY fixture mount
session-title-first-message-llm so titles stay model-made; the scripted
adapter's tool-less branch now answers that provider's auxiliary request.
See .agents/notes/implemented/simplification/2026-07-22-tui-titles-from-session-title-service.md
2026-07-22 15:01:54 +08:00
Turtle
f1f35ccaef
test(e2e): align keyless expectations with the shipped config and scope keys
...
The acp escalation smoke advertises the shipped deepseek-v4-pro; the
workspace-context e2e asserts the per-candidate scope key. The PTY harness
drops COLORTERM (deterministic banner) and gains configArgs/prepare/inspect
for the dsh CLI scenarios.
2026-07-22 14:48:34 +08:00
Tianyi Cui
a8a18f309a
feat(mode): register one slash command per mode
...
Replace /mode [name] with same-named no-argument commands such as /plan. Update the TUI and ACP snapshots, and validate mode names against command syntax.
2026-07-22 14:32:35 +08:00
Turtle
cf95986d5b
fix(examples): restore the tui-demo pre-boot TTY refusal and stabilize the PTY smoke
...
The built-bin fail-loud test needs the TTY refusal before Loader boot (a
compose-time throw is logged per-entry, not rethrown); the PTY driver drops
COLORTERM so a developer's truecolor shell cannot flip the banner to the
gradient path mid-assertion; the scripted fixture persists raw JSONL so the
smoke's system-prompt inspection can read the log.
2026-07-22 14:30:01 +08:00
Turtle
7eec0d81ec
test(snapshot): reconcile replay overlays with the merged configs and fixtures
...
- acp/headless whole-config snapshot patches restate persistenceCompression:
none so raw JSONL fixtures stay harvestable, and re-pin the recorded
deepseek-v4-flash where the shipped config moved to pro
- depth-two overlay gains the app-config re-pin master's other overlays carry
- headless-agent stays on flash: goal/ralph overlays include it via a nested
include, which a config patch cannot reach to re-pin
- workspace-context scenarios re-record their session fixtures for the
per-candidate scope keys and both-siblings loading; acp session fixtures
otherwise return to master's (session/title + delegationDepth events)
2026-07-22 14:29:52 +08:00
Turtle
a5dfffcbe5
chore(examples): make todo_write opt-in for the tui-agent example
...
Make todo_write opt-in for the tui-agent example (disabled by default; TUI
still renders plans when the tool is loaded). Both enabled and disabled cases
covered by tests.
2026-07-22 14:29:52 +08:00
Turtle
f503d838e9
feat(tui): default auto-title on and re-derive it on resume
2026-07-22 14:29:52 +08:00
Turtle
ea93166e57
feat(tui): auto-title the terminal pane from the first user message
2026-07-22 14:29:28 +08:00
Turtle
45868b940f
feat(tui): startup banner iterations — slogans, sweep reveal, then no banner
...
Squashes three linearized steps (feat/tui-startup, feat/banner-reveal,
feat/remove-banner): the banner experiment converged on removing the
startup banner entirely; later commits restore it borderless and add the
brand gradient.
2026-07-22 14:29:28 +08:00
Turtle
0c9a4d7c28
Retire the readline front door and the repl-agent example
...
Delete packages/ui/stdio and examples/repl-agent; rename stdio-demo to
@deepseek-ai/dsh-tui-demo (TUI-only, refuses pipes before Loader boot).
tui-agent owns the coding composition inline; echo-agent and the CI demo
smoke move to the one-shot cli-demo bin, which gains -p/--prompt. The
UI-independent with-key e2es move verbatim to tui-agent. SDK wizard's
'stdio' interface becomes 'tui'. PTY testing stays confined to TUI
surfaces; all other subprocess tests ride pipes.
See .agents/notes/implemented/simplification/2026-07-20-retire-readline-front-door.md
2026-07-22 14:29:27 +08:00
Yichen Jiang
a5302d4d64
Merge remote-tracking branch 'origin/master' into worktree/semantic-session-checkpoints
...
# Conflicts:
# packages/session-persistence/session-persistence-jsonl/README.md
2026-07-22 10:54:08 +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
Tianyi Cui
5c783f3677
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# examples/acp-agent/tests/snapshots/advanced-toolchain/session.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/stream-json.expected.jsonl
# examples/tui-agent/tests/snapshots/code-mode/terminal.expected.txt
2026-07-22 00:36:06 +08:00
Tianyi Cui
ec8e3065ce
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
...
# Conflicts:
# examples/acp-agent/tests/snapshots/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
2026-07-22 00:29: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
53615c91e7
Merge master into worktree-windows-runtime
2026-07-21 23:39:14 +08:00
Tianyi Cui
3a895ce815
Merge master into codex/session-title
2026-07-21 21:11:32 +08:00
Tianyi Cui
33866af9b9
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
2026-07-21 20:09:59 +08:00
Yichen Jiang
8ce5989ffb
Merge remote-tracking branch 'origin/master' into worktree/semantic-session-checkpoints
...
# Conflicts:
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/tui-agent/tests/tui-keyless-smoke.e2e.ts
# packages/examples/acp-demo/package.json
# packages/examples/cli-demo/tsconfig.json
# packages/support/invariants/src/index.ts
# packages/support/invariants/tests/invariants.spec.ts
# pnpm-lock.yaml
2026-07-21 20:09:37 +08:00
Tianyi Cui
eed5ff4dcf
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
...
# Conflicts:
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/code-runtime/code-runtime-worker/package.json
# packages/spill/spill-policy/package.json
# pnpm-lock.yaml
2026-07-21 20:06:02 +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
6635a63bc5
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-20-canonical-tool-output-contract.i18n.yaml
# examples/tui-agent/tests/snapshots/code-mode/terminal.expected.txt
2026-07-21 19:18:01 +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
e134e7cc38
test(snapshot): refresh unified tool schema fixtures
2026-07-21 19:06:52 +08:00
Tianyi Cui
39c9bf3ef2
fix(llm-replay): publish recorded model capacity
2026-07-21 18:57:25 +08:00
Tianyi Cui
449e3cf298
fix(tools): make code result cards authoritative
2026-07-21 18:38:22 +08:00
Tianyi Cui
b024ebabed
Merge origin/master into worktree-windows-runtime
...
# Conflicts:
# .agents/notes/implemented/simplification/2026-07-04-fold-stdio-ui-helper.md
# packages/support/acp-snapshot/src/harness.ts
# packages/support/acp-snapshot/src/normalize.ts
# packages/support/acp-snapshot/tests/harness.spec.ts
# packages/support/acp-snapshot/tests/normalize.spec.ts
2026-07-21 17:14:44 +08:00
Yichen Jiang
6d12e3ab41
fix(session): add semantic crash checkpoints
2026-07-21 14:50:06 +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
Tianyi Cui
7c2fb0a6fe
fix: keep Code Mode result cards complete
2026-07-21 04:55:56 +08:00
Tianyi Cui
c1d7b0df81
feat: return typed values from Code Mode
2026-07-21 04:37:09 +08:00
Tianyi Cui
bb7db52941
Merge remote-tracking branch 'origin/master' into codex/session-title
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
# examples/headless-agent/tests/headless.snapshot.ts
# packages/examples/README.md
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/package.json
# packages/ui/README.md
# packages/ui/acp/README.md
2026-07-21 02:13:10 +08:00
Tianyi Cui
f71f96d292
feat(session-title): integrate queries ACP and TUI
2026-07-21 01:53:37 +08:00