Commit graph

5122 commits

Author SHA1 Message Date
pku-xht
0e632c82d0 Merge master into codex/dsh-sdk-minimal-diagnostics 2026-08-25 16:18:27 +08:00
pku-xht
13f373f0ce Merge master into codex/acp-minimal-diagnostics 2026-08-25 14:49:59 +08:00
pku-xht
8bab9d1731 Merge commit '7ef7175ff0c16623ab4e43187d1ecc29820b3909' into codex/acp-minimal-diagnostics 2026-08-25 14:31:14 +08:00
pku-xht
f7a885a522 Merge commit '4b592eb90df20dc53dd12215921d5a9137214777' into codex/acp-minimal-diagnostics
# Conflicts:
#	apps/cli/tests/profiles/acp/tests/snapshots/subagent-acp-diagnostic/input.json
#	apps/cli/tests/profiles/acp/tests/snapshots/subagent-acp-diagnostic/replay.override.json
#	apps/cli/tests/profiles/acp/tests/snapshots/subagent-acp-diagnostic/session.jsonl
#	apps/cli/tests/profiles/acp/tests/snapshots/subagent-acp-diagnostic/stdout.expected.jsonl
#	apps/cli/tests/profiles/acp/tests/snapshots/subagent-acp-diagnostic/tool-schemas.expected.json
#	examples/acp-agent/tests/acp.snapshot.ts
#	packages/subagent/subagent-acp/src/run.ts
#	packages/subagent/subagent-acp/tests/mock-acp-server.ts
2026-08-25 14:28:36 +08:00
Tianyi Cui
3b3b493a96 fix(web): retain launch token across reloads 2026-08-25 14:23:46 +08:00
Tianyi Cui
ce031ddd16 fix(web): cover authenticated host runtimes 2026-08-25 14:23:46 +08:00
Tianyi Cui
3e24087bfa fix(web): authenticate the browser Host API 2026-08-25 14:23:45 +08:00
Yichen Jiang
152d949f3e Merge remote-tracking branch 'origin/master' into worktree/system-prompt-order-bands 2026-08-25 13:53:44 +08:00
_Kerman
2664200844 Merge remote-tracking branch 'github/master' into xtr/session-format-migration 2026-08-25 13:04:23 +08:00
_Kerman
d385dfb3e3 Merge remote-tracking branch 'github/master' into xtr/session-format-migration
# Conflicts:
#	docs/config-catalog.i18n.yaml
#	docs/config-catalog.md
#	docs/config-catalog.zh.md
#	packages/session/session-persistence-jsonl/src/index.ts
#	packages/session/session-persistence/src/coordinator.ts
#	packages/session/session-persistence/src/index.ts
2026-08-25 12:41:23 +08:00
Tianyi Cui
43f0f07f9b refactor(prompt): remove unused complete-persona config 2026-08-25 12:21:50 +08:00
Tianyi Cui
d35459e3c1 refactor(sdk): remove unused root tool filter 2026-08-25 12:21:50 +08:00
Yichen Jiang
145e060992 Merge remote-tracking branch 'origin/master' into worktree/system-prompt-order-bands 2026-08-25 12:07:56 +08:00
Yichen Jiang
8020f6386d docs(system-prompt): sync first-party order references 2026-08-25 12:05:38 +08:00
Yichen Jiang
55eeaf6565 docs: refresh module graph 2026-08-25 11:12:21 +08:00
Yichen Jiang
43ac97b554 fix(system-prompt): centralize sparse section orders 2026-08-25 11:06:01 +08:00
creatixchu
dde6c8d7fc Merge remote-tracking branch 'origin/master' into worktree/2986-trajectory-image-attachments 2026-08-25 10:50:06 +08:00
imccyu
075a46cdec fix(client): preserve combo source identities 2026-08-25 06:43:25 +08:00
imccyu
83463aa896 feat(client): use bounded plugin combo URLs 2026-08-25 06:43:24 +08:00
imccyu
08ed5a54a8 refactor(webserver): minimize HTTP gzip integration 2026-08-25 06:43:24 +08:00
imccyu
1229292497 docs(session): refresh architecture and generated contracts 2026-08-25 06:10:25 +08:00
Tianyi Cui
e73c8a9fce fix(repo): close examples migration review gaps 2026-08-24 22:02:44 +08:00
Tianyi Cui
4125514a08 refactor(repo): retire top-level examples 2026-08-24 22:02:44 +08:00
Tianyi Cui
6ea8a52e22 fix(test): harden snapshot corpus invariants 2026-08-24 21:37:57 +08:00
Tianyi Cui
e4a3918e87 docs: refresh module dependency graph 2026-08-24 21:37:14 +08:00
Tianyi Cui
caf386f59c fix(test): use expected-output naming 2026-08-24 21:37:14 +08:00
Tianyi Cui
1cfe0f9942 refactor(test): reserve snapshots for session recordings 2026-08-24 21:37:14 +08:00
Tianyi Cui
d4e81b6af7 test(snapshot): verify final workspace state 2026-08-24 21:37:14 +08:00
Tianyi Cui
6ca682733f refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00
Tianyi Cui
6189e4a374 test(web): separate session snapshots from goldens 2026-08-24 21:36:31 +08:00
Tianyi Cui
33faf7f35f test(snapshot): separate headless sessions from goldens 2026-08-24 21:36:31 +08:00
Tianyi Cui
da1cb2c06e test(snapshot): centralize SDK session corpus 2026-08-24 21:36:31 +08:00
Tianyi Cui
5c67cf898c test(snapshot): centralize ACP session corpus 2026-08-24 21:36:31 +08:00
Tianyi Cui
30762b63c9 refactor(test): make session snapshots transport neutral 2026-08-24 21:36:31 +08:00
Dudu-0223
ca0e6f9707 Merge remote-tracking branch 'origin/master' into codex/pr-365-fixes 2026-08-24 21:07:22 +08:00
Dudu-0223
202a2fe60f Merge remote-tracking branch 'origin/master' into codex/pr-365-fixes 2026-08-24 20:53:45 +08:00
imccyu
9c3a0893f6 perf(client-modules): defer per-plugin revision hashing
Preserve sourcemaps through the production Client build and verify batched loading across Host, HMR, and Web Worker paths.
2026-08-24 20:49:13 +08:00
lsdsjy
5bbaf168d9 perf(client-modules): batch startup plugin scripts 2026-08-24 20:48:12 +08:00
imccyu
82aa8906e5 Merge pull request #2905 from deepseek-harness/turtle/local-build-banner-version
Show build version in local Web banner
2026-08-24 20:46:43 +08:00
Dudu-0223
a0c1f7a6a7 Merge remote-tracking branch 'origin/master' into codex/pr-365-fixes 2026-08-24 20:31:27 +08:00
creatixchu
00d3c82563 Merge remote-tracking branch 'origin/master' into worktree/2986-trajectory-image-attachments 2026-08-24 19:12:37 +08:00
creatixchu
15d53e228a docs: 同步模块依赖关系图 2026-08-24 19:10:18 +08:00
Tianyi Cui
8101a0d097 fix(python): make Windows release paths native
Run the GitHub Windows runtime leg under the runner’s native PowerShell instead of inheriting the POSIX Bash body. POSIX and Windows now own explicit output resolution, virtual-environment setup, environment scrubbing, and keyless/live black-box commands, while portable build commands continue to use each runner’s default shell.

