Commit Graph
5210 Commits
Author SHA1 Message Date
Chinesezjc 1665223358 feat(ci): publish the approval decision label from a dedicated approval App
Mint the check-run token from a dedicated approval App instead of a shared
automation App, so the identity that owns the decision check suite is specific to
this gate. The workflow reads `vars.DSH_APPROVAL_APP_CLIENT_ID` and
`secrets.DSH_APPROVAL_APP_PRIVATE_KEY`, and the token stays scoped to
`checks: write`.
2026-10-21 17:50:27 +08:00
Tianyi Cui 7a3c24738e Merge master b9bdd062 into session-copy-markdown
Integrate exact origin/master b9bdd062c8ffd3dc234ebea7f5dff55ff26d87ad. Preserve the Session Markdown copy lifecycle and dictionary while adopting the Japanese locale, regenerate the client slot catalog, and add the Japanese quote-removal string required by the merged locale type.
2026-10-21 17:10:56 +08:00
Chinesezjc 482ce61890 Merge commit 'b9bdd062c8ffd3dc234ebea7f5dff55ff26d87ad' into feat/schedule-clear-ended
# Conflicts:
#	packages/client/ui-schedule/README.i18n.yaml
#	packages/client/ui-schedule/README.md
#	packages/client/ui-schedule/README.zh.md
2026-10-21 17:06:43 +08:00
07akioni 11295990b5 fix(i18n): cover nested metadata and repair locale CI regressions 2026-10-21 17:00:42 +08:00
Yichen Jiang b22cf68e50 fix(web): explain refused image uploads and tighten image staging
Address the review of this pull request:
- A failed image upload keeps the Host's attachment refusal reason. The
  thumbnail of a refused image names the reason instead of offering a
  retry that cannot succeed, and Enter while uploads hold the send names
  the first failure; a transport failure still offers retry, and an
  image without a file name uses the pending-image label.
- An image upload stops reading at the smaller of the per-image and
  per-message byte limits.
- A carried image draft moving to a Session that sends images inline
  drops its upload instead of staging it again.
- The image upload ready state no longer carries an unread image ref.
- Docs describe stored-image admission and the command image path, and
  the attachment rail test builds typed props instead of casting through
  unknown.
2026-10-21 16:48:01 +08:00
_Kerman 5dcb912b1b refactor(cua): delegate retained execution settings to Node provider 2026-10-21 16:47:32 +08:00
Chinesezjc 5fc95b6213 feat(ci): publish the approval decision label from the repository App
The decision check run kept its job-token check suite out of the pull request's
merge box: GitHub associates check runs with a pull request through the check
suite of the workflow run, and a `pull_request_target` run is not associated.
Mint a token from the repository App scoped to `checks: write` and publish only
the check run with it, so the merge box lists the label; the commit status gate
keeps using the job token and is unaffected when the token or the write fails.

