_Kerman
bb6e473dd5
test(acp): refresh cordis-inspect snapshot for the claimed Inbox signature
...
The claimed-message refactor changed Inbox.claim(target, turn) and added
InboxNotifications.claimed, so the cordis_inspect tool output embedded in
the cordis-inspect-jsdoc replay fixture now carries the new declarations.
2026-08-05 21:58:09 +08:00
_Kerman
488b8df547
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-25-web-client-session-scope-and-provide-channel.i18n.yaml
# docs/architecture.i18n.yaml
# docs/architecture.md
# docs/architecture.zh.md
# docs/cookbook/extension-cookbook.i18n.yaml
# docs/cookbook/extension-cookbook.md
# docs/cookbook/extension-cookbook.zh.md
# docs/core-data-structures/llm-streaming.i18n.yaml
# docs/core-data-structures/session.i18n.yaml
# docs/defensive-patterns.i18n.yaml
# packages/acp/acp/README.i18n.yaml
# packages/client/runtime/README.i18n.yaml
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-goal/README.i18n.yaml
# packages/compact/compact-basic/README.i18n.yaml
# packages/context/README.i18n.yaml
# packages/context/README.md
# packages/context/README.zh.md
# packages/context/session-reference/README.i18n.yaml
# packages/context/session-reference/README.md
# packages/context/session-reference/README.zh.md
# packages/context/tmux-context/README.i18n.yaml
# packages/core/session/README.i18n.yaml
# packages/core/session/README.md
# packages/core/session/README.zh.md
# packages/goal/command-goal/README.i18n.yaml
# packages/goal/goal-session/README.i18n.yaml
# packages/goal/goal-session/README.zh.md
# packages/guard/README.i18n.yaml
# packages/guard/README.md
# packages/guard/README.zh.md
# packages/guard/repeat-tool-guard/README.i18n.yaml
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
# packages/plan/plan-mode/README.i18n.yaml
# packages/sdk/sdk-client/README.i18n.yaml
# packages/sdk/sdk-client/README.md
# packages/sdk/sdk-client/README.zh.md
# packages/session-persistence/session-persistence/README.i18n.yaml
# packages/subagent/subagent-dsh-sdk/README.i18n.yaml
# python/sdk/README.i18n.yaml
2026-08-05 20:43:30 +08:00
Turtle
8af3babaea
docs: rescan rebased documentation hierarchy
2026-08-05 16:16:57 +08:00
Turtle
dd8d446286
docs: apply hierarchy across the corpus
2026-08-05 16:13:28 +08:00
_Kerman
7e9fa76bf9
test(spine): fold workspace instructions into the first request
...
The react-loop simplification enters the workspace baseline with the first
request instead of queueing it for a second step, and the acp-agent sandbox
scenarios now replay the branch's inbox event flow. Update the agent-spine-demo
assertions to the single-request shape (workspace rule ahead of the skill
catalog, matching registration order) and refresh the two keyless sandbox
snapshots against the merged runtime.
2026-08-05 16:02:58 +08:00
_Kerman
289a23421d
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-sandbox.md
# .agents/notes/implemented/feature/2026-07-06-sandbox.zh.md
# packages/host/apiproxy/README.i18n.yaml
2026-08-05 15:34:19 +08:00
_Kerman
757adac62d
refactor(workspace-context): fold context into the entering pre-step batch
2026-08-05 14:46:48 +08:00
Wenlu Wang
61e46f077e
Merge pull request #1362 from deepseek-harness/fix/landlock-runner-failure-classification
...
Fix false sandbox failures from Landlock partial-enforcement notices
2026-08-05 13:59:47 +08:00
_Kerman
b76543cc1c
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# apps/web/tests/markdown-images.e2e.ts
# docs/cordis-catalog/services.md
# docs/core-data-structures/session.i18n.yaml
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/compact/compact-basic/tests/compact-basic.spec.ts
# packages/context/time-context/tests/invariant.spec.ts
# packages/context/time-context/tests/time-context.spec.ts
# packages/core/agent-loop/src/invariant.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# packages/core/agent-loop/tests/request-reconstruction.spec.ts
# packages/core/agent/tests/agent.spec.ts
# packages/core/session/README.i18n.yaml
# packages/core/session/src/index.ts
# packages/core/session/tests/derived-cache.spec.ts
# packages/core/session/tests/request-header.spec.ts
# packages/core/session/tests/session.spec.ts
# packages/core/session/tests/surface.spec.ts
# packages/fs/tool-str-replace-editor/tests/tools.spec.ts
# packages/goal/goal/tests/goal.spec.ts
# packages/plan/plan-mode/tests/plan-mode.spec.ts
# packages/pty/pty-local/tests/index.spec.ts
# packages/pty/pty-local/tests/local.spec.ts
# packages/pty/pty/tests/service.spec.ts
# packages/pty/tool-bash-persistent/tests/loader-composition.spec.ts
# packages/pty/tool-bash-persistent/tests/tools.spec.ts
# packages/pty/tool-pty/tests/loader-composition.spec.ts
# packages/pty/tool-pty/tests/tools.spec.ts
# packages/session-title/session-title-all-messages-llm/tests/provider.spec.ts
# packages/tasks/tasks-local/tests/tasks.spec.ts
# packages/ui/user-approval/tests/approval.spec.ts
2026-08-05 13:53:35 +08:00
kingwl
75bd2b8aaa
Merge remote-tracking branch 'origin/master' into fix/landlock-runner-failure-classification
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-sandbox.zh.md
# docs/core-data-structures/sandbox.i18n.yaml
# docs/core-data-structures/sandbox.zh.md
# docs/postmortem/README.i18n.yaml
# docs/postmortem/README.zh.md
# examples/acp-agent/tests/acp.snapshot.ts
# native/landlock-run/README.i18n.yaml
# packages/sandbox/sandbox-local/README.i18n.yaml
# packages/sandbox/sandbox-local/README.zh.md
# packages/sandbox/sandbox/README.i18n.yaml
2026-08-05 13:17:38 +08:00
_Kerman
02efe3ccea
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.zh.md
# .agents/notes/implemented/architecture/2026-06-11-event-sourced-sessions.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-microkernel-event-taxonomy.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-microkernel-event-taxonomy.zh.md
# .agents/notes/implemented/architecture/2026-06-18-agent-lifecycle-and-ownership-seams.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-18-session-surface.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.zh.md
# .agents/notes/implemented/architecture/2026-06-30-event-domain-semantics.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-30-event-domain-semantics.zh.md
# .agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.zh.md
# .agents/notes/implemented/architecture/2026-07-10-after-call-compaction-pressure-and-overflow-recovery.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-after-call-compaction-pressure-and-overflow-recovery.zh.md
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.zh.md
# .agents/notes/implemented/architecture/2026-07-14-provider-routed-llm-adapters.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-15-replay-token-meter-service.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-22-unified-send-and-coalesced-user-messages.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-22-unified-send-and-coalesced-user-messages.zh.md
# .agents/notes/implemented/architecture/2026-07-24-separate-context-injection-from-turn-execution.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-24-separate-context-injection-from-turn-execution.zh.md
# .agents/notes/implemented/architecture/2026-07-25-web-client-session-scope-and-provide-channel.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-25-web-client-session-scope-and-provide-channel.zh.md
# .agents/notes/implemented/architecture/2026-07-28-identified-immutable-message-values.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-21-semantic-session-checkpoints.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-21-semantic-session-checkpoints.zh.md
# .agents/notes/implemented/feature/2026-06-18-compaction-capability-seam.i18n.yaml
# .agents/notes/implemented/feature/2026-06-18-compaction-capability-seam.zh.md
# .agents/notes/implemented/feature/2026-06-24-workspace-context.i18n.yaml
# .agents/notes/implemented/feature/2026-06-24-workspace-context.zh.md
# .agents/notes/implemented/feature/2026-06-30-hook-bridges.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-hook-protocol-lib.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-hook-protocol-lib.zh.md
# .agents/notes/implemented/feature/2026-06-30-interception-seams.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-interception-seams.zh.md
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-sandbox.zh.md
# .agents/notes/implemented/feature/2026-07-16-durable-per-step-time-context.i18n.yaml
# .agents/notes/implemented/feature/2026-07-16-durable-per-step-time-context.zh.md
# .agents/notes/implemented/feature/2026-07-16-harness-level-loop.i18n.yaml
# .agents/notes/implemented/feature/2026-07-16-harness-level-loop.zh.md
# .agents/notes/implemented/feature/2026-07-19-human-goal-command.i18n.yaml
# .agents/notes/implemented/feature/2026-07-19-model-facing-goal-tools.i18n.yaml
# .agents/notes/implemented/feature/2026-07-19-persisted-same-session-goal-domain.i18n.yaml
# .agents/notes/implemented/feature/2026-07-19-persisted-same-session-goal-domain.zh.md
# .agents/notes/implemented/feature/2026-07-19-plugin-command-registration.i18n.yaml
# .agents/notes/implemented/feature/2026-07-19-same-session-goal-round-driver.i18n.yaml
# .agents/notes/implemented/feature/2026-07-19-same-session-goal-round-driver.zh.md
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.zh.md
# .agents/notes/implemented/feature/2026-07-27-tmux-location-context.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-public-agent-stop-surface.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-17-one-send-one-turn.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-17-one-send-one-turn.zh.md
# .agents/notes/implemented/simplification/2026-07-20-unwrap-injected-content-envelopes.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-22-plan-specific-collaboration-state.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-22-plan-specific-collaboration-state.zh.md
# .agents/notes/implemented/simplification/2026-07-24-agent-loop-observable-state-machine.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-27-request-error-retry-action.i18n.yaml
# docs/core-data-structures/compaction.i18n.yaml
# docs/core-data-structures/goal.i18n.yaml
# docs/core-data-structures/goal.zh.md
# docs/core-data-structures/llm-streaming.i18n.yaml
# docs/core-data-structures/session.i18n.yaml
# docs/core-data-structures/session.zh.md
# docs/core-data-structures/skills.i18n.yaml
# docs/core-data-structures/skills.zh.md
# docs/core-data-structures/system-prompt.i18n.yaml
# docs/defensive-patterns.i18n.yaml
# docs/defensive-patterns.zh.md
# docs/user/develop/framework/events.i18n.yaml
# docs/user/develop/framework/events.zh.md
# packages/acp/acp/README.i18n.yaml
# packages/client/ui-goal/README.i18n.yaml
# packages/compact/compact-basic/README.i18n.yaml
# packages/compact/compact/README.i18n.yaml
# packages/context/time-context/README.i18n.yaml
# packages/context/tmux-context/README.i18n.yaml
# packages/core/agent-loop/README.i18n.yaml
# packages/core/agent-loop/README.zh.md
# packages/core/agent/README.i18n.yaml
# packages/core/agent/README.zh.md
# packages/core/session/README.i18n.yaml
# packages/core/session/README.zh.md
# packages/core/system-prompt/README.i18n.yaml
# packages/core/system-prompt/README.zh.md
# packages/examples/cli-demo/README.i18n.yaml
# packages/goal/command-goal/README.i18n.yaml
# packages/goal/goal-session/README.i18n.yaml
# packages/goal/goal/README.i18n.yaml
# packages/goal/tool-goal/README.i18n.yaml
# packages/goal/tool-goal/README.zh.md
# packages/guard/README.i18n.yaml
# packages/guard/README.zh.md
# packages/guard/repeat-tool-guard/README.i18n.yaml
# packages/hooks/hooks-claude/README.i18n.yaml
# packages/hooks/hooks-codex/README.i18n.yaml
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.zh.md
# packages/llm/llm/README.i18n.yaml
# packages/plan/plan-mode/README.i18n.yaml
# packages/plan/plan-mode/README.zh.md
# packages/sdk/sdk-client/README.i18n.yaml
# packages/sdk/sdk-client/README.zh.md
# packages/sdk/sdk-protocol/README.i18n.yaml
# packages/session-persistence/session-persistence/README.i18n.yaml
# packages/session-persistence/session-persistence/README.zh.md
# packages/skill/tool-skill/README.i18n.yaml
# packages/subagent/subagent-dsh-sdk/README.i18n.yaml
# packages/subagent/subagent-inprocess/README.i18n.yaml
# packages/subagent/subagent-inprocess/README.zh.md
# packages/ui/jsonrpc/README.i18n.yaml
2026-08-05 13:09:53 +08:00
imccyu
e61839a6ab
fix(session): refresh Session.create artifacts
2026-08-05 11:57:17 +08:00
xjt
7bd111b2af
Merge origin/master into xjt/proofreading-active-docs-2-apply
2026-08-05 10:57:53 +08:00
_Kerman
86b91f1c4c
test(snapshot): refresh pwsh turn log
2026-08-05 10:54:45 +08:00
_Kerman
97e7d68340
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# examples/acp-agent/tests/snapshots/cancel-tool-calls/session.jsonl
2026-08-05 10:39:18 +08:00
Huanqi Cao
39b0695d48
Merge remote-tracking branch 'origin/master' into feat/pwsh-tool
...
# Conflicts:
# apps/cli/composition.md
# docs/testing.i18n.yaml
# docs/testing.md
# docs/testing.zh.md
2026-08-04 17:54:45 +08:00
xjt
2db712eec7
docs(i18n): proofread active Chinese documentation
2026-08-04 17:36:14 +08:00
Hypatia May
293fac9421
fix(sandbox): round 5 harden spawn attribution
2026-08-04 16:06:54 +08:00
Hypatia May
ec4a070f0e
Merge remote-tracking branch 'origin/master' into fix/landlock-runner-failure-classification
2026-08-04 14:47:58 +08:00
Hypatia May
96ba98c99e
fix(sandbox): require runner-specific spawn evidence
2026-08-04 14:47:46 +08:00
_Kerman
53ebb86ec2
test(goal): await dedicated goal change
2026-08-04 14:29:24 +08:00
_Kerman
5356bd972d
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# .agents/notes/archived/feature/2026-07-28-dsh-guided-skill-session-commands.i18n.yaml
# .agents/notes/archived/manifest.json
# .agents/notes/implemented/bug-fix/2026-07-29-human-transcript-append-origin.i18n.yaml
# .agents/notes/implemented/feature/2026-07-05-skill-system.i18n.yaml
# apps/cli/tests/snapshots/multi-turn-conversation/terminal.expected.txt
# apps/cli/tests/snapshots/queued-manual-compact/terminal.expected.txt
# apps/cli/tests/tui-keyless-smoke.e2e.ts
# apps/cli/tests/tui.snapshot.ts
# docs/architecture.i18n.yaml
# docs/architecture.md
# docs/architecture.zh.md
# docs/cookbook/extension-cookbook.i18n.yaml
# docs/event-producer-consumer.md
# packages/ui/tui/README.i18n.yaml
# packages/ui/tui/README.md
# packages/ui/tui/README.zh.md
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/harness.ts
# packages/ui/tui/tests/session-reference.snapshot.ts
# packages/ui/tui/tests/snapshots/conversation-streaming.expected.txt
# packages/ui/tui/tests/snapshots/details-command.expected.txt
# packages/ui/tui/tests/snapshots/details-selector.expected.txt
# packages/ui/tui/tests/snapshots/disposed-terminal.expected.txt
# packages/ui/tui/tests/snapshots/errors-and-help.expected.txt
# packages/ui/tui/tests/snapshots/status-diagnostics-narrow.expected.txt
# packages/ui/tui/tests/snapshots/status-diagnostics.expected.txt
# packages/ui/tui/tests/snapshots/surface-after-compaction-narrow.expected.txt
# packages/ui/tui/tests/snapshots/surface-after-compaction-wide.expected.txt
# packages/ui/tui/tests/snapshots/surface-before-compaction.expected.txt
# packages/ui/tui/tests/snapshots/surface-replayed-compaction.expected.txt
# packages/ui/tui/tests/snapshots/todo-plan-cleared.expected.txt
# packages/ui/tui/tests/snapshots/tool-cards-hidden-folded.expected.txt
# packages/ui/tui/tests/snapshots/untrusted-controls.expected.txt
# packages/ui/tui/tests/tui.snapshot.ts
# packages/ui/tui/tests/tui.spec.ts
2026-08-04 14:19:23 +08:00
_Kerman
1b16cef582
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# examples/acp-agent/tests/goal-snapshots/goal-session/input.json
# packages/client/ui-conversation/README.i18n.yaml
# packages/session-persistence/session-persistence-jsonl/src/zstd.ts
# packages/support/acp-snapshot/src/harness.ts
2026-08-04 14:14:57 +08:00
Turtle
64f9a83bd6
Merge pull request #1369 from deepseek-harness/codex/remove-dsh-tui-entrypoint
...
cleanup: remove TUI package and legacy dsh entrypoints
2026-08-04 14:11:37 +08:00
_Kerman
e874910a76
test(session): align turn-end contract artifacts
2026-08-04 14:09:52 +08:00
Hypatia May
0cd1611023
Merge remote-tracking branch 'origin/master' into fix/landlock-runner-failure-classification
2026-08-04 13:54:37 +08:00
_Kerman
d4fa26023d
fix(agent-loop): open turns before pre-step
2026-08-04 13:49:35 +08:00
Hypatia May
b0f33f13f4
docs(sandbox): cross-link Landlock snapshot rule
2026-08-04 13:49:34 +08:00
Hypatia May
f91aedd074
refactor(sandbox): defer native protocol exports (round 3)
2026-08-04 13:37:33 +08:00
Turtle
5fc420c5c0
test(acp-snapshot): wait for the durable goal pause before disposal
...
The goal scenario asserted a paused revision-2 goal, but the pause is
appended only after cancellation reaches idle — after turn/end. Under
parallel snapshot files the subprocess could dispose before the pause
record persisted, folding the log to an active revision-1 goal.
Add a waitForEventAfterTurnEnd input step (the turn-end/title waiters'
shape, parameterized by event type) and use it in the goal scenario to
hold the subprocess open until the goal-state record lands.
2026-08-04 13:25:39 +08:00
Turtle
10bb9cbf4a
cleanup: remove TUI package and legacy dsh entrypoints
2026-08-04 13:20:28 +08:00
_Kerman
384c87899c
test(session): cover legacy migration paths
2026-08-04 12:05:53 +08:00
Hypatia May
e36d040d0a
fix(sandbox): spawn confined argv directly (round 1)
2026-08-04 12:04:48 +08:00
_Kerman
eaa497d735
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.i18n.yaml
# examples/acp-agent/tests/snapshots/fs-glob-sampling/session.jsonl
# packages/ui/tui/README.i18n.yaml
# packages/ui/tui/src/components/dialogs.ts
# packages/ui/tui/tests/tui.spec.ts
2026-08-04 10:52:45 +08:00
Hypatia May
2eedb54849
fix(examples): declare sandbox fixture dependency
2026-08-04 09:37:50 +08:00
Hypatia May
71aafeb858
Merge origin/master into fix/landlock-runner-failure-classification
2026-08-04 09:14:13 +08:00
Huanqi Cao
3d1166fcdd
feat(bash): shell tools reject a mismatched executor dialect at load
...
The seam gains ShellDialect ('bash' | 'powershell' - concrete shells, not
families: zsh or fish would be their own values, never 'bash'); bash-local
declares bash (bash-sandbox inherits), pwsh-local declares powershell, and
both tools throw at load when the mounted executor speaks another dialect -
previously tool-pwsh over bash-local handed PowerShell text to bash -c and
the deployment error surfaced as ordinary nonzero exits. Pinned by mismatch
tests on both tools; the parity note records the contract (both languages).
Also from the review round: the tool-bash README's managed-environment
section becomes a summary linking the owning dsh-bash-env contract (the
duplicated prose carried a stale owner in its example import), the
pwshOnly JSDoc drops the stale 'on PATH' phrasing, and the task-tools
contract comment in the two pwsh compositions is indented into its block.
2026-08-03 22:47:53 +08:00
Huanqi Cao
ffeccc138b
Merge branch 'feat/ripgrep-packaged-binary' into feat/pwsh-tool
...
# Conflicts:
# docs/module-graph.md
2026-08-03 20:22:16 +08:00
Huanqi Cao
0ee198d70e
Merge remote-tracking branch 'origin/master' into feat/ripgrep-packaged-binary
2026-08-03 20:19:49 +08:00
_Kerman
fa79008c75
test(web): wait on the request marker button, not the hairline row
...
The boundary marker row is a 0-height hairline except at the table tail;
the marker button is absolutely positioned and visible anywhere, so the
terminal-marker e2e waits on the button. Also refresh the
cordis-inspect-jsdoc fixture to the typed error reason (LlmFailure).
2026-08-03 19:37:52 +08:00
Hypatia May
6343d8f6e6
fix(sandbox): evidence-gate runner failures (round 1)
2026-08-03 17:31:08 +08:00
_Kerman
a597763393
fix(session): type turn/end error as one structured failure
...
TurnEndReasonMap.error now carries a single `error: LlmFailure` field:
an LlmError keeps its structured facts, any other error flattens to
errorChain text under the UNKNOWN code. Consumers read message/code
directly instead of defending against an unknown union — this also fixes
errorChain() rendering structured failures as '[object Object]' in the
TUI and ACP error paths. Document the turn-stopping contract: a
concludesTurn result never short-circuits already-submitted next-step
work (same-step additionalContexts or racing steering still runs), data
decides.
2026-08-03 16:33:23 +08:00
_Kerman
cb2f01f48c
refactor(agent-loop): drop the steering/message session event
...
Steer, inject, and followup now land as durable user/message events on the
session surface; the steering/message event type and its ConversationNode
kind are removed from the client projection. Update tests, docs, generated
catalogs, and agent notes to match, and align the steering e2e fixture and
prompt inventory assertions with the durable user/message landing.
2026-08-03 16:04:26 +08:00
_Kerman
f4a2e0d10a
fix(agent): align consumers with inbox lifecycle
2026-08-03 13:14:24 +08:00
_Kerman
f3460a052f
fix(context): preserve committed workspace projections
2026-08-03 12:39:39 +08:00
_Kerman
49e90695cc
refactor(agent): complete inbox lifecycle migration
2026-08-03 12:25:33 +08:00
_Kerman
dc1d542092
Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-12-agent-scope-runtime-design.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-31-goal-owned-durable-events.i18n.yaml
# .agents/notes/implemented/feature/2026-07-19-model-facing-goal-tools.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-docked-web-goal-bar.i18n.yaml
# docs/architecture.i18n.yaml
# docs/architecture.md
# docs/architecture.zh.md
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.i18n.yaml
# docs/core-data-structures/core.md
# docs/core-data-structures/core.zh.md
# docs/event-producer-consumer.md
# docs/module-graph.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/code-mode-workspace-context/session.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/skill-load/session.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/session.1.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/session.2.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/session.1.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/session.1.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/session.2.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/session.1.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/session.2.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/session.1.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/session.1.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/session.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
# examples/headless-agent/tests/snapshots/pty-tools/session.jsonl
# examples/headless-agent/tests/subagent-inheritance-snapshots/parent-override/child.expected.jsonl
# examples/jsonrpc-agent/tests/snapshots/subagent-spawn/notifications.expected.jsonl
# examples/jsonrpc-agent/tests/snapshots/subagent-spawn/session.1.jsonl
# packages/acp/acp/README.i18n.yaml
# packages/acp/acp/src/index.ts
# packages/client/connection/src/client/index.ts
# packages/client/runtime/README.i18n.yaml
# packages/client/runtime/README.md
# packages/client/runtime/README.zh.md
# packages/client/runtime/src/client/sessions/conversation.ts
# packages/client/runtime/src/client/sessions/session.ts
# packages/client/runtime/tests/queue-store.spec.ts
# packages/client/ui-conversation/src/client/input/contract.ts
# packages/client/ui-goal/README.i18n.yaml
# packages/compact/compact-basic/src/index.ts
# packages/context/time-context/tests/time-context.spec.ts
# packages/context/tmux-context/tests/tmux-context.spec.ts
# packages/context/workspace-context/tests/workspace-context.spec.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/README.i18n.yaml
# packages/core/agent-loop/README.md
# packages/core/agent-loop/README.zh.md
# packages/core/agent-loop/src/agent.ts
# packages/core/agent-loop/tests/agent.spec.ts
# packages/core/agent-loop/tests/loop.spec.ts
# packages/core/agent/README.i18n.yaml
# packages/core/agent/README.md
# packages/core/agent/README.zh.md
# packages/core/agent/src/types.ts
# packages/core/session/README.i18n.yaml
# packages/core/session/README.md
# packages/core/session/README.zh.md
# packages/goal/command-goal/tests/command-goal.spec.ts
# packages/goal/goal/tests/goal.spec.ts
# packages/goal/tool-goal/README.i18n.yaml
# packages/goal/tool-goal/README.md
# packages/goal/tool-goal/README.zh.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/api/events.schema.ts
# packages/host/apiproxy/src/api/events.ts
# packages/host/apiproxy/src/api/rpc.ts
# packages/host/apiproxy/tests/api-proxy-commands.spec.ts
# packages/host/apiproxy/tests/api-proxy-projections.spec.ts
# packages/host/apiproxy/tests/rpc-schemas.spec.ts
# packages/pty/pty-local/tests/index.spec.ts
# packages/pty/pty-local/tests/local.spec.ts
# packages/pty/tool-pty/tests/loader-composition.spec.ts
# packages/pty/tool-pty/tests/tools.spec.ts
# packages/session-persistence/session-checkpoint-policy/src/index.ts
# packages/session-persistence/session-persistence/tests/coordinator-contract.ts
# packages/skill/tool-skill/tests/tool-skill.spec.ts
# packages/subagent/subagent-inprocess/README.i18n.yaml
# packages/subagent/subagent-inprocess/README.md
# packages/subagent/subagent-inprocess/README.zh.md
# packages/subagent/subagent-inprocess/src/index.ts
# packages/subagent/subagent-inprocess/tests/subagent-inprocess.spec.ts
# packages/support/acp-snapshot/src/harness.ts
# packages/ui/tui/tests/tui.spec.ts
2026-08-03 10:56:09 +08:00
Huanqi Cao
37bceb7dad
Merge branch 'feat/ripgrep-packaged-binary' into feat/pwsh-tool
2026-08-02 22:29:44 +08:00
ZiyaZhang
e72978ba98
fix(tool-goal): scope the wrap-up no-more-tools clause to the current run
...
The injected instruction persists as a durable user message, so an
unscoped 'Do not call any more tools.' stays in every later request's
history. Scope it: '...in this run; further work waits for the user's
next instruction.' A/B probes on deepseek-v4-pro show the scoped wording
is non-inferior in-turn (4/4 zero tool calls, closing quality unchanged)
and next-turn tool use is unaffected under both wordings; the scoped
form states the instruction's actual lifetime.
2026-08-02 07:29:18 -07:00
Huanqi Cao
ffb7d681f4
Merge remote-tracking branch 'origin/master' into feat/ripgrep-packaged-binary
2026-08-02 22:28:21 +08:00