Put the pinned uv installation on the GitLab Windows job PATH before either the smoke or release builder invokes it. Reject a runtime executable whose basename does not match the selected platform manifest, and reject Intel macOS at platform selection instead of reporting a misleading missing artifact.

Add a complete PowerShell path to the published Python tutorial and record the three-phase shutdown-time bound in the Windows runtime decision. Workflow, Python, and bilingual documentation tests pin the resulting behavior.
2026-08-24 19:09:40 +08:00
Tianyi Cui
28442337cf feat(python-example): select the persistent shell by platform
Make the checked-in minimal SDK overlay disable both one-shot shell rows and mount exactly one persistent PTY stack: Bash on Linux/macOS and PowerShell on Windows. The SDK server, explicit dsh home, persistence, editor, timeout, and reduced tool catalog remain unchanged.

Update the runnable example and tutorial to list Windows x64 as supported, describe the platform-selected shell, and remove the obsolete POSIX-only restriction. This keeps the documented first Python task executable through the packaged Windows dsh profile instead of advertising a Linux-only overlay on a Windows-capable SDK.
2026-08-24 19:09:40 +08:00
creatixchu
d420292400 fix(web): 处理评审发现的图片记录边界情况
- 图片错误结果在 Result 页签保留错误名称与代码
- 空文本块加图片的记录按纯图片标注,不再空行
- sourceBlock 的持久化图片守卫检查 attachmentId 字段
- 移除 ui-chat 对 util/crypto 的过期 tsconfig 引用
- 同步 slots.md 层级图与 2026-08-20 所有权 Note
2026-08-24 18:58:25 +08:00
Dudu-0223
f76a225a7d Merge pull request #2663 from deepseek-harness/feat/subagent-provider
让 subagent 按需发现并选择子 Agent 模型
2026-08-24 18:23:42 +08:00
Tianyi Cui
e2920f0109 fix(sdk-minimal): make the SDK model argument authoritative
Stop narrowing the standalone DeepSeek adapter to a DSH_MODEL-derived one-entry catalog. The direct adapter already accepts model ids outside its advisory catalog, so retain only the DSH_CONTEXT_WINDOW fallback and let the JSON-RPC initialize model be the single runtime selection.

