Commit Graph

11579 Commits

Author SHA1 Message Date
Tianyi Cui 454e06c8c1 Merge origin/master into worktree/remove-sdk-project-toolchain
# Conflicts:
#	.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.md
#	.agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.i18n.yaml
#	.agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.md
#	.agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.zh.md
#	.agents/notes/proposed/architecture/2026-07-15-sdk-project-editing-architecture.i18n.yaml
#	.agents/notes/proposed/architecture/2026-07-15-sdk-project-editing-architecture.md
#	.agents/notes/proposed/feature/2026-07-14-sdk-developer-projects.i18n.yaml
#	.agents/notes/proposed/feature/2026-07-14-sdk-developer-projects.md
#	.agents/notes/proposed/feature/2026-07-14-sdk-developer-projects.zh.md
#	packages/README.i18n.yaml
#	packages/README.md
#	packages/scaffold/create-sdk/README.md
#	packages/scaffold/create-sdk/src/args.ts
#	packages/scaffold/scripts/src/args.ts
#	packages/sdk/README.i18n.yaml
#	scripts/verify-package-readme-model-experience.ts
2026-08-11 15:56:06 +08:00
_Kerman d672eace2f style(client): refine drag insertion markers 2026-08-11 15:42:44 +08:00
imccyu f0a6c25291 fix(client): apply theme before plugin loading 2026-08-11 15:35:32 +08:00
Turtle 5d591e55c1 Merge pull request #610 from deepseek-harness/codex/replace-surface-terminology
Replace overloaded surface terminology
2026-08-11 15:34:34 +08:00
Yichen Jiang 9c06f682c4 Merge pull request #2207 from deepseek-harness/worktree/custom-provider-edit-parity-f8c160
fix(web): 自定义提供方的显示名称与 API 协议可编辑
2026-08-11 15:33:50 +08:00
_Kerman 3f09330f4b docs(web): record workspace sidebar behavior 2026-08-11 15:25:11 +08:00
_Kerman 6e303ac0b7 test(web): cover workspace sidebar behavior 2026-08-11 15:25:11 +08:00
_Kerman 8005ab78bd fix(client): keep flat sessions ordered by recency 2026-08-11 15:25:11 +08:00
_Kerman c4affa852c style(client): reduce conversation tab indicator 2026-08-11 15:25:11 +08:00
_Kerman 23889483cf style(client): refine conversation tab indicator 2026-08-11 15:25:11 +08:00
_Kerman 3f315a0134 feat(client): refine workspace sidebar interactions 2026-08-11 15:25:11 +08:00
_Kerman d86ecf7b29 style(client): collapse search into header action 2026-08-11 15:25:11 +08:00
_Kerman 4ce51888be fix(client): inherit current workspace for new sessions 2026-08-11 15:25:11 +08:00
_Kerman a46a7bf912 style(client): simplify expanded workspace icon 2026-08-11 15:25:11 +08:00
_Kerman 325da4dab1 fix(client): preserve workspace browser interactions 2026-08-11 15:25:11 +08:00
_Kerman e713cc820d style(client): polish sidebar spacing 2026-08-11 15:25:11 +08:00
_Kerman 1a1729a138 feat(client): refine workspace sidebar interactions 2026-08-11 15:25:11 +08:00
_Kerman b3e843056e feat(workspace): support persistent workspace ordering 2026-08-11 15:25:11 +08:00
_Kerman 1d4ab4492e style(client): tighten sidebar layout 2026-08-11 15:25:11 +08:00
_Kerman 8e0cb2bdba feat(client): improve workspace session browsing 2026-08-11 15:25:11 +08:00
Tianyi Cui c1590faac7 Merge origin/master into worktree/remove-sdk-project-toolchain 2026-08-11 15:23:42 +08:00
Turtle 096586886a fix(review): address terminology feedback 2026-08-11 15:23:05 +08:00
Turtle c6f3870b51 test: refresh terminology snapshots 2026-08-11 15:23:05 +08:00
Turtle 0c708cb10d refactor: replace overloaded surface terminology 2026-08-11 15:23:05 +08:00
Yichen Jiang 63a294fa1b Merge remote-tracking branch 'origin/master' into worktree/custom-provider-edit-parity-f8c160 2026-08-11 15:16:23 +08:00
hypatiamay c172faed37 Merge pull request #1836 from deepseek-harness/feat/subagent-list-agents-vocabulary
fix(subagent): report resumable children as ready
2026-08-11 15:15:15 +08:00
Tianyi Cui 5f947e1d94 Merge origin/master into worktree/remove-sdk-project-toolchain
# Conflicts:
#	THIRD_PARTY_NOTICES.md
2026-08-11 15:08:18 +08:00
Tianyi Cui 904c3f2c35 fix(session-persistence-jsonl): reject empty zstd artifacts
A present zero-byte .jsonl.zstd file was treated as though no artifact existed because readRaw returned undefined when frame scanning found nothing. That contradicted both the plaintext path and the logical zstd reader, and it made the export endpoint answer 404 for on-disk corruption.

Treat a present artifact without a complete header frame as corruption and reuse the zstd reader's existing diagnostic. The regression test now distinguishes an existing empty file from an absent path, and the bilingual JSONL storage contract records that zero-frame artifacts reject alongside other header and frame failures.
2026-08-11 15:05:54 +08:00
Tianyi Cui e58cc13de4 fix(session-export): distinguish unsupported raw artifacts
SessionPersistence.readRaw previously used undefined for two unrelated states: a supported backend could not find the requested session, or the backend had no per-session artifact concept at all. The export endpoint consequently reported an existing SQLite-backed session as HTTP 404, which falsely diagnosed storage capability as session absence.

