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
Tianyi Cui
c3c4197040
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
...
# Conflicts:
# packages/bash/tool-bash/src/index.ts
# packages/bash/tool-bash/tests/integration.spec.ts
# packages/ui/acp/README.md
2026-07-15 23:34:17 +08:00
Tianyi Cui
6143537d4e
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/cordis-catalog/events.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
# 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/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/tests/agent-core.spec.ts
# packages/subagent/tool-subagent/tests/tool-subagent.spec.ts
# packages/util/brand/README.md
# packages/util/brand/src/index.ts
2026-07-15 23:29:47 +08:00
kingwl
d46d37f372
Merge remote-tracking branch 'origin/master' into cross-family-fs-sandbox
...
# Conflicts:
# docs/config-catalog.md
# docs/module-graph.md
# docs/rfc/INDEX.md
# examples/acp-agent/composition.md
# examples/acp-agent/cordis.yml
# 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/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/permission-switching/session.jsonl
# examples/acp-agent/tests/snapshots/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# packages/bash/bash-sandbox/package.json
# packages/bash/bash/package.json
# packages/bash/tool-bash/src/index.ts
# packages/fs/fs/package.json
# packages/fs/tool-fs/package.json
# packages/fs/tool-fs/src/index.ts
# packages/fs/tool-fs/tests/tools.spec.ts
# pnpm-lock.yaml
2026-07-15 21:39:02 +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
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
Tianyi Cui
9082cebc56
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-15 16:27:37 +08:00
Tianyi Cui
6d1870c8c1
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/bash/tool-bash/src/index.ts
# packages/ui/stdio-agent/README.md
# packages/ui/stdio-agent/src/index.ts
# packages/ui/stdio/src/index.ts
# packages/workflow/workflow-workerthread/tests/workflow-workerthread.spec.ts
# packages/workflow/workflow/package.json
# scripts/gen-doc-graphs.ts
2026-07-15 16:24:43 +08:00
Yichen Jiang
162da52082
Merge branch 'master' into worktree/provider-routed-llm-adapters
2026-07-15 15:42:19 +08:00
Yichen Jiang
4f92ede4a0
Merge branch 'master' into codex/rfc-subagent-background-tasks
2026-07-15 15:41:56 +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
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
2ed2fa3896
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# packages/bash/bash-local/tests/run.spec.ts
# packages/bash/tool-bash/src/index.ts
2026-07-15 13:34:09 +08:00
Yichen Jiang
75331f03a6
Merge remote-tracking branch 'origin/master' into worktree/provider-routed-llm-adapters
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-15 13:30:40 +08:00
Yichen Jiang
815365dbbe
Merge remote-tracking branch 'origin/master' into worktree/provider-routed-llm-adapters
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.md
# docs/event-producer-consumer.md
# docs/persistence-catalog.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/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/session.jsonl
# examples/acp-agent/tests/snapshots/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# examples/sandbox-acp-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/compact/compact-basic/README.md
# packages/compact/compact-basic/src/index.ts
# packages/compact/compact-basic/tests/compact-basic.spec.ts
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/loop.ts
# packages/core/agent-loop/tests/properties.spec.ts
# packages/core/session/README.md
# packages/core/session/src/types.ts
# packages/core/session/tests/derived-cache.spec.ts
# packages/llm/llm-deepseek/src/index.ts
# packages/llm/llm-pi-ai/README.md
# packages/llm/llm-pi-ai/src/adapter.ts
# packages/llm/llm-pi-ai/src/convert.ts
# packages/llm/llm-pi-ai/tests/adapter.spec.ts
# packages/llm/llm/README.md
# packages/llm/llm/src/call-config.ts
# packages/llm/llm/src/index.ts
# packages/ui/acp-agent/src/index.ts
# packages/ui/acp/tests/harness.ts
# packages/ui/jsonrpc/README.md
# packages/ui/jsonrpc/src/server.ts
# packages/ui/stdio-agent/README.md
# packages/ui/stdio-agent/src/index.ts
# python/sdk/README.i18n.yaml
2026-07-14 22:17:50 +08:00
Yichen Jiang
e547980d77
feat(llm): route adapters by provider
2026-07-14 21:57:52 +08:00
kingwl
52aedf226d
Merge remote-tracking branch 'origin/master' into cross-family-fs-sandbox
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/persistence-catalog.md
# examples/acp-agent/cordis.yml
# 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/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/permission-switching/session.jsonl
# examples/acp-agent/tests/snapshots/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# packages/bash/bash-sandbox/src/index.ts
# packages/bash/bash/src/types.ts
# packages/bash/tool-bash/src/index.ts
# packages/fs/fs/src/index.ts
# packages/sandbox/sandbox-policy/src/session-mode.ts
# packages/ui/permission/src/index.ts
# packages/ui/permission/tests/permission.spec.ts
# scripts/doc-budgets.manifest.json
2026-07-14 21:25:36 +08:00
kingwl
2dc62497ce
feat(sandbox): cross-family file sandbox — one policy home, sandboxed fs provider, fs escalation parity
...
Extend SandboxMode enforcement from bash to the filesystem tools, the sandbox
RFC's deferred cross-family phase.
- dsh-sandbox-policy (new, ctx.sandboxPolicy): the single home for the
deployment default mode + workspaceRoot and the per-session override event,
renamed bash/sandbox-mode -> sandbox/mode and moved here with its fold/setter.
Decouples the bash seam from dsh-session.
- dsh-fs-sandbox (new): SandboxedFileSystem extends LocalFileSystem and fences
write/edit by the per-call mode (read-only denies, workspace-write contains to
the workspace + temp roots via the shared writableRoots, danger passes
through); reads pass through. Structured FS_SANDBOX_DENIED; in-lock parent
re-canonicalization. A policy fence in trusted code, not a kernel boundary.
- dsh-sandbox: the shared escalation kit (writableRoots, the strictly-wider
ladder, denial/hint markers, approveEscalation) both tool families use;
approveEscalation takes a structural approver so dsh-sandbox gains no
approval/agent dependency, and both tools stay duplication-free.
- tool-fs: write/edit advertise sandbox_permissions/justification under a
confining ctx.fs, map FS_SANDBOX_DENIED to the shared [sandbox: ...] marker,
and resolve the same one-approved-wider retry.
- examples/acp-agent: composes sandbox-policy + fs-sandbox, drops the gating
that disabled the fs stack under confined modes.
RFC docs/rfc/implemented/feature/2026-07-14-cross-family-fs-sandbox.md; the old
sandbox RFC's In-process/deferred/FAQ sections updated to shipped fact.
2026-07-14 20:05:57 +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
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
Yichen Jiang
0d67c16d56
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/bash.md
# docs/module-graph.md
# docs/rfc/INDEX.md
# docs/rfc/implemented/architecture/2026-06-30-bash-stdin-env-trusted-plugin-surface.md
# docs/rfc/implemented/feature/2026-06-30-hook-bridges.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/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/text-turn/session.jsonl
# examples/sandbox-acp-agent/tests/snapshots/mode-switching/session.jsonl
# packages/bash/bash-local/README.md
# packages/bash/bash-local/src/run.ts
# packages/bash/bash-local/tests/run.spec.ts
# packages/bash/bash/README.md
# 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/src/index.ts
# packages/session-persistence/session-persistence-jsonl/src/index.ts
# packages/session-persistence/session-persistence-sqlite/src/index.ts
# packages/session-persistence/session-persistence/README.md
# packages/session-persistence/session-persistence/src/index.ts
# packages/ui/acp-agent/README.md
# packages/ui/stdio-agent/README.md
2026-07-14 18:04:05 +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
Dudu-0223
30ba5bd23c
Merge remote-tracking branch 'origin/master' into codex/truncated-design
...
# Conflicts:
# docs/config-catalog.md
# docs/rfc/INDEX.md
# examples/acp-agent/README.md
# packages/bash/tool-bash/tests/tools.spec.ts
2026-07-14 10:57:29 +08:00
Yichen Jiang
cb78634bf2
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
# Conflicts:
# docs/event-producer-consumer.md
# packages/bash/tool-bash/tests/tools.spec.ts
2026-07-14 09:59:21 +08:00
Yichen Jiang
f570d2201e
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/config-catalog.md
# packages/hooks/hooks-codex/src/index.ts
# packages/ui/acp-agent/src/index.ts
# packages/ui/stdio-agent/src/index.ts
2026-07-14 09:51:50 +08:00
Tianyi Cui
14ed3a9914
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
2026-07-14 07:30:06 +08:00
Tianyi Cui
99b5f04c9b
fix: use unified identity for bash ownership
2026-07-14 07:26:46 +08:00
Tianyi Cui
26e2fe9356
refactor: drop assembled section order echo
2026-07-14 04:41:23 +08:00
Tianyi Cui
8c8b422f17
refactor: prune bash implementation surface
2026-07-14 03:37:51 +08:00
Tianyi Cui
225796c90d
refactor: hide the concrete agent loop
2026-07-14 02:32:35 +08:00
Tianyi Cui
709cc7200e
refactor: unify agent and session identity
2026-07-14 01:59:21 +08:00
Tianyi Cui
274db4966a
Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose
...
# Conflicts:
# packages/ui/acp/tests/stream-update.spec.ts
2026-07-14 00:08:53 +08:00
Tianyi Cui
661504b3ec
chore: gate TypeScript duplication in CI
2026-07-13 23:42:54 +08:00
Tianyi Cui
148046b9c8
docs: rebalance prose cleanup and add trimming skill
2026-07-13 23:27:00 +08:00
Yichen Jiang
ba329b16ce
Merge remote-tracking branch 'origin/master' into codex/agent-session-jsonl-location
...
# Conflicts:
# docs/module-graph.md
# docs/rfc/INDEX.md
# packages/core/agent-core/tests/agent-core.spec.ts
# pnpm-lock.yaml
2026-07-13 16:18:44 +08:00
Yichen Jiang
e2bc79a0ef
Merge remote-tracking branch 'origin/master' into codex/rfc-subagent-background-tasks
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/tool-catalog.md
# packages/bash/tool-bash/tests/integration.spec.ts
# packages/bash/tool-bash/tests/tools.spec.ts
# packages/core/agent-core/tests/agent-core.spec.ts
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/index.ts
# packages/core/agent/README.md
# packages/core/agent/src/index.ts
# packages/core/agent/tests/agent.spec.ts
# packages/subagent/subagent/README.md
# packages/subagent/subagent/src/index.ts
# packages/subagent/tool-subagent/README.md
# packages/subagent/tool-subagent/src/index.ts
# pnpm-lock.yaml
# scripts/doc-budgets.manifest.json
2026-07-13 15:57:17 +08:00
Dudu-0223
f859332e9c
Merge remote-tracking branch 'origin/master' into codex/truncated-design
...
# Conflicts:
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/rfc/INDEX.md
# packages/cordis/tool-cordis/src/api-catalog.ts
# pnpm-lock.yaml
2026-07-13 14:23:52 +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
df9617aaff
feat(bash): generalize managed shell environment
2026-07-12 15:41:42 +08:00
Tianyi Cui
75838e10b5
docs: trim generated prose
2026-07-12 03:36:43 +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
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
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
3263dab822
fix(core): enforce agent-scoped ownership boundaries
2026-07-11 22:55:26 +08:00
Tianyi Cui
b29a8eca71
fix(review): reconcile sandbox and approval contracts
2026-07-11 21:37:38 +08:00
Yichen Jiang
eea0a99985
feat: expose agent session log location
2026-07-10 20:52:27 +08:00
kingwl
3f663c9154
feat(modes): per-session sandbox/approval switching — the session log as the store, ACP config options
...
effective(session) = findLast(the session own knob events)?.value ?? the
composition-config default. One log-only event per knob, owned by its
domain (bash/sandbox-mode in dsh-bash, approval/policy in dsh-approval),
each exporting the same three-piece kit: the event declaration, a pure
fold, and THE write path — a switch IS its event; no owner service, no
facts map. Restart immunity and multi-session isolation fall out of the
log replay by construction.
Execution follows the fold on both sides: the bash tool stamps
escalation grant > session override > executor default, and the approval
seam prepends the never-gate that auto-rejects before any interactive
answerer. Visibility is two layers per knob: a per-agent prompt section
states the effective value on every request (logged through
request/header*, so what-the-model-was-told replays from the log), and an
agent/pre-step narrator injects at most one coalesced delta notice with
positional attribution (user switch vs operator/config drift). The ACP
bridge advertises one capability-gated select per composable knob with
currentValue folded per session, validates set_config_option against the
closed vocabularies, and anchors idle switches at the next turn
prompt-submit under the turn-enclosure contract.
2026-07-10 15:44:38 +08:00
kingwl
0e49615a3d
feat(tool-bash): sandbox escalation — one approved wider retry after a denial
...
The tool gate advertises sandbox_permissions (an enum of exactly the modes
STRICTLY WIDER than the mounted executor default — the schema makes a
non-widening request inexpressible) plus a required justification, exactly
when ctx.bash.sandboxMode reports a confining mode at registration:
composition truth, never a dead lever. An escalating call resolves
ctx.approval BEFORE anything executes with the audit-self-contained reason
"escalate sandbox to <mode>: <justification>"; allowed-once stamps the
granted mode onto that one bash request (the seam-level per-call override),
while rejected / cancelled / unavailable and the no-service / no-agent
paths each fail closed with their own error text and execute nothing. The
description teaches the flow only when the fields exist: retry the SAME
command once after a real denial, never preemptively; a rejected
escalation is final. No new session events: the attempt is an ordinary
tool/call, the decision is the approval audit pair, the outcome an
ordinary tool/result whose facts name the mode it ran under.
2026-07-10 15:43:28 +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