Remove model mirroring from minimal.py and the packaged smoke. The keyless process now initializes deepseek-v4-pro without DSH_MODEL, while the packaged scenario continues to use its unlisted smoke-model; together they prove both cataloged and arbitrary SDK model arguments reach the adapter directly.

Update the bundle, tutorial, SDK/example references, and owning Agent Notes to keep DSH_MODEL only as minimal.py's optional default input, never as a second value callers must synchronize.
2026-08-24 17:28:29 +08:00
Tianyi Cui
7a11f5fde3 docs(python): define the standalone minimal profile
Record sdk-minimal as the narrow repository-owned exception to base-first profile composition: callers still launch only dsh and cannot provide an arbitrary Cordis tree, while the shipped bundle may own a complete explicit roster. Cross-link the launcher, profile-bundle, Python-runtime, minimal-agent, snapshot, and telemetry decisions; the supersession audit keeps each older note active because its remaining rationale is independent.

Update the CLI, architecture, Python tutorial/reference, example, runtime-wheel reference, and bundle documentation. The docs distinguish the full sdk profile from sdk-minimal, explain explicit-home/plugin/patch customization, state the minimal permission and persistence choices, and retain the separately packaged web profile and frontend assets for direct dsh use.

Correct dsh-base descriptions to cover base-backed profiles, make SDK startup configuration visible in the generated config catalog, add sdk-minimal to the module graph, and regenerate the base-composition graph. English and Chinese pairs are re-recorded at the exact reviewed contents.
2026-08-24 17:28:29 +08:00
Tianyi Cui
c2ad69344f fix(python-sdk): make the minimal profile an explicit allowlist
Give the SDK JSON-RPC server a per-root tool filter and let deployments mark the configured persona as the complete system prompt. The checked-in minimal overlay now names only bash and str_replace_editor, so later global tools and unrelated guidance from dsh-base cannot appear implicitly.

Keep the shared SDK host services and packaged Web capability intact. Only workspace instructions, compaction, and the conflicting one-shot Bash row remain disabled. Unit coverage pins the configuration paths, and a real dsh profile smoke proves the assembled prompt and exact two-tool request.
2026-08-24 17:28:28 +08:00
Tianyi Cui
f0f9b294dd docs(python): make the dsh profile runtime current
Document dsh as the only application launcher across architecture, CLI, SDK, app-boot, Python package, contributor, tutorial, and example references. Explain explicit home selection, profile and patch precedence, persistent external plugin installation, the Node-free runtime path, and the absence of complete-config or ~/.dsh fallbacks.

Record the Python profile-runtime decision and update the active naming, installed-wheel, and SEA packaging notes with precise supersession. Regenerate the configuration catalog and module graph after deleting the carrier, update both reviewed languages and pairing records, and classify the retained standalone Cordis files as lower-level test fixtures rather than launch interfaces.
2026-08-24 17:28:27 +08:00