Tianyi Cui
b5e8e4e9c1
fix(tui): neutralize terminal controls at display boundary
...
Model responses, replayed session data, tool presenter output, question metadata, configuration, and diagnostics all cross into ANSI-aware pi-tui renderers. Passing their C0 or C1 controls through unchanged lets an otherwise ordinary transcript emit OSC, CSI, cursor, or title operations in the user terminal.
Introduce one displayText boundary that preserves line-feed layout but renders every other C0/C1 control as visible \\xNN text before application styling is applied. Route transcript blocks, streaming output, tool cards, diffs, plans, dialogs, headers, cwd/title data, notices, errors, and pre-mount startup failures through that boundary while leaving pi-tui and the theme responsible for legitimate terminal control sequences.
Pin the contract at three levels: a settled headless-terminal golden spans the main untrusted display sources, unit coverage checks the pre-fullscreen failure path, and the real Loader/PTY conversation streams hostile OSC, cursor, and C1 probes and proves only their inert textual forms reach the terminal stream.
2026-07-19 10:50:19 +08:00
Tianyi Cui
202da55bf2
Merge remote-tracking branch 'origin/master' into codex/simp-name-front-door-defaults
2026-07-19 10:41:41 +08:00
Tianyi Cui
969f58ee5d
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-19 03:04:20 +08:00
Tianyi Cui
438e67225f
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-19 03:04:20 +08:00
Tianyi Cui
c1f7b8bd0f
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
2026-07-19 03:04:20 +08:00
Tianyi Cui
896ac6219b
Merge branch 'codex/simp-unify-agent-session-id' into codex/simp-ui-identity-residue
2026-07-19 03:04:19 +08:00
Tianyi Cui
5767a8d467
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
2026-07-19 03:04:19 +08:00
Tianyi Cui
1e4de0deaa
fix(sdk): pin generated project build tool
2026-07-19 03:02:42 +08:00
Tianyi Cui
60097258b9
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-19 02:39:09 +08:00
Tianyi Cui
c7beb041c7
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-19 02:39:09 +08:00
Tianyi Cui
7e0bf44f09
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
2026-07-19 02:39:09 +08:00
Tianyi Cui
a656ab4120
Merge branch 'codex/simp-unify-agent-session-id' into codex/simp-ui-identity-residue
2026-07-19 02:39:09 +08:00
Tianyi Cui
0c84c2a842
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
2026-07-19 02:39:09 +08:00
Tianyi Cui
8209532bb4
Merge branch 'codex/simp-compaction-surface' into codex/simp-agent-entry-state
2026-07-19 02:39:09 +08:00
Tianyi Cui
255dacd301
Merge branch 'codex/simp-trim-hook-snapshot-noise' into codex/simp-compaction-surface
2026-07-19 02:39:08 +08:00
Tianyi Cui
900fbc1ad9
Merge remote-tracking branch 'origin/master' into codex/simp-drop-unused-schema-default
2026-07-19 02:28:15 +08:00
Tianyi Cui
f6d44b74d4
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-19 02:21:46 +08:00
Tianyi Cui
d41d987de7
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-19 02:21:46 +08:00
Tianyi Cui
43b07d374e
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
...
# Conflicts:
# packages/ui/acp/src/index.ts
2026-07-19 02:21:21 +08:00
Tianyi Cui
e3f26237a4
Merge remote-tracking branch 'origin/master' into feat/tui-package
2026-07-19 02:21:11 +08:00
Tianyi Cui
9f1a69366b
docs: tighten identity bridge prose
2026-07-19 02:18:59 +08:00
Tianyi Cui
08c17ef48b
Merge remote-tracking branch 'origin/master' into codex/simp-hide-llm-adapter-helpers
2026-07-19 02:18:50 +08:00
Tianyi Cui
3760f198f3
docs: distinguish readline and TUI demos
2026-07-19 02:16:43 +08:00
Tianyi Cui
64e920fad7
Merge remote-tracking branch 'origin/master' into feat/tui-package
2026-07-19 02:10:33 +08:00
Tianyi Cui
7b076a1e01
Merge remote-tracking branch 'origin/master' into codex/simp-prune-llm-contract
2026-07-19 02:10:25 +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
21e1a08b55
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-19 01:57:27 +08:00
Tianyi Cui
18653a9ff7
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# packages/core/agent-loop/tests/agent.spec.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# website/zh-CN/api/harness/agent-loop.md
# website/zh-CN/api/harness/events.md
2026-07-19 01:57:18 +08:00
Tianyi Cui
b61e68ae8c
Merge branch 'codex/simp-unify-agent-session-id' into codex/simp-ui-identity-residue
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-19 01:55:29 +08:00
Tianyi Cui
f65f4b82d7
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/agent.ts
# packages/core/agent-loop/src/index.ts
# packages/core/agent-loop/tests/agent.spec.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# website/zh-CN/api/harness/agent-loop.md
2026-07-19 01:54:03 +08:00
Tianyi Cui
3b924a9327
Merge remote-tracking branch 'origin/feat/tui-package' into codex/tui-snapshot-testing
2026-07-19 01:49:42 +08:00
Tianyi Cui
a514130548
Merge remote-tracking branch 'origin/master' into feat/tui-package
2026-07-19 01:48:39 +08:00
Tianyi Cui
a45f0d73f3
Merge branch 'codex/simp-compaction-surface' into codex/simp-agent-entry-state
2026-07-19 01:47:42 +08:00
Tianyi Cui
3c03ca8a3c
Merge branch 'codex/simp-trim-hook-snapshot-noise' into codex/simp-compaction-surface
2026-07-19 01:47:42 +08:00
Tianyi Cui
2704cab46f
Merge remote-tracking branch 'origin/master' into codex/simp-shared-acp-test-launcher
2026-07-19 01:44:38 +08:00
Tianyi Cui
c866aa8ca6
Merge remote-tracking branch 'origin/master' into codex/simp-snapshot-fixture-inventory
2026-07-19 01:33:26 +08:00
Tianyi Cui
e68cef1be1
test(tui): replay recorded sessions through real tools
2026-07-19 01:31:55 +08:00
Tianyi Cui
8e366c3071
test(tui): snapshot semantic terminal state
2026-07-18 22:31:04 +08:00
imccyu
7a5d3ae5ce
fix(telemetry): stop bearer redaction from eating plain prose
...
The bearer rule matched any 8+ run of letters after the word, so
package.json prose like "uses bearer authentication" lost its
following word to the placeholder. Real bearer credentials always
carry a digit; require one in the candidate token.
2026-07-18 22:10:22 +08:00
imccyu
e674f4c20e
fix(telemetry): withhold package.json when cordis.yml is absent
...
buildTelemetryPayload read the two reported files independently, so a
dsh-sdk command mistakenly run in an arbitrary non-SDK directory (no
cordis.yml, e.g. any unrelated repo) still uploaded that directory's
package.json — dependency names and metadata of a project that never
opted into the SDK toolchain. Gate the manifest on cordis.yml presence:
without the config the directory is not an SDK project and its manifest
is not ours to report. Consent semantics are unchanged.
2026-07-18 22:10:22 +08:00
imccyu
013db6e8f0
fix(create-sdk): keep --json stdout pure NDJSON
...
The SKILL.md contract says every stdout line is one JSON event, but
createProject wrote the Created/Next-steps templates to stdout and the
default install/build path inherited the launcher's stdio, so package-
manager child output interleaved with the event stream. Under --json,
route human progress to stderr and run install/build through a
NodeCommandRunner that redirects child stdout+stderr to stderr.
2026-07-18 22:10:22 +08:00
imccyu
78f21bf703
fix(sdk): list create <source> and headless flags in usage help
...
dsh-sdk's usage template predates the create command and create-sdk's
predates --config/--config-json/--json, so --help hid both surfaces the
README already documents. Pin each with a help-output assertion.
2026-07-18 22:10:22 +08:00
Yichen Jiang
5190e10d27
Merge latest agent execution context base
2026-07-18 21:42:38 +08:00
Yichen Jiang
cddb79e844
Merge branch 'worktree/agent-execution-context-rfc' into worktree/explicit-turn-signal
2026-07-18 21:33:17 +08:00
Tianyi Cui
864b7bfd65
Merge remote-tracking branch 'origin/master' into feat/tui-package
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/coding-agent/cordis.yml
# examples/echo-agent/cordis.yml
# knip.json
# packages/core/agent-loop/README.md
# packages/core/agent-loop/tests/config-session-id.spec.ts
# packages/examples/README.md
# packages/examples/stdio-demo/README.md
# packages/examples/stdio-demo/tests/stdio-agent.spec.ts
2026-07-18 21:20:47 +08:00
Yichen Jiang
0e4785cdb7
Merge origin/master into worktree/agent-execution-context-rfc
2026-07-18 21:20:30 +08:00
Yichen Jiang
619da217d8
Merge branch 'master' into worktree/fix-sqlite-file-permissions
2026-07-18 21:17:01 +08:00
Yichen Jiang
b2ccf235dc
Merge branch 'master' into worktree/pi-ai-manual-e2e
2026-07-18 21:16:46 +08:00
Tianyi Cui
78f68dbbb9
docs(agent-loop): track scheduler drain follow-up
2026-07-18 20:35:58 +08:00
Tianyi Cui
3b52d216f3
Merge branch 'master' into parallel-tool-call
2026-07-18 20:18:24 +08:00