Commit Graph
1192 Commits
Author SHA1 Message Date
Yichen Jiang b12febec56 Merge manifest-compatible boot layer into plugin manager 2026-09-10 16:36:04 +08:00
Yichen Jiang fcb3882e28 fix(boot): adapt plugin manifests to public package metadata 2026-09-10 16:24:00 +08:00
c31ac4fdfe feat(web): gate agent preset selection behind a setting (#3870)
* feat(web): gate agent preset selection behind a setting

* refactor(web): trim preset visibility diff

* refactor(web): simplify agent preset selection policy

* test(web): cover agent preset policy branches

* refactor(web): tighten agent preset policy flow

* fix(web): preserve preset default across picker toggle

* docs(web): align agent preset picker docs with the blank-task sync

Both picker transitions carry the effective default to the current blank task; started and historical sessions keep their labels, compositions, and recorded history. The Host README states the client rule and links the Web switch; the Agent Note English side matches the Chinese at line 64. Three i18n pairs re-recorded; doc-sync 34/34.

* refactor(web): simplify agent preset picker policy

* test(web): cover preset policy recovery

* docs(web): clarify disabled preset default copy

* fix(web): reconcile preset policy races

* fix(web): satisfy preset load lint

* fix(web): serialize preset roster refreshes

* fix(web): release preset refresh before notifying waiters

---------

Co-authored-by: ZiyaZhang <[email protected]>
Co-authored-by: Chinesezjc <[email protected]>
2026-09-10 07:48:06 +00:00
j-xiang 4ddf777ad8 Merge master into README proofreading branch 2026-09-10 10:42:13 +08:00
imccyu 1ef9c1fa9a release(dsh): 0.1.5-rc.1 2026-09-10 09:13:14 +08:00
j-xiang 89743f33b2 docs(i18n): polish reviewed README terminology 2026-09-10 01:42:58 +08:00
j-xiang b5578ae46a Merge master into README proofreading branch 2026-09-10 01:29:37 +08:00
j-xiang 8e8fb2fc62 docs(i18n): proofread bilingual README corpus 2026-09-10 00:21:32 +08:00
imccyu dd393c1820 release(dsh): 0.1.5-alpha.2 2026-09-09 22:02:09 +08:00
gengruilin 454825ca38 Merge origin/master into fix/mcp-pagination-cycles 2026-09-09 11:49:04 +08:00
Yichen Jiang 41d21f841c Merge branch 'feat/plugin-mgmt-1-boot' into feat/plugin-mgmt-2-manager 2026-09-09 07:18:29 +08:00
Yichen Jiang c96854eec8 Merge remote-tracking branch 'origin/master' into feat/plugin-mgmt-1-boot 2026-09-09 07:16:26 +08:00
fz 452fe6de55 Merge remote-tracking branch 'origin/master' into feat/remove-str-replace-editor-from-minimal 2026-09-09 01:49:09 +08:00
fz 40c9766a8d Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-09 01:22:09 +08:00
yudshj 37d27fcdf9 feat(web): present immutable file deliveries with download cards 2026-09-09 01:15:31 +08:00
Yichen Jiang a75db2e521 Merge branch 'feat/plugin-mgmt-1-boot' into feat/plugin-mgmt-2-manager
# Conflicts:
#	docs/architecture.i18n.yaml
#	docs/architecture.md
#	docs/architecture.zh.md
#	docs/event-producer-consumer.i18n.yaml
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
2026-09-09 00:05:04 +08:00
Yichen Jiang a8c97e33e5 Merge remote-tracking branch 'origin/master' into feat/plugin-mgmt-1-boot 2026-09-08 23:57:12 +08:00
gengruilin 594305ce19 fix(mcp): reject repeated tool discovery cursors
Refs: https://github.com/deepseek-ai/deepseek-harness/discussions/3660
2026-09-08 23:33:23 +08:00
fz 25d675fcf3 Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-08 23:31:51 +08:00
Dudu-0223 5ab91467e2 test(cli): include catalog facts in profile expectations 2026-09-08 23:28:50 +08:00
fz 94ff82f57b Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-08 23:22:25 +08:00
imccyu 2faa751be9 release(dsh): 0.1.5-alpha.1 2026-09-08 23:06:34 +08:00
imccyu 96a66ba478 Merge pull request #3790 from deepseek-harness/worktree-ci-0908
fix(CI): update spec timeout and behavior
2026-09-08 23:04:59 +08:00
Tianyi Cui 5212603a4b fix(session): audit every historical content carrier before V3 migration 2026-09-08 22:38:04 +08:00
imccyu 2c21c7a03e ci: 1 2026-09-08 22:31:16 +08:00
fz 1f1537914f feat(minimal): align persistent bash output with the one-shot shell contract
The minimal compositions serve the same models that trained against a
one-shot `bash` tool; three surface differences remained visible to them.

- Every settled command now appends `[Command finished with exit code N]`,
  including exit code 0, instead of `[exit code: N]` only on failure. A
  timeout appends `[Command timed out or OOM]` after the partial output.
- Trailing newlines are all dropped before the status trailer rather than
  only the last one.
- The `bash` description in the `minimal` preset and the `sdk-minimal`
  bundle replaces the two fixed network lines with a single environment-
  dependent line; the pwsh description is unchanged.

Tests, READMEs, the web minimal-preset schema snapshot, and the packaged
Python minimal model-visible snapshot follow the new wording. The
standalone `persistent-tools` SDK replay fixture keeps its own copy of the
old description since it is a per-launch customization, not the profile.
2026-09-08 19:48:21 +08:00
Yichen Jiang 464264aede Merge branch 'feat/plugin-mgmt-1-boot' into feat/plugin-mgmt-2-manager 2026-09-08 17:30:21 +08:00
Yichen Jiang 07878ae1d3 fix(app-boot): record user-disabled bundles in the profile manifest
`disableBundle` now moves a package from `dsh.profile.bundles` to
`dsh.profile.disabledBundles`, and `reconcileInstalledBundles` enables only
a bundle named in neither list, so an unrelated pnpm run never re-enables a
bundle the user turned off while an update that gives a dependency
`dsh.bundle` still activates it (the built-bin e2e scenario the previous
"new dependencies only" rule broke). The record goes when its dependency
does.

Also: `visitIdentifiedRows` in patch-rows owns the per-patch restatement
tracking that compose-stack and external-bundles had cloned (duplication
gate), and the probe spec's flood fixture retries short and EAGAIN writes
because the child's stderr pipe is non-blocking once tsx touched
process.stderr (the test raced the parent's drain).
2026-09-08 17:29:35 +08:00
Tianyi Cui c4d8ee5ff2 test(session): canonicalize headless expected system replacements 2026-09-08 16:56:52 +08:00
Yichen Jiang bb408abe28 Merge branch 'feat/plugin-mgmt-1-boot' into feat/plugin-mgmt-2-manager
# Conflicts:
#	apps/cli/src/bin.ts
#	docs/config-catalog.i18n.yaml
#	docs/config-catalog.md
#	docs/config-catalog.zh.md
#	packages/api/remotes/src/client/index.ts
#	packages/boot/app-boot/src/index.ts
#	packages/boot/app-boot/src/profile.ts
#	packages/host/README.i18n.yaml
#	packages/host/README.md
#	packages/host/README.zh.md
#	scripts/verify-package-readme-model-experience.ts
2026-09-08 16:52:09 +08:00
Yichen Jiang 5a9e1760fd Merge remote-tracking branch 'origin/master' into feat/plugin-mgmt-1-boot
# Conflicts:
#	apps/cli/src/dump-config.ts
#	apps/cli/src/profile-boot.ts
#	docs/capability-seams.i18n.yaml
#	docs/capability-seams.md
#	docs/capability-seams.zh.md
#	packages/boot/app-boot/src/profile.ts
#	packages/util/launch-environment/tests/launch-environment.spec.ts
#	scripts/check-workspace-constraints.ts
#	scripts/gen-cordis-catalog.ts
2026-09-08 16:42:34 +08:00
Yichen Jiang 731804affc Merge branch 'feat/plugin-mgmt-1-boot' into feat/plugin-mgmt-2-manager
# Conflicts:
#	packages/boot/app-boot/README.i18n.yaml
#	packages/boot/app-boot/README.md
#	packages/boot/app-boot/README.zh.md
2026-09-08 16:23:03 +08:00
Yichen Jiang 20102bcd52 fix(boot): commit user-disabled rows with the composition and name a user row's trust
The runtime's user-disabled row ids now come from the committed composition —
composeProfileStack collects them from the user layers it composed — so a
rejected or half-written patch file no longer makes the list disagree with the
running tree or fail to parse. The inventory attributes a row disabled through
a group the user disabled to the user, through the shared userDisablesEntry
walk, and lists a user-layer row the composition left out under the new user
trust instead of builtin.
2026-09-08 16:13:03 +08:00
fz 61cd1a3f91 Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-08 13:51:47 +08:00
Tianyi Cui 96fa1dfac8 Merge pinned master 84bde6c7 into V3 readiness repair 2026-09-08 13:16:35 +08:00
Yichen Jiang 080e22ee03 feat(plugin-manager): keep pnpm's colours and name the command on install-log chunks
The installer now decides pnpm's colouring per consumer: the Web host keeps
colours on for the install dialog's terminal, the CLI turns them on only when
stdout is a terminal, and a plain log strips what a colour=always pnpm still
prints. Every chunk carries the argv it came from, so a renderer can label
each pnpm run.
2026-09-08 12:52:45 +08:00
Turtle dfae5f0351 Merge pull request #3686 from deepseek-harness/turtle/from-default-profile
feat(cli): create custom profiles from shipped templates
2026-09-08 12:45:58 +08:00
Tianyi Cui 5b039c1796 Merge master 822041865d into Session V3 release 2026-09-08 00:17:14 +08:00
fz 707d0e7e52 Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-07 23:25:03 +08:00
fz b92cc94122 test(minimal): cover documented editor opt-in 2026-09-07 22:56:48 +08:00
_Kerman b0a7d2ce3b Merge pull request #2672 from deepseek-harness/xtr/durable-inbox-recovery
refactor(agent): keep projection-backed Inbox loop-internal
2026-09-07 21:24:32 +08:00
Turtle 267d2f8eb9 Merge remote-tracking branch 'origin/master' into turtle/from-default-profile
# Conflicts:
#	apps/cli/README.i18n.yaml
#	apps/cli/README.md
#	apps/cli/README.zh.md
#	packages/boot/app-boot/README.i18n.yaml
#	packages/boot/app-boot/README.md
#	packages/boot/app-boot/README.zh.md
2026-09-07 20:53:53 +08:00
Turtle 2555474a7d refactor(cli): simplify profile option forwarding 2026-09-07 20:47:47 +08:00
Turtle 7a7b7d5a53 fix(cli): make profile template creation exclusive 2026-09-07 20:46:40 +08:00
_Kerman 0348599f04 Merge remote-tracking branch 'origin/master' into dshw/pr-deepseek-harness-deepseek-harness-2672
# Conflicts:
#	docs/event-producer-consumer.i18n.yaml
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
#	packages/acp/acp/tests/harness.ts
#	packages/api/session-controller/README.i18n.yaml
#	packages/api/session-controller/README.md
#	packages/api/session-controller/README.zh.md
#	packages/api/session-controller/tests/commands-queue-attachment.host.spec.ts
#	packages/context/agent-instructions/tests/agent-instructions.e2e.ts
#	packages/fs/tool-fs/tests/harness.ts
#	packages/preset/agent-presets/tests/invariant.spec.ts
#	packages/preset/agent-presets/tests/mount.spec.ts
#	packages/preset/agent-presets/tests/remote.spec.ts
#	packages/test-support/agent-loop-testkit/package.json
2026-09-07 20:22:24 +08:00
Turtle dd25e1e6b3 feat(cli): create profiles from shipped templates 2026-09-07 19:58:41 +08:00
fz 110db78707 Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-07 19:53:33 +08:00
07akioni 016af7c67b Merge release 0.1.3-alpha.2 and reconcile desktop composition 2026-09-07 19:49:36 +08:00
07akioni 8d0d729091 Merge master native containment updates into feat/electron 2026-09-07 19:45:55 +08:00
fz 71a291cbc4 Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-07 19:28:12 +08:00