Make raw-artifact support an explicit backend capability. Unsupported backends now fail their inherited readRaw path loudly and the host answers 501 before reading, while undefined retains the single meaning of an absent artifact on a supporting backend. First-party backends, test providers, generated API catalogs, bilingual persistence docs, and export error contracts now state that distinction; focused tests cover both the 501 and the inherited rejection.
2026-08-11 15:04:35 +08:00
Hypatia May 6e94bfd366 Merge branch 'feat/subagent-settlement-delivery' into feat/subagent-list-agents-vocabulary 2026-08-11 14:59:18 +08:00
Hypatia May 9f4159d0be Merge branch 'feat/subagent-report-semantics' into feat/subagent-settlement-delivery 2026-08-11 14:59:00 +08:00
Hypatia May 3f9c7077f9 Merge commit '5e1b3dd6536cbf4796164e7676e13c68300bb52d' into feat/subagent-report-semantics 2026-08-11 14:58:58 +08:00
_Kerman b6cd817aca Merge pull request #2131 from deepseek-harness/fix/web-favicon-dark-mode
fix(web): make the favicon follow the color scheme
2026-08-11 14:58:43 +08:00
Tianyi Cui 7f14c7e165 refactor(web): hand session exports to browser downloads
The export endpoint already streams a ZIP response, but the web client immediately converted that response into a Blob. That forced the complete archive through JavaScript memory before a download could start and coupled transport, buffering, object-URL lifetime, and filename handling to the trajectory view.

Navigate a temporary download anchor directly to the export endpoint instead. The browser now owns streaming and HTTP failure presentation, while a standalone delivery module owns URL construction and filename sanitization. Focused tests cover the handoff, rejection behavior, and the assembled session view; the package README and feature note record the new ownership boundary.
2026-08-11 14:57:38 +08:00
Tianyi Cui e063fc1a89 Merge pull request #2162 from deepseek-harness/worktree/windows-acl-hardening-followup
fix(sandbox): keep Windows ACL temp authority session-private
2026-08-11 14:57:22 +08:00
Hypatia May 6a604aaa85 Merge branch 'feat/subagent-settlement-delivery' into feat/subagent-list-agents-vocabulary 2026-08-11 14:53:11 +08:00
Hypatia May ef8637f864 Merge branch 'feat/subagent-report-semantics' into feat/subagent-settlement-delivery
# Conflicts:
#	docs/event-producer-consumer.i18n.yaml
#	docs/event-producer-consumer.md
2026-08-11 14:52:49 +08:00
Hypatia May fafb10eecb Merge commit '38d82c497765ce0344800e3d5af9f1ee073f4bb5' into feat/subagent-report-semantics 2026-08-11 14:50:35 +08:00
Chinesezjc b7ea33ecde Merge pull request #2202 from deepseek-harness/ci/selfhosted-windows-runners
ci: unify Windows CI on native self-hosted runners
2026-08-11 14:49:48 +08:00
Hypatia May 6c4ed5e036 test(snapshot): refresh pins after master merge 2026-08-11 14:45:14 +08:00
Tianyi Cui a8db48429a Merge remote-tracking branch 'origin/master' into worktree/windows-acl-hardening-followup 2026-08-11 14:43:23 +08:00
Hypatia May 7b8635d47d test(snapshot): refresh pins after master merge 2026-08-11 14:41:11 +08:00
Yichen Jiang 104724d866 Merge pull request #2205 from deepseek-harness/worktree/preset-plane-fallout-p1
fix(preset): keep the token meter host-plane and name unjoined agents
2026-08-11 14:41:08 +08:00
Yichen Jiang ab300feb80 Merge pull request #2245 from deepseek-harness/fix/preset-card-description-clamp
修复 web 端 Agent 预设卡片被长描述顶高
2026-08-11 14:39:29 +08:00
Hypatia May 87f446ca62 test(snapshot): refresh pins after master merge 2026-08-11 14:37:44 +08:00
Hypatia May 8d77761427 Merge commit '6768cbccfd2c8157f215cf7231d9c012b1b2b2d2' into feat/subagent-report-semantics 2026-08-11 14:34:21 +08:00
Yichen Jiang c345d70f82 Merge remote-tracking branch 'origin/master' into worktree/preset-plane-fallout-p1
Only `docs/module-graph.*` conflicted; generated, so taken from master and
regenerated. `api-proxy.ts` auto-merged — this branch's history read
(`historySourceFor` / `presenterScopeFor` / `historyCutOf`, in that order)
is intact.

Hook bypassed as before: the staged-pairing check hands an archived note path
to `verify-translation-pairing`. The full-corpus gate passes.
2026-08-11 14:32:59 +08:00
Tianyi Cui a3ca7f09b2 Merge remote-tracking branch 'origin/master' into worktree/windows-acl-hardening-followup
# Conflicts:
#	packages/sandbox/sandbox-windows-acl/package.json
2026-08-11 14:32:26 +08:00
Tianyi Cui c4e7b453eb Merge pull request #2177 from deepseek-harness/feat/web-session-log-export
feat(web): export the session log from the trajectory toolbar
2026-08-11 14:27:52 +08:00
Yichen Jiang d6d7953ae9 fix(web): flip a tooltip that the viewport has no room for
The bubble clamped horizontally and did nothing vertically, so a long
label under an anchor low on the page ran off the bottom. Preset cards
made that the common case: custom presets sit at the end of the roster
and carry the longest descriptions.

A `top` or `bottom` bubble now flips to the other side, and only into a
side that genuinely fits — an anchor with room on neither keeps the
requested placement rather than oscillating. Sliding the bubble
vertically instead would cover the text being read.
2026-08-11 14:26:18 +08:00