Commit Graph
18711 Commits
Author SHA1 Message Date
Turtle ffffac3cba fix(plugin-manager): approve blocked dependency builds before retrying 2026-09-15 18:09:28 +08:00
Turtle e706da7424 refactor(web): unify workspace grouping controls and row highlights 2026-09-15 18:03:18 +08:00
Turtle d492b2cd36 feat(web): group sidebar workspaces by parent folder 2026-09-15 17:56:33 +08:00
Yichen Jiang 0d4b32f077 fix(web): keep plugin cards in title order across switches
The Host lists selected bundles before the rest of the profile's
dependencies, so switching a bundle moved its card to the front or the
back of the sidebar page. The store now orders the views by the title a
person reads, and a card stays where it is whatever the Host answers.
2026-09-15 17:55:57 +08:00
_Kerman 31209ea9d7 Merge pull request #2746 from deepseek-harness/xtr/durable-inbox-web-recovery
fix(web): restore pending Inbox after restart
2026-09-15 17:42:57 +08:00
creatixchu 9f219e48a9 Merge remote-tracking branch 'origin/master' into worktree/code-diff-card
# Conflicts:
#	scripts/gen-cordis-catalog.ts
2026-09-15 17:35:04 +08:00
Turtle 775d5f5369 Merge pull request #4262 from deepseek-harness/turtle/author-approval-weight
feat(ci): add author approval credit from merged PR history
2026-09-15 17:31:24 +08:00
gengruilin 423e86ff7d fix(docs): preserve menu activation across pointer focus changes 2026-09-15 17:28:14 +08:00
creatixchu c8bc10440b fix(workspace-changes): review round on the served summaries
A repository whose baseline snapshot failed records nothing instead of
degrading to a file-tool summary; the write tool persists whether it
created or updated, so an unchanged overwrite outside snapshot coverage
no longer counts its content as added; hunks inside nested repositories
are dropped before check-ignore, which refused them with exit 128 and
lost the whole turn; a temporary root inside the work tree keeps the
recorder's own directory out of the snapshots; numstat keeps tabs in
file names; the summary carries line totals over the uncapped list and
the snapshot tree ids; the client's summary store abandons reads that
began before a connection reset. Docs and fixtures follow.
2026-09-15 17:28:14 +08:00
Yichen Jiang dc9256536b Merge remote-tracking branch 'origin/master' into feat/plugin-mgmt-4-web
Master now carries the final #4182 plugin manager and the live client
module graph of #4189, so the web management layer is re-ported onto
them:

- The manager keeps master's `ManagementError` codes, `ChangeResult`
  stages, `configure()` under `hmr.runExclusive`, `reload()` warnings
  and `writePluginEnabled` name matching, and adds back `inspect`,
  request-id installs with `plugin-manager/install-log` and
  `plugin-manager/install-state`, `cancelInstall`, `listBundles` titles,
  rows and overrides, `packageResult.kind`, `pnpmCommand` and
  `inspectTimeoutMs`, and `plugin-manager/changed` after each change and
  each `profile/reconciled`. A failed or cancelled installation restores
  the snapshotted manifest and lockfile instead of master's one-shot
  `pnpm remove` cleanup, so `cleanup` and `remainingDependencies` leave
  the result.
- App boot keeps master's reconciliation diagnostics and emits
  `profile/reconciled`; `watchUserPatches` goes with the launcher's
  watcher now that HMR owns profile reloads.
- The settings Plugin list tab stays read-only with #4189's page-local
  sync failures and retry; master's bundle form and row checkboxes are
  dropped again. The sidebar page words the Host's codes through its
  dictionary, and a client bundle change follows the live module graph
  without a page reload.
- The web e2e scaffold no longer chooses a reload policy: the base
  bundle's `hmr` row turns on with the profile context and application
  readiness, and `profile.hmr: false` disables it through an overlay for
  the startup-only scenario.
