Dudu-0223
7ea1bf119f
feat(agent-loop): run safe tool calls in parallel
2026-07-13 11:13:21 +08:00
Dudu-0223
5ac03dde3f
fix(review): generalize spill storage locators
2026-07-13 11:07:27 +08:00
Dudu-0223
43535aab42
Merge remote-tracking branch 'origin/master' into codex/truncated-design
...
# Conflicts:
# docs/capability-seams.md
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/rfc/INDEX.md
# docs/tool-catalog.md
# examples/acp-agent/README.md
# packages/README.md
# packages/bash/bash/README.md
# packages/core/tools/tests/gen-tool-catalog.spec.ts
# packages/support/acp-snapshot/src/harness.ts
# pnpm-lock.yaml
# scripts/gen-doc-graphs.ts
# scripts/gen-tool-catalog.ts
# scripts/type-equiv.manifest.json
2026-07-13 09:49:46 +08:00
Yichen Jiang
2688df99cd
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
# 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/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# 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
2026-07-12 16:09:22 +08:00
Yichen Jiang
df9617aaff
feat(bash): generalize managed shell environment
2026-07-12 15:41:42 +08:00
Yichen Jiang
acdbe7b828
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# 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/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# examples/sandbox-acp-agent/tests/snapshots/mode-switching/session.jsonl
2026-07-12 13:01:26 +08:00
Tianyi Cui
e9a54f0e71
fix(workspace-context): require explicit byte budgets
2026-07-12 12:09:35 +08:00
Tianyi Cui
855abe9d60
Merge remote-tracking branch 'origin/master' into codex/pr106-comment-fixes
2026-07-12 11:49:21 +08:00
Tianyi Cui
75838e10b5
docs: trim generated prose
2026-07-12 03:36:43 +08:00
Tianyi Cui
3dca90261c
Merge remote-tracking branch 'origin/master' into codex/pr224-rfc-rewrite
...
# Conflicts:
# 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-12 01:39:29 +08:00
Tianyi Cui
c632b693c6
test(e2e): tolerate bounded loader contention
2026-07-12 00:50:50 +08:00
Tianyi Cui
382c243e78
test(e2e): widen keyless boot-smoke kill budgets to 30s
...
The keyless Loader-path smokes killed the child 10s after spawn, but a
loaded CI e2e runner routinely needs longer just to boot the unbuilt tsx
tree: on this branch's run the coding-agent smoke burned both retries and
failed at 30s wall-clock, and the sibling smokes passed only on retry x2
(master's latest run shows the same near-misses). The budget guards
against a HANG, not slowness — raise kill to 30s and the vitest test
timeout to 45s so a slow boot no longer masquerades as one.
2026-07-11 23:56:16 +08:00
Tianyi Cui
56e34619d7
Merge remote-tracking branch 'origin/master' into codex/pr224-rfc-rewrite
...
# Conflicts:
# docs/architecture.md
# docs/capability-seams.md
# docs/config-catalog.md
# docs/cookbook/extension-cookbook.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/rfc/implemented/feature/2026-06-30-interception-seams.md
# docs/rfc/proposed/feature/2026-06-14-acp-agent-client-protocol.md
# docs/tool-execution-pipeline.md
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-core/README.md
# packages/core/agent-loop/README.md
# packages/core/tools/README.md
# packages/core/tools/src/index.ts
# packages/core/tools/tests/tools.spec.ts
# packages/core/tools/tsconfig.json
# packages/ui/acp/src/index.ts
# scripts/doc-budgets.manifest.json
# scripts/gen-cordis-catalog.ts
# scripts/gen-doc-graphs.ts
2026-07-11 23:14:09 +08:00
Yichen Jiang
b23da625bb
docs: trim package and example indexes to budgets
2026-07-11 23:12:45 +08:00
Yichen Jiang
3ddea798f1
test(snapshot): refresh workspace context header
2026-07-11 23:07:50 +08:00
Yichen Jiang
53bbc89917
Merge remote-tracking branch 'origin/codex/project-instruction-files' into codex/project-instruction-files
2026-07-11 23:05:14 +08:00
Yichen Jiang
740106a51a
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/bash.md
# docs/core-data-structures/core.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/tool-catalog.md
# 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/text-turn/session.jsonl
# packages/README.md
# packages/bash/README.md
# packages/bash/bash-local/src/index.ts
# packages/bash/bash/README.md
# packages/bash/bash/package.json
# packages/bash/bash/src/index.ts
# packages/bash/bash/src/types.ts
# packages/bash/bash/tests/service.spec.ts
# packages/bash/bash/tsconfig.json
# packages/bash/tool-bash/README.md
# 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/core/agent-core/README.md
# packages/core/agent-core/package.json
# packages/core/agent-core/src/index.ts
# packages/core/agent-core/tests/agent-core.spec.ts
# packages/core/tools/tests/gen-tool-catalog.spec.ts
# packages/hooks/hook-protocol/tests/runner.spec.ts
# packages/ui/acp-agent/tests/acp-agent.spec.ts
# packages/ui/stdio-agent/tests/stdio-agent.spec.ts
# pnpm-lock.yaml
# scripts/doc-budgets.manifest.json
# scripts/gen-tool-catalog.ts
2026-07-11 23:04:27 +08:00
Yichen Jiang
1a3113ebb0
Merge remote-tracking branch 'origin/master' into codex/project-instruction-files
2026-07-11 23:02:24 +08:00
Yichen Jiang
e1f317dcce
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/module-graph.md
# docs/tool-catalog.md
# 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/text-turn/session.jsonl
# packages/bash/tool-bash/README.md
# packages/bash/tool-bash/package.json
# packages/bash/tool-bash/src/index.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
2026-07-11 22:57:27 +08:00
Tianyi Cui
36c94fbe3e
docs: align the agent-scope contracts
2026-07-11 22:55:40 +08:00
Tianyi Cui
3263dab822
fix(core): enforce agent-scoped ownership boundaries
2026-07-11 22:55:26 +08:00
Tianyi Cui
da9cef381c
Merge remote-tracking branch 'origin/master' into codex/system-prompt-snapshots
...
# 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/text-turn/session.jsonl
# packages/support/acp-snapshot/src/suite.ts
2026-07-11 22:48:14 +08:00
Tianyi Cui
169f86966a
fix(review): lint prompt Markdown paragraphs
2026-07-11 22:33:33 +08:00
Tianyi Cui
3baaecc078
Merge remote-tracking branch 'origin/master' into codex/skill-system
...
# Conflicts:
# docs/rfc/INDEX.md
# 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/text-turn/session.jsonl
# packages/README.md
2026-07-11 22:31:28 +08:00
Tianyi Cui
9339622d3b
test(acp): snapshot system prompts as Markdown
2026-07-11 22:24:20 +08:00
Tianyi Cui
84ad8866d7
test(snapshot): cover workspace context transcript
2026-07-11 22:04:52 +08:00
Tianyi Cui
1e2d8014a5
Merge remote-tracking branch 'origin/master' into feat/sandbox-support
...
# Conflicts:
# packages/workflow/workflow-workerthread/tests/workflow-workerthread.spec.ts
2026-07-11 21:43:10 +08:00
Tianyi Cui
b29a8eca71
fix(review): reconcile sandbox and approval contracts
2026-07-11 21:37:38 +08:00
Yichen Jiang
ba95271d63
Merge branch 'master' into codex/project-instruction-files
2026-07-10 22:58:39 +08:00
Yichen Jiang
386d4d3ec4
Merge branch 'master' into codex/skill-system
2026-07-10 22:58:15 +08:00
Yichen Jiang
eea0a99985
feat: expose agent session log location
2026-07-10 20:52:27 +08:00
Yichen Jiang
0b20353424
test(acp): clarify skill snapshot fixture
2026-07-10 17:47:11 +08:00
kingwl
ca39fd89b0
feat(example): sandbox-acp-agent — the live composition; RFCs to implemented
...
The three-entry cordis.yml (dsh-sandbox-local + dsh-bash-sandbox at a
read-only default + dsh-approval) served over ACP: the first live approval
composition. Recorded snapshot scenarios pin the wire end to end —
config-options advertisement, the mode-switching arc as the suite pinned
header (both switches, the prompt-section delta, one changed-by-the-user
notice per knob, a confined write landing under the switched mode), and
both escalation branches over scripted permissionAnswers (a grant runs
confined under workspace-write; a rejection executes nothing and pins the
fail-closed text). The with-key escalation e2e drives a real model +
real runner + the real bridge answerer, world-verified; ci.yml snapshot
lane and e2e.yml install bubblewrap so the confined replays actually
execute.
Both RFCs move to implemented/ (Decision/Consequences form, deferred
phases tracked in their own sections), with every cross-reference flipped.
2026-07-10 15:44:38 +08:00
kingwl
2eed448acf
feat(bash): the sandboxed executor — per-call policy carrier, denial facts, runner-failure classification
...
dsh-bash grows the per-call policy carrier: BashExecRequest.sandboxMode
(request-optional, spec required-but-nullable — the owner pattern; resolve()
is the one explicit defaulting step) and the BashExecutor.sandboxMode
capability fact (undefined in the base class — composition truth the tool
layer can read). dsh-bash-local carries the field verbatim and confines
nothing.
dsh-bash-sandbox extends LocalBashExecutor and hands ctx.sandbox the exact
argv it is about to spawn. A denial is a RESULT FACT (the command RAN;
result.sandbox.denied is orthogonal to exitCode/signal), classified
conservatively against the wrap own dialect; a RUNNER failure outranks
denial — foreground re-throws the structured SANDBOX_UNAVAILABLE, a settled
background task stamps sandbox.runnerFailed — so a broken sandbox never
reads as a failing command and the command never runs unconfined.
dsh-tool-bash renders the markers and teaches the model not to retry around
a policy denial; escalation and per-session switching are staged follow-ups.
2026-07-10 15:43:02 +08:00
kingwl
80d8726601
feat(acp): the bridge approval answerer + scripted permission answers
...
The ACP bridge registers the first real approval answerer: an ask for an
agent it owns becomes session/request_permission attached to the already-
streamed tool call (one-shot allow_once/reject_once only), outcomes map
conservatively (unknown optionId never grants, client cancel → cancelled),
and foreign or call-less requests delegate down the waterfall. The snapshot
harness accepts scripted permissionAnswers (FIFO; an unscripted prompt
answers cancelled, fail closed) so recorded scenarios can drive the wire
keylessly.
2026-07-10 15:43:02 +08:00
Yichen Jiang
680ae53bb6
Merge remote-tracking branch 'origin/master' into codex/skill-system
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/module-graph.md
# docs/rfc/INDEX.md
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# packages/core/agent-core/src/index.ts
# packages/core/tools/tests/gen-tool-catalog.spec.ts
# packages/support/acp-snapshot/src/suite.ts
# packages/ui/acp-agent/src/index.ts
2026-07-10 14:43:33 +08:00
Yichen Jiang
eee4f02108
Merge remote-tracking branch 'origin/master' into codex/project-instruction-files
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/core/agent-core/src/index.ts
# packages/ui/acp-agent/src/index.ts
2026-07-10 14:40:33 +08:00
Yichen Jiang
3fe196a751
Adapt workspace context to session prefixes
2026-07-10 14:32:44 +08:00
Yichen Jiang
6292d52236
feat(skill): move catalogs into session prefixes
2026-07-10 14:19:06 +08:00
Dudu-0223
8b86c3febc
fix: stabilize spill snapshot path budget
2026-07-10 13:15:15 +08:00
Dudu-0223
2d9351a23a
Merge remote-tracking branch 'origin/codex/truncated-design' into codex/grep-glob-rfc
2026-07-10 13:04:01 +08:00
Yichen Jiang
f42cd49337
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
# Conflicts:
# docs/architecture.md
# docs/module-graph.md
# 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/text-turn/session.jsonl
# packages/README.md
# packages/core/tools/tests/gen-tool-catalog.spec.ts
# scripts/doc-budgets.manifest.json
# tsconfig.base.json
# tsconfig.build.json
# tsconfig.json
2026-07-10 10:13:13 +08:00
Dudu-0223
31be42e92d
test: add ACP spill snapshot coverage
2026-07-10 10:07:32 +08:00
Tianyi Cui
9d2cf8ce82
Add keyless snapshot refresh mode
2026-07-10 00:48:27 +08:00
Yichen Jiang
fda827a751
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
Adopts #211 (Code Mode tools: run_code + the code/both-mode snapshot
scenarios). Tool-catalog expectations take the union (run_code +
task_*); the two new pinsHeader fixtures (code-mode-turn,
both-mode-turn) were recorded on master without the task runtime, so
they are re-pinned KEYLESSLY by replaying their recorded chunks against
the merged tree (same procedure as text-turn) — the fixture diff is
exactly the header delta: task tool schemas, the tool:tasks prompt
section, and the bash background wording.
2026-07-10 00:08:03 +08:00
Tianyi Cui
58a5088feb
Merge remote-tracking branch 'origin/master' into workflow-vm-to-workerthread
...
# Conflicts:
# docs/config-catalog.md
# docs/event-producer-consumer.md
# packages/core/tools/tests/gen-tool-catalog.spec.ts
2026-07-09 23:48:17 +08:00
Yichen Jiang
b9bf67d0a7
Merge remote-tracking branch 'origin/master' into codex/skill-system
2026-07-09 23:11:10 +08:00
Yichen Jiang
7b54768ee7
Merge remote-tracking branch 'origin/master' into codex/project-instruction-files
...
# Conflicts:
# AGENTS.md
# docs/architecture.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/rfc/INDEX.md
# packages/bash/bash-local/tests/executor.spec.ts
# packages/bash/bash-local/tests/run.spec.ts
# packages/core/agent-core/src/index.ts
# packages/core/agent-core/tests/agent-core.spec.ts
# packages/fs/fs-local/src/fsio.ts
# packages/ui/acp-agent/package.json
# packages/ui/acp-agent/src/index.ts
# packages/ui/acp-agent/tsconfig.json
# packages/ui/stdio-agent/package.json
# packages/ui/stdio-agent/tsconfig.json
# packages/util/README.md
# pnpm-lock.yaml
# tsconfig.build.json
# tsconfig.json
2026-07-09 23:04:41 +08:00
Tianyi Cui
2da28e89eb
Merge remote-tracking branch 'origin/master' into code-mode-tools
...
# Conflicts:
# examples/AGENTS.md
# examples/README.md
# package.json
# packages/core/tools/tests/gen-tool-catalog.spec.ts
2026-07-09 22:58:58 +08:00
Yichen Jiang
032510a85a
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
Adopts #220 (tool-cordis + the gen-cordis-api gate: the runtime API
catalog regenerated with ctx.tasks/onCleanup on it) and #225 (shared
transcript renderer). Tool-catalog expectations take the union
(cordis_* + task_*); packages/README budget adopts master's 660
ceiling, which absorbs both new group rows.
2026-07-09 22:42:19 +08:00