8719fa84f0
feat: add economy/maximum presets, tool-lab and subagent-cursor extensions
...
CI / windows node 24 / wine blocking (push) Has been skipped
CI / node 22.19 (push) Has been skipped
CI / node 26 (push) Has been skipped
CI / python 3.10 / keyless SDK (push) Has been skipped
CI / python runtime / release-shaped Linux x64 (push) Has been skipped
CI / wine apt cache (push) Successful in 7s
CI / serial / linux (push) Has been skipped
Deploy documentation / build (push) Failing after 1m25s
Deploy documentation / deploy (push) Has been skipped
Landlock Run / Matrix (push) Successful in 5s
Release (vendor) / Pack npm tarballs (push) Failing after 2m47s
Release (dsh) / Pack npm tarballs (push) Failing after 1m56s
Sandbox / sandbox e2e (landlock, ubuntu-24.04) (push) Failing after 1m57s
Sandbox / sandbox e2e (bwrap, ubuntu-latest) (push) Failing after 1m19s
Release (vendor) / Publish to npm (push) Has been skipped
Release (dsh) / Publish to npm (push) Has been skipped
CI / serial / windows (self-hosted standby) (push) Has been cancelled
CI / larger-runner-benchmark (16, linux, dsh-ubuntu-24-04-16core, typecheck) (push) Has been cancelled
Landlock Run / darwin (no platform package — degradation proof) (push) Has been cancelled
Landlock Run / ${{ matrix.platform }} (push) Has been cancelled
CI / node 24 / static (push) Has been cancelled
CI / node 24 / coverage (push) Has been cancelled
CI / node 24 / snapshots and artifacts (push) Has been cancelled
CI / windows node 24 / native complete (push) Has been cancelled
CI / serial / linux (self-hosted standby) (push) Has been cancelled
CI / serial / macos (push) Has been cancelled
CI / larger-runner-benchmark (16, windows, dsh-windows-2025-16core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (32, linux, dsh-ubuntu-24-04-32core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (32, windows, dsh-windows-2025-32core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (4, linux, dsh-ubuntu-24-04-4core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (4, windows, dsh-windows-2025-4core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (64, linux, dsh-ubuntu-24-04-64core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (64, windows, dsh-windows-2025-64core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (8, windows, dsh-windows-2025-8core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (96, linux, dsh-ubuntu-24-04-96core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (96, windows, dsh-windows-2025-96core, production-site) (push) Has been cancelled
CI / consolidated-runner-benchmark (16, linux, dsh-ubuntu-24-04-16core, 16) (push) Has been cancelled
CI / consolidated-runner-benchmark (16, windows, dsh-windows-2025-16core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (32, linux, dsh-ubuntu-24-04-32core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (32, windows, dsh-windows-2025-32core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (4, linux, dsh-ubuntu-24-04-4core, 4) (push) Has been cancelled
CI / consolidated-runner-benchmark (4, windows, dsh-windows-2025-4core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (64, linux, dsh-ubuntu-24-04-64core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (64, windows, dsh-windows-2025-64core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (8, linux, dsh-ubuntu-24-04-8core, 8) (push) Has been cancelled
CI / consolidated-runner-benchmark (8, windows, dsh-windows-2025-8core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (96, linux, dsh-ubuntu-24-04-96core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (96, windows, dsh-windows-2025-96core, 2) (push) Has been cancelled
CI / all checks passed (push) Has been cancelled
Sandbox / sandbox e2e (seatbelt, macos-latest) (push) Has been cancelled
CI / larger-runner-benchmark (8, linux, dsh-ubuntu-24-04-8core, typecheck) (push) Has been cancelled
Sandbox / sandbox e2e (landlock, ubuntu-24.04-arm) (push) Has been cancelled
E2E (real DeepSeek API) / e2e (push) Failing after 1m24s
- new economy and maximum agent presets with three-role pipeline skill
- new packages/extensions/tool-lab (home-lab ComfyUI/Docling/Whishper tools)
- new packages/subagent/subagent-cursor provider
- openrouter balance UI with on-demand refresh
- session projection context-seed boundary fold
- regenerate docs catalogs; keep local searxng benchmark scripts
2026-08-23 22:12:30 +07:00
ed152416d5
feat: add searxng web-search provider, openrouter cost balance UI, offline scripts; update source-launch and docs
CI / node 22.19 (push) Has been skipped
CI / node 26 (push) Has been skipped
CI / python 3.10 / keyless SDK (push) Has been skipped
CI / python runtime / release-shaped Linux x64 (push) Has been skipped
CI / windows node 24 / wine blocking (push) Has been skipped
CI / wine apt cache (push) Successful in 58s
CI / serial / linux (push) Has been skipped
Deploy documentation / build (push) Failing after 2m46s
Deploy documentation / deploy (push) Has been skipped
E2E (real DeepSeek API) / e2e (push) Failing after 1m18s
Sandbox / sandbox e2e (bwrap, ubuntu-latest) (push) Failing after 1m18s
Landlock Run / Matrix (push) Successful in 13s
Release (vendor) / Pack npm tarballs (push) Failing after 3m43s
Release (dsh) / Pack npm tarballs (push) Failing after 1m53s
Sandbox / sandbox e2e (landlock, ubuntu-24.04) (push) Failing after 1m51s
Release (vendor) / Publish to npm (push) Has been skipped
Release (dsh) / Publish to npm (push) Has been skipped
CI / node 24 / static (push) Has been cancelled
CI / node 24 / coverage (push) Has been cancelled
CI / node 24 / snapshots and artifacts (push) Has been cancelled
CI / windows node 24 / native complete (push) Has been cancelled
CI / serial / linux (self-hosted standby) (push) Has been cancelled
CI / serial / macos (push) Has been cancelled
CI / serial / windows (self-hosted standby) (push) Has been cancelled
CI / larger-runner-benchmark (16, linux, dsh-ubuntu-24-04-16core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (16, windows, dsh-windows-2025-16core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (32, linux, dsh-ubuntu-24-04-32core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (32, windows, dsh-windows-2025-32core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (4, linux, dsh-ubuntu-24-04-4core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (4, windows, dsh-windows-2025-4core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (64, linux, dsh-ubuntu-24-04-64core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (64, windows, dsh-windows-2025-64core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (8, linux, dsh-ubuntu-24-04-8core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (8, windows, dsh-windows-2025-8core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (96, linux, dsh-ubuntu-24-04-96core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (96, windows, dsh-windows-2025-96core, production-site) (push) Has been cancelled
CI / consolidated-runner-benchmark (16, linux, dsh-ubuntu-24-04-16core, 16) (push) Has been cancelled
CI / consolidated-runner-benchmark (16, windows, dsh-windows-2025-16core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (32, linux, dsh-ubuntu-24-04-32core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (32, windows, dsh-windows-2025-32core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (4, linux, dsh-ubuntu-24-04-4core, 4) (push) Has been cancelled
CI / consolidated-runner-benchmark (4, windows, dsh-windows-2025-4core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (64, linux, dsh-ubuntu-24-04-64core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (64, windows, dsh-windows-2025-64core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (8, linux, dsh-ubuntu-24-04-8core, 8) (push) Has been cancelled
CI / consolidated-runner-benchmark (8, windows, dsh-windows-2025-8core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (96, linux, dsh-ubuntu-24-04-96core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (96, windows, dsh-windows-2025-96core, 2) (push) Has been cancelled
CI / all checks passed (push) Has been cancelled
Sandbox / sandbox e2e (seatbelt, macos-latest) (push) Has been cancelled
Sandbox / sandbox e2e (landlock, ubuntu-24.04-arm) (push) Has been cancelled
Landlock Run / ${{ matrix.platform }} (push) Has been cancelled
Landlock Run / darwin (no platform package — degradation proof) (push) Has been cancelled
2026-08-20 13:01:40 +07:00
Tianyi Cui
c15f2f4d25
Merge remote-tracking branch 'origin/master' into HEAD
2026-08-17 11:39:33 +08:00
Tianyi Cui
b2f23f88ad
Merge commit '70396085b141370ce32de1be4e225b4384eaf46d' into HEAD
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-07-mcp-client-plugin.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.md
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.zh.md
# .agents/notes/implemented/simplification/2026-07-23-acp-automation-only-protocol.i18n.yaml
# docs/config-catalog.i18n.yaml
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# docs/tool-catalog.i18n.yaml
# docs/tool-catalog.md
# docs/tool-catalog.zh.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/code-mode-turn/tool-schemas.expected.json
# packages/core/tools/README.i18n.yaml
# packages/core/tools/README.zh.md
# packages/core/tools/src/code-mode.ts
# packages/host/apiproxy/tests/api-proxy-models.spec.ts
# packages/host/plugin-inventory/tests/inventory.spec.ts
# packages/mcp/mcp-client/tests/mcp-client.e2e.ts
# packages/mcp/mcp-client/tests/mcp-client.spec.ts
# packages/self-modification/tool-cordis/src/api-catalog.ts
# packages/test-support/acp-snapshot/README.i18n.yaml
# pnpm-lock.yaml
2026-08-17 11:31:59 +08:00
Yichen Jiang
a8dc6f9776
fix(pty): keep the controlled prompt so persistent bash settles fast
...
tool-bash-persistent overwrote the backend's PS1, so terminal-bash prompt
readiness never matched and every send degraded to the 3.5s silence tier
(idleSilenceMs + handoffGraceMs) under production defaults.
The controlled PROMPT_COMMAND now re-asserts PS1 before every prompt, so an
in-shell override never survives to the next prompt. The tool initializes
with stty -echo alone and detects the no-end-marker fallback through the
seam's stdin_read wait reason instead of matching its own prompt text.
Tool calls drop from 7180/3560/3566 ms to 355/88/91 ms (spawn+init+echo,
echo, pwd; darwin, production defaults). The loader composition suite now
pins the fast path by pushing idleSilenceMs beyond the send bound, and a
real-PTY case proves PS1 self-healing.
Fixes #2585
2026-08-15 11:06:57 +08:00
Yichen Jiang
226600147e
feat(llm-deepseek): support low reasoning effort
2026-08-14 11:47:59 +08:00
_Kerman
378a662082
Merge remote-tracking branch 'origin/master' into dshw/pr-2458
2026-08-13 15:15:39 +08:00
Turtle
62080d49c2
docs: fix release smoke test failures
2026-08-13 14:20:09 +08:00
_Kerman
3c06c66ac4
fix(web): hide verified cold blank sessions
2026-08-13 14:04:16 +08:00
Hypatia May
b6b6a72df7
feat(session-query): ship full-text session search opt-in via openAt never
...
The shipped bundles keep ctx.sessionQuery mounted but set the new
session-query-sqlite `openAt: never` phase: searchSessions/searchEvents
fail with the typed SESSION_QUERY_SEARCH_DISABLED code before any request
normalization, node:sqlite is never imported or opened, and no source
observation or reconciliation runs. Every inherited exact read, filter,
and trace — session export descendants, subagent-fork Workspace
inheritance, title reads — keeps working, and the Web sidebar search
degrades to its designed local title/workspace matching. Enabling content
search is a one-line openAt override in a later patch layer; the web e2e
scaffold keeps it enabled as the assembled opt-in coverage.
2026-08-13 11:46:37 +08:00
Yichen Jiang
3bcc1a0bf7
Merge remote-tracking branch 'origin/master' into worktree/minimal-no-runtime-context
...
# Conflicts:
# packages/core/system-prompt/README.i18n.yaml
# packages/core/system-prompt/README.md
# packages/core/system-prompt/README.zh.md
# packages/examples/agent-spine-demo/README.i18n.yaml
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/README.zh.md
# packages/self-modification/tool-cordis/src/api-catalog.ts
2026-08-13 10:24:29 +08:00
imccyu
34dd480ae5
fix(session-query): rename session log export package
2026-08-13 05:02:00 +08:00
imccyu
45dfff0cdd
fix: rebase 2
2026-08-13 02:22:10 +08:00
Tianyi Cui
a2d0f7f411
refactor: apply repository naming contract
...
Apply the accepted pre-release package, service, type, directory, and role renames as one repository-wide change.
2026-08-13 00:54:38 +08:00
ZiyaZhang
d6fc55ad86
docs: refresh generated references
2026-08-12 08:39:09 -07:00
Yichen Jiang
ece8645080
fix: suppress runtime context in minimal profiles
2026-08-12 23:28:15 +08:00
07akioni
ae3f89e772
Merge remote-tracking branch 'origin/master' into fix/stats
2026-08-12 21:29:00 +08:00
Tianyi Cui
b3e2de873d
Merge master into worktree/fix-1463-rich-content-bridge
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.zh.md
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.zh.md
# .agents/notes/implemented/feature/2026-08-10-telemetry-default-off.i18n.yaml
# .agents/notes/implemented/feature/2026-08-10-telemetry-default-off.md
# .agents/notes/implemented/feature/2026-08-10-telemetry-default-off.zh.md
# .agents/notes/implemented/simplification/2026-07-23-acp-automation-only-protocol.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-23-acp-automation-only-protocol.zh.md
# apps/web/tests/scaffold.ts
2026-08-12 21:25:26 +08:00
07akioni
efb1857853
Merge remote-tracking branch 'origin/master' into fix/stats
2026-08-12 21:22:05 +08:00
xjt
23e09ec08e
Merge master into docs/post-v3-release-proofreading
2026-08-12 20:48:08 +08:00
07akioni
dabe6207f5
fix: 分页问题
2026-08-12 20:26:47 +08:00
xjt
3c6b6837a5
Merge remote-tracking branch 'origin/master' into docs/post-v3-release-proofreading
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-23-session-telemetry-otel-revival.i18n.yaml
# .agents/notes/implemented/feature/2026-07-23-session-telemetry-otel-revival.zh.md
# .agents/notes/implemented/feature/2026-07-31-web-telemetry-default-mount.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-web-telemetry-default-mount.zh.md
# README.i18n.yaml
# README.zh.md
# apps/cli/reference/README.i18n.yaml
# apps/cli/reference/README.zh.md
# scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-08-12 17:52:21 +08:00
Tianyi Cui
4f87c1fe6d
feat(acp): bridge durable image prompts and replies
2026-08-12 17:48:17 +08:00
NI0317
8940282aee
feat(session-export): add command and Header action
2026-08-12 17:41:36 +08:00
Chinesezjc
93b400a1de
Merge branch 'codex/disable-telemetry-default' into master
...
Resolved conflicts:
- packages/client/ui-settings-general/README.md, README.zh.md: kept PR
opt-in telemetry description (DSH_TELEMETRY_MODE)
- scripts/snapshots/translation-prompt-v4: kept master's newer README
structure snapshot
- i18n.yaml pairing records: resolved per file state
- pnpm-lock.yaml: regenerated
- Modify/delete conflicts (scaffold/telemetry, sdk-follow-up-capabilities):
kept master deletions
2026-08-12 17:27:37 +08:00
xjt
7325036d50
Merge remote-tracking branch 'origin/master' into docs/post-v3-release-proofreading
...
# Conflicts:
# docs/subsystems/feedback.i18n.yaml
# docs/subsystems/feedback.zh.md
2026-08-12 17:10:13 +08:00
Chinesezjc
d11df1825c
Merge remote-tracking branch 'origin/master' into feat/web-message-feedback-ui
2026-08-12 16:48:46 +08:00
xjt
947798948e
Merge remote-tracking branch 'origin/master' into docs/post-v3-release-proofreading
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-08-03-pi-ai-declared-provider-catalog.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-03-pi-ai-declared-provider-catalog.zh.md
# packages/llm/llm-pi-ai/README.i18n.yaml
# packages/llm/llm-pi-ai/README.zh.md
2026-08-12 16:48:14 +08:00
xjt
ce883ffea3
Merge remote-tracking branch 'origin/master' into docs/post-v3-release-proofreading
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-20-generic-long-running-tool-runtime.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-20-generic-long-running-tool-runtime.zh.md
# README.i18n.yaml
# README.zh.md
# scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-08-12 16:45:48 +08:00
Chinesezjc
e0e43f40c2
Merge remote-tracking branch 'origin/master' into feat/web-message-feedback-ui
2026-08-12 16:39:15 +08:00
Chinesezjc
c55fca5eda
Merge remote-tracking branch 'origin/master' into feat/web-message-feedback-ui
...
Keep both Remote contributions master and this branch add: the mount loop
now carries commandsRemote, goalsRemote, pluginInventoryRemote, and
messageFeedbackRemote, with both new tsconfig references retained.
2026-08-12 16:36:10 +08:00
Yichen Jiang
b77033d8b3
Merge master into worktree/custom-model-image-input-0185de
2026-08-12 16:32:49 +08:00
Yichen Jiang
94289d057e
fix(llm-pi-ai): let a model declare the request modalities it accepts
...
A model the installed pi-ai catalog does not describe was reported as
text-only with no way to say otherwise, so a vision model added through
the custom-provider form was refused at every image admission point.
The justification in the source described the DeepSeek chat-completions
serializer, which does reject image blocks; the pi-ai request converter
and every wire protocol it speaks carry images.
Modalities now resolve entry `input` -> installed catalog entry -> route
`defaultInput`, the chain the two capacity fallbacks already use, so the
route value is a fallback and never narrows a catalog model. Its default
stays `[text]`: nothing can interrogate a gateway for its modalities, and
over-claiming admits an image the provider rejects mid-turn, after prompt
admission has already committed the message.
2026-08-12 16:18:52 +08:00
creatixchu
7c8ec67102
Merge remote-tracking branch 'origin/master' into worktree/attachment-alignment-2
2026-08-12 16:14:56 +08:00
pku-xht
21b316de23
Merge origin/master into codex/bounded-background-tasks-v2
2026-08-12 15:54:49 +08:00
creatixchu
2014d354e3
Merge remote-tracking branch 'origin/master' into worktree/attachment-alignment-2
2026-08-12 15:19:32 +08:00
creatixchu
7259252536
Merge remote-tracking branch 'origin/master' into worktree/attachment-alignment-2
2026-08-12 13:02:39 +08:00
xjt
ab140cd299
Merge remote-tracking branch 'origin/master' into docs/post-v3-release-proofreading
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-20-dsh-cli-personal-config.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-dsh-cli-personal-config.zh.md
# .agents/notes/implemented/feature/2026-07-25-session-list-browsing-and-manual-order.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-session-list-browsing-and-manual-order.zh.md
# .agents/notes/implemented/feature/2026-07-25-workspace-ui-product-flow.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-workspace-ui-product-flow.zh.md
# .agents/notes/implemented/feature/2026-07-26-code-dispatch-ui-foundation.i18n.yaml
# .agents/notes/implemented/feature/2026-07-26-code-dispatch-ui-foundation.zh.md
# docs/user/develop/basic/index.i18n.yaml
# docs/user/develop/basic/index.zh.md
# docs/user/guide/config.i18n.yaml
# docs/user/guide/config.zh.md
# docs/user/guide/providers.i18n.yaml
# docs/user/guide/providers.zh.md
# packages/bundle/base/README.i18n.yaml
# packages/bundle/base/README.zh.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.zh.md
2026-08-12 12:59:38 +08:00
creatixchu
2c9036b102
feat(web): whole-page image drop, projected intake limits, and thumbnail tiling
...
Second alignment step for #2248 : document-level drag intake behind the new
DropOverlay atom, lightbox close icon and shared dialog mask, DeepSeek Chat
thumbnail rules (single 240px long edge with ratio clamp, 64px tiles, merged
consecutive assistant images), image limits raised to 20/10MiB/100MiB and
published to clients as the imageLimits projection, whole-batch intake
pre-check with product-copy banners, and attachment-error reasons mapped to
localized copy.
2026-08-12 12:31:52 +08:00
xjt
4806d94715
docs(i18n): include complete proofreading corpus
2026-08-12 12:30:19 +08:00
ZiyaZhang
6ed5df964e
feat(web): add read-only Loader plugin inventory
2026-08-11 21:10:14 -07:00
Yichen Jiang
dfa2d91dcb
Merge master into worktree/preset-user-root-in-package
...
Overlaps master on the preset e2e, the web scaffold, and the generated
config-catalog triplet; all merged textually, so the catalog is regenerated and
its pairing hashes re-recorded rather than trusted.
2026-08-12 11:08:55 +08:00
Chinesezjc
b462d5fd69
Merge remote-tracking branch 'origin/master' into feat/web-message-feedback-ui
...
Adapt to two contract changes master introduced:
- The generated Remote face now wraps every business result in
RemoteResult, folding carrier failures into an ok:false branch instead
of rejecting. The controller reads that envelope at its three call
sites and maps a carrier failure onto the same settled shape the
controls already render; three specs cover the new branch.
- Client packages split their tsconfig into host and client halves, and
the host aggregate now compiles any test not named *.client.spec.*.
Rename this package's specs to the client convention and drop the
../connection project reference, which pointed at a solution file that
no longer carries the client sources.
Keep master's mount loop with its rollback-on-failure in api-remotes and
add messageFeedbackRemote to it.
2026-08-12 10:43:23 +08:00
imccyu
929086fb36
fix: docs
2026-08-12 02:30:08 +08:00
Chinesezjc
63e6ea1b79
Merge remote-tracking branch 'origin/master' into feat/web-message-feedback-ui
2026-08-11 23:54:29 +08:00
pku-xht
9e4d391477
Merge commit '1ba530868a928c4286c8097647a649843dfae2bc' into codex/bounded-background-tasks-v2
2026-08-11 23:27:26 +08:00
pku-xht
38922cbbb9
docs(tasks): clarify admission lifecycle
2026-08-11 23:13:35 +08:00
Yichen Jiang
e258cf7a2d
fix(tools): resolve the collapse through the scope, not the deployment default
...
`collapses()` read `defaultMode`, so the collapse only applied when the
DEPLOYMENT was `code`. An agent handed `code` by an agent preset under a
native default announced `[run_code]` on the wire and still executed a
model-direct native call -- the bypass this collapse exists to close,
reopened for exactly the composition `dsh-agent-tool-mode` produces.
`modeFor(scope)` is the same resolution `wireSchemas` and the SDK section
already use, so presentation and execution cannot disagree, and a mode
inherited from a standing preset scope collapses like a declared one.
The per-agent and preset tests asserted only the wire, which is why the
regression passed them. They now assert through the executor: the body
never runs, the call resolves UNKNOWN_TOOL, and the native sibling beside
it still executes.
2026-08-11 22:53:17 +08:00
Chinesezjc
24dd48b133
fix(tools): collapse code-mode executor to run_code for model-direct calls
...
wireSchemas() already advertised only run_code under mode: 'code', but the
executor resolved every call through get(), which returns the full visible
map plus the reserved transport. A model could name a native tool directly
and bypass run_code entirely. Route the execution-path lookups through a
new private resolveExecution() that applies the mode collapse at the
operation boundary: model-direct calls under 'code' may only name run_code
(UNKNOWN_TOOL otherwise), while SDK sub-dispatches (parent token set) keep
every visible tool. get()/schemas() public semantics are unchanged.
The denial happens at createExecution, before the extensible policy
pipeline — pre-execute listeners, approval ask, and guards never observe
a call that is deterministically denied. A collapsed call honors the
pre-dispatch cancellation contract, routes aborted results through the
visible tool's finalizeContent, and captures the finalizer before
argument materialization.
Regenerated docs, catalogs, graphs, scoped events, re-recorded
translation pairs, and updated test assertions.
Fixes #1815
2026-08-11 22:40:36 +08:00
pku-xht
e3ac9e85e5
Merge commit '5a0d28e200d89dca2b8004d9cd624629a1409a3f' into codex/bounded-background-tasks-v2
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-20-generic-long-running-tool-runtime.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-20-generic-long-running-tool-runtime.md
# .agents/notes/implemented/architecture/2026-06-20-generic-long-running-tool-runtime.zh.md
2026-08-11 22:28:38 +08:00