2026-09-15 17:28:08 +08:00
_Kerman 4d306deb0a Merge remote-tracking branch 'origin/master' into xtr/durable-inbox-web-recovery 2026-09-15 17:22:59 +08:00
gengruilin 38b2bf2f6c fix(docs): address Markdown actions review feedback 2026-09-15 17:22:50 +08:00
_Kerman f3c0ae620b test(web): disambiguate workspace rows during reconnect 2026-09-15 17:22:49 +08:00
Wenlu Wang 011bbf8eec Merge pull request #4230 from deepseek-harness/feature/model-image-input-setting
feat(web): add model image input settings
2026-09-15 17:14:29 +08:00
Turtle b5a6905832 feat(ci): add author approval credit from merged PRs 2026-09-15 17:14:23 +08:00
Turtle 47c94a1d5e Merge pull request #4252 from deepseek-harness/turtle/profile-command-shorthand
feat(cli): support dsh <profile> shorthand
2026-09-15 17:08:24 +08:00
07akioni 57af1f0013 docs(desktop): remove stale runtime and reload descriptions 2026-09-15 16:57:55 +08:00
gengruilin eb59250ce9 feat(docs): present Markdown actions in a split-button menu 2026-09-15 16:52:46 +08:00
_Kerman 992a932a16 Merge remote-tracking branch 'origin/master' into xtr/durable-inbox-web-recovery
# Conflicts:
#	packages/api/session-controller/README.i18n.yaml
#	packages/api/session-controller/README.md
#	packages/api/session-controller/README.zh.md
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/README.md
#	packages/client/ui-conversation/README.zh.md
#	packages/client/ui-conversation/src/client/contract/input.ts
#	packages/client/ui-conversation/src/client/input/facade.ts
2026-09-15 16:52:24 +08:00
Magolor bd421cce7b fix(llm): resolve Messages endpoint suffix (#4241)
* fix(llm): resolve Messages endpoint suffix

* test(subagent): update Messages endpoint expectation

* fix(llm): preserve official Messages routes

* fix(llm): harden Messages endpoint resolution

* refactor(llm): clarify Messages API ownership

* fix(llm): recognize only exact Messages v1 roots
2026-09-15 16:51:56 +08:00
07akioni d50d3cb745 Merge remote-tracking branch 'origin/master' into desktop/native-fatal-recovery 2026-09-15 16:50:40 +08:00
Turtle 7d4188b450 fix(cli): address profile shorthand review feedback 2026-09-15 16:49:03 +08:00
Turtle 1d6534a810 feat(cli): support profile command shorthand 2026-09-15 16:49:02 +08:00
07akioni dfb07a038c feat(desktop): replace failure pages with native recovery dialog 2026-09-15 16:48:27 +08:00
Turtle 511216983e Merge pull request #4182 from deepseek-harness/turtle/plugin-manager
feat: manage profile plugins with unified dsh-hmr
2026-09-15 16:41:28 +08:00
Dudu-0223 cc872a39b9 test(subprocess): verify owned exit listeners on disposal 2026-09-15 16:39:42 +08:00
Yichen Jiang 4d1adb8541 feat(web): manage plugins over the #4182 manager from the sidebar page
The sidebar Plugins page now drives `ctx.pluginManager` from #4182 and the
settings Plugin list tab goes back to read-only: its bundle form and row
checkboxes are removed, and the page joins `listBundles` with
`listPlugins` into one view per bundle, decides availability from the
inventory's `managementAvailable`, switches bundles and rows through
`setBundleEnabled` and `setPluginEnabled`, and confirms uninstalls.

The manager gains what the guided install dialog needs: `inspect(spec)`
reads a spec through the registry or a directory before anything installs
and refuses specs without a bundle; `installBundle` takes a request id,
streams each pnpm run as `plugin-manager/install-log`, reports its phases
as `plugin-manager/install-state`, classifies a failed run into
`packageResult.kind`, names the bundle it added, and restores
`package.json` and `pnpm-lock.yaml` when the run fails, is cancelled, or
adds a package without a bundle patch; `cancelInstall(requestId)` answers
only after pnpm exited and the files are back; `listBundles` carries
titles, one-liners, declared rows with their live entries, and the
built-in rows a bundle overrides; every completed operation and every
patch generation applied outside the manager emits
`plugin-manager/changed`. The config gains `pnpmCommand` and
`inspectTimeoutMs`. App boot emits `profile/reconciled` after each applied
patch generation and finds a root Include mounted under its pinned id by
another copy of the module.

Row diagnostics, dependency checks, and the non-bundle dependency group
are not carried over; the web e2e scaffold mounts a launcher-style
managed profile instead of the removed profile runtime.
2026-09-15 16:36:31 +08:00
Yichen Jiang b3e964c340 Merge PR #4182 (turtle/plugin-manager) into feat/plugin-mgmt-4-web
The web plugin management layer now sits on the current-profile plugin
manager from #4182 instead of the boot and manager layers of #3593 and
#3594. This merge takes #4182's host side whole — `packages/boot/hmr`,
its `packages/boot/plugin-manager`, `profileContext` in app-boot, the
vendored loader change — and drops the replaced host packages and their
app-boot, inventory, Remote, CLI, and catalog edits. The web files of
#3596 are carried over unchanged: the sidebar page package, the
ui-primitives terminal changes, the settings-section tweaks, the e2e
scenarios and fixtures, and the two web Agent Notes. They do not build
against the new host until the following commit adapts them.
2026-09-15 16:36:31 +08:00
creatixchu da6e3f9edf fix(workspace-changes): count an appended line as one addition
The file tools persist both sides of a hunk without a trailing newline,
so re-diffing an append read the previous last line as rewritten and
reported +2 -1 for +1 -0. Both sides are line-terminated before the
diff, the rule the per-call diff card already applies.
2026-09-15 16:31:24 +08:00
Turtle cc190b07d5 Merge pull request #4002 from deepseek-harness/turtle/blame-weighted-approval
feat(ci): scale approval weights with production blame
2026-09-15 16:30:25 +08:00
Dudu-0223 25525dc495 test(web): register file-link scenario in host compilation 2026-09-15 16:25:49 +08:00
Dudu-0223 9e611c90a3 test(web): finish sidebar transitions before preview capture 2026-09-15 16:22:40 +08:00
Dudu-0223 7bc0154bfc test(web): verify keyboard file navigation and capture preview 2026-09-15 16:22:03 +08:00
Turtle 311156b1c2 Merge master and preserve profile-managed HMR 2026-09-15 16:20:47 +08:00
Dudu-0223 1ec62afbdb feat(web): open Markdown file links in sidebar previews 2026-09-15 16:17:53 +08:00
gengruilin cb464f1894 fix(docs): preserve UTF-8 in raw Markdown navigation 2026-09-15 16:15:11 +08:00
Turtle 794b658401 fix(ci): address production blame approval review 2026-09-15 16:14:37 +08:00
Turtle 08021a16d8 fix(plugin-manager): keep package operations outside HMR 2026-09-15 16:08:22 +08:00
creatixchu 8f0cdc9a98 Merge remote-tracking branch 'origin/master' into worktree/code-diff-card 2026-09-15 16:05:29 +08:00
Yichen Jiang b03d5c68ea Merge pull request #4189 from deepseek-harness/worktree/client-modules-live
feat(web): apply client plugin changes without reloading
2026-09-15 15:57:45 +08:00
gengruilin 23135e62dc feat(docs): add page Markdown copy and view actions 2026-09-15 15:55:52 +08:00
gengruilin bcb49ade82 feat(docs): add independent platform command tabs 2026-09-15 15:51:26 +08:00
imccyu b51eb87125 Merge pull request #4209 from deepseek-harness/fix/issue-3479-linear-cache
fix(session-controller): reconcile list cache in linear time
2026-09-15 15:51:08 +08:00
creatixchu c48f4203d9 feat(workspace-changes): summarize file-tool edits outside a git repository
A working directory outside any repository, or a Host without git, no
longer loses the card: the recorder skips the snapshots and builds the
summary from the hunks the file tools persisted, with the working
directory as the workspace, so shell edits are the only gap. The
sidebar e2e scopes its chip clicks to the prose mention now that the
card offers the same open, and the present-svg and permission-policy
scenarios gain the card their write calls earn.
2026-09-15 15:44:11 +08:00
Yichen Jiang 3e24e501cd Merge remote-tracking branch 'origin/master' into worktree/client-modules-live 2026-09-15 15:43:42 +08:00
07akioni 05fb7b90e8 Merge pull request #3981 from deepseek-harness/07akioni/thin-electron-webui
refactor(desktop): run shared Web UI in a thin Electron shell
2026-09-15 15:39:43 +08:00
Yichen Jiang c28fcc6cdb Merge remote-tracking branch 'origin/master' into worktree/client-modules-live
# Conflicts:
#	docs/subsystems/client-modules.i18n.yaml
#	docs/subsystems/client-modules.md
#	docs/subsystems/client-modules.zh.md
#	packages/client/hmr/package.json
#	packages/client/modules/README.i18n.yaml
#	packages/client/modules/README.md
#	packages/client/modules/README.zh.md
2026-09-15 15:31:14 +08:00
Turtle 61665c3454 fix(plugin-manager): clean failed installs and address critical review findings 2026-09-15 15:15:49 +08:00
creatixchu 2a77c59a49 test(web): refresh the changed-files golden for master's edit-card counts and desktop copy 2026-09-15 15:14:35 +08:00
kingwl 41e591b3e4 fix(web): address model image settings review 2026-09-15 15:13:56 +08:00