Pin the token step, its single secret reference, and the client split in the
workflow and approval tests, and record the measured association limit in the
Agent Note and review-ownership README.
2026-10-21 16:47:07 +08:00
07akioni 9ce74cda96 feat(desktop): localize Windows installer with per-language JSON resources 2026-10-21 16:43:19 +08:00
creatixchu 47e16be285 Merge updated platform base into CUA permissions 2026-10-21 16:27:33 +08:00
creatixchu 684bb206af Merge master into bundle platform support 2026-10-21 16:22:55 +08:00
07akioni 87c4de2e43 chore(i18n): limit added locale checks to JSON metadata 2026-10-21 16:22:53 +08:00
ZiyaZhang b6c967c984 Merge master into experimental personalized pages 2026-10-21 01:21:39 -07:00
_Kerman f04a1257f0 Merge latest master into xtr/ptc-vm-script 2026-10-21 16:14:49 +08:00
07akioni ed783066e6 fix(i18n): complete Japanese plugin metadata and guard locale coverage 2026-10-21 16:14:12 +08:00
_Kerman f53d476790 chore(tools): drop unused testing export policy 2026-10-21 16:09:26 +08:00
_Kerman 2b7b2a0ee6 refactor(ptc): share the program format type 2026-10-21 15:59:56 +08:00
_Kerman a53ecb2f3a Merge origin/master into xtr/tool-executor-plugins 2026-10-21 15:56:44 +08:00
imccyu d4aa52c2be Merge pull request #6796 from deepseek-harness/07akioni/japanese-locale
feat(locale): 增加日语界面支持
2026-10-21 15:44:22 +08:00
Yichen Jiang 85b29bbcea Merge remote-tracking branch 'origin/master' into worktree/dynamic-tool-activation-pr-64796e 2026-10-21 15:21:24 +08:00
Yichen Jiang 7f32f6c3cc test(snapshots): declare exit_plan_mode only in plan mode
Keyless session, SDK, ACP, and Web snapshots, the subagent-inheritance
expected output, and the Python dynamic-tools snapshot no longer list
exit_plan_mode outside plan mode, and the collapse-timing goldens count one
fewer added tool. In plan-review, the approved exit now removes the tool on
the next step: its header records a change that starts a series and a
tool-removal developer message, which the expanded Web timeline shows.
cordis-inspect-jsdoc records the new tools service signatures. The pwsh
tool-turn pins are edited by hand because pwsh is unavailable for a local
refresh; their only change is the removed schema.
2026-10-21 15:15:29 +08:00
Turtle 6db97a9b61 Merge pull request #6824 from deepseek-harness/turtle/make-clean-node-modules-3061242ba73e
fix(scripts): remove dangling pnpm links in clean
2026-10-21 15:12:49 +08:00
_Kerman 6085b6fb62 Merge latest master into xtr/ptc-vm-script 2026-10-21 15:12:47 +08:00
Yichen Jiang 9d0c97b9d2 feat(tools): admit conditional tools per step
ctx.tools.register(definition, { when }) adds a synchronous or asynchronous
condition. AgentLoop resolves conditions once per proposed step with the
agent, the model selection that step preparation captured, and the turn
signal, before prompt assembly and agent/pre-step. The resulting
ResolvedToolSet governs tool declarations, Native dispatch, PTC bindings,
and nested calls for that step and its retries, and the turn disposes it
when the proposal is rejected or fails, when no step opens, and after the
step. A false condition removes the tool everywhere; a thrown condition
ends the turn with TOOL_ACTIVATION_FAILED. Calls whose registration was
replaced or removed during the step return UNKNOWN_TOOL.

system-prompt/assemble now transforms PromptPresentation without a tool
array, so tool declarations stay provider-owned. exit_plan_mode is declared
only for steps whose selected plan state is active, the same state that
renders plan guidance; it still rejects a call before the selection is
logged.

Model selection stays as master defines it; this change adds no model
selection event or Agent field.
2026-10-21 15:02:29 +08:00
Yichen Jiang 1b608982cc Merge remote-tracking branch 'origin/master' into worktree/composer-image-preupload
# Conflicts:
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
#	docs/persistence-catalog.i18n.yaml
#	docs/persistence-catalog.md
#	docs/persistence-catalog.zh.md
#	docs/persistence-schema.json
#	packages/client/ui-conversation/README.i18n.yaml
2026-10-21 15:02:15 +08:00
_Kerman d6dc8890b9 Merge github/master into xtr/session-store-write-lifecycle 2026-10-21 15:01:22 +08:00
Turtle 94092349ab fix(scripts): clean links into removed packages and skip external node_modules
Links whose target this clean removes, or whose target loops or passes through a file, are residue. A node_modules directory resolving outside the repository is not scanned.
2026-10-21 14:40:16 +08:00
Turtle 81ee28eebb fix(scripts): remove dangling pnpm links in clean
pnpm install keeps hoisted links to deleted workspace packages, and the Desktop development build fails reading their package.json.

Fixes #6823
2026-10-21 14:22:12 +08:00
_Kerman 6bfe05c6f5 refactor(agent): name captured step selection modelSelection 2026-10-21 14:08:11 +08:00
_Kerman 4b36aebb97 Merge remote-tracking branch 'origin/master' into xtr/session-model-selection 2026-10-21 13:57:15 +08:00
_Kerman 62a1075fe7 Merge remote-tracking branch 'origin/master' into xtr/session-model-selection
# Conflicts:
#	docs/persistence-schema.json
2026-10-21 13:56:41 +08:00
_Kerman 051ac9154b Merge pull request #6688 from deepseek-harness/xtr/ptc-birpc-transport
refactor(ptc-runtime-node): carry the process control channel over birpc
2026-10-21 13:53:43 +08:00
Yichen Jiang 9be99a0e28 feat(web): upload composer images when they are added
An ordinary Session's composer now uploads each image draft through the
background upload queue as soon as it is added. The raw upload route stages
the body as a prompt image when the request names its media type: the Host
reads at most the per-image byte limit, then validates, normalizes, and
stores the image as prompt admission would. The prompt cites the receipt in
a file part; prompt admission resolves it to the stored image, applies the
image-input check, and counts stored images toward maxImagesPerMessage.

Send waits for every image receipt, and a failed image upload turns its
thumbnail into a retry control. Commands and subagent continuations keep
encoding images inline.
2026-10-21 13:50:19 +08:00
07akioni 358c142716 Merge master for current locale keys 2026-10-21 13:47:53 +08:00
_Kerman a8013ddc35 Merge remote-tracking branch 'github/master' into xtr/session-store-write-lifecycle
# Conflicts:
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
#	docs/persistence-schema.json
2026-10-21 13:45:24 +08:00
07akioni 6238020202 fix(locale): type additional dictionaries and complete Japanese registration 2026-10-21 13:42:49 +08:00
_Kerman 6c1ae74d16 refactor(ptc): separate client declarations from host policy types 2026-10-21 12:13:50 +08:00
ZiyaZhang 66078e79a8 Merge latest master into personalized pages experiment
# Conflicts:
#	packages/client/ui-plugin-manager/tests/components.client.spec.tsx
2026-10-20 21:06:46 -07:00
turtle1999 5b23990a0e Merge remote-tracking branch 'origin/master' into persistence-schema-digest-keys
# Conflicts:
#	docs/persistence-schema.json
2026-10-21 12:06:20 +08:00
Chinesezjc b526b87520 Merge pull request #6729 from deepseek-harness/fix/weighted-approval-status-and-check
fix(ci): gate weighted approval through its commit status and label the conclusion
2026-10-21 11:51:22 +08:00
07akioni 342965a75b Merge remote-tracking branch 'origin/master' into 07akioni/japanese-locale 2026-10-21 11:42:35 +08:00
07akioni 3f9f36e92d feat(locale): add Japanese client and desktop translations 2026-10-21 11:42:12 +08:00
zhc 9cf8c35179 refactor(file-drag): 统一 util 包命名与路径引用 2026-10-21 11:36:08 +08:00
_Kerman bd9ce0e10b chore(tests): prune retired PTC cast baselines 2026-10-21 11:25:08 +08:00
_Kerman 38b9a095f3 Merge remote-tracking branch 'origin/master' into xtr/tool-executor-plugins
# Conflicts:
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
#	packages/web/tool-web/tests/integration.spec.ts
#	pnpm-lock.yaml
#	scripts/check-workspace-constraints.spec.ts
#	scripts/check-workspace-constraints.ts
2026-10-21 11:22:06 +08:00
_Kerman 96b32df5db Merge remote-tracking branch 'origin/master' into xtr/ptc-birpc-transport 2026-10-21 10:30:33 +08:00
_Kerman 7bab95f8da refactor(ptc-runtime-node): rely on birpc defaults for message handling
Keep the stream side owned here: line bounds, the leading-brace check,
the write-queue limit and closure. On the birpc side, drop the strict
envelope validation, falsy-rejection normalization and fatal UTF-8
decoding. Calls to methods an endpoint does not own are answered with
birpc's error and unknown messages are ignored; the resolver still runs
only own methods and none after the endpoint closes.
2026-10-20 23:28:27 +08:00
_Kerman 200dedd494 chore: trim unrelated model-selection changes 2026-10-20 22:13:30 +08:00
winewill f511e17dbd perf(windows): expose per-run installer compression 2026-10-20 21:34:54 +08:00
creatixchu e182c88ff1 Merge latest bundle platform base into CUA permissions 2026-10-20 21:14:55 +08:00
creatixchu b2878c5722 merge: sync platform admission with updated approval base 2026-10-20 21:12:55 +08:00