Commit Graph
12673 Commits
Author SHA1 Message Date
esengine be5c98c744 refactor(agent): remove missing-tool-call-reasoning detection and recovery
The loop no longer classifies a tool-call turn that arrived without
reasoning, retries it, or keeps a file-backed cooldown for it. Removes the
watch and the cooldown state, the deferred stream sink they needed, the
provider policy interfaces and their implementations, the descriptor field on
the extension wire (schema and SDK regenerated), the state-dir path, the
run-metrics counters and the protocol-recovery kinds.

The protocol-recovery audit channel itself stays for now.
2026-11-02 03:26:03 -08:00
YHH a87c4d1fff Merge pull request #14941 from esengine/fx/pr-author-gate
ci: limit pull requests to maintainers and an allowlist of invited authors
2026-11-02 02:06:23 -08:00
YHH ea2c04d046 Merge pull request #14940 from lancy69/fix/14936-reasoning-without-answer
fix(agent): recover DeepSeek reasoning-only final answers
2026-11-02 01:55:03 -08:00
esengine 60caacd887 ci: limit pull requests to maintainers and an allowlist of invited authors 2026-11-02 01:52:42 -08:00
Lancy 860651f866 fix(agent): recover DeepSeek reasoning-only final answers 2026-11-02 09:11:50 +00:00
YHH c43bd2bdc3 Merge pull request #14902 from esengine/dependabot/npm_and_yarn/desktop/electron/electron-45.1.0
chore(deps-dev): bump electron from 44.7.2 to 45.1.0 in /desktop/electron
2026-11-01 19:39:13 -08:00
esengine 457b586331 build(windows): declare electron_wer.dll and drop dxil.dll for Electron 45
Electron 45 ships electron_wer.dll, unsigned, and no longer ships dxil.dll.
Sign electron_wer.dll with the other unsigned PE images, and stop requiring
a Microsoft-signed dxil.dll. Checked against the 45.1.0 win32 x64 and arm64
archives: both hold exactly the declared set.
2026-11-01 19:10:41 -08:00
esengine 678cf19f03 Merge studio into dependabot/electron-45.1.0 2026-11-01 19:10:24 -08:00
YHH 0b482f3283 Merge pull request #14017 from octo-patch/feat/minimax-m31-flash-rollout-20261020
feat(minimax): default to M3.1 Flash and preserve reasoning contracts
2026-11-01 18:44:25 -08:00
YHH 5ae138c556 Merge pull request #14634 from SivanCola/feature/model-health-ui-upstream
feat(studio): add opt-in health status to grouped picker / 为原分组模型列表增加可选检测状态
2026-11-01 18:06:24 -08:00
YHH fb6c043d2d Merge pull request #14847 from lancy69/fix/14845-tool-result-shadow
fix(studio): fade clipped tool results without coloured shadows
2026-11-01 17:44:04 -08:00
YHH 737a181c49 Merge pull request #14923 from esengine/release/studio-2.57.0
release(studio): notes for 2.57.0
v2.57.0 studio-v2.57.0
2026-11-01 16:37:22 -08:00
esengine 5b90af36a4 release(studio): notes for 2.57.0 2026-11-01 16:27:59 -08:00
YHH c8eec1b946 Merge pull request #14922 from esengine/fix/power-save-run-motion
fix(studio): Reduced effects also stop the looping run animations
2026-11-01 10:55:12 -08:00
YHH 873140996c Merge pull request #14920 from esengine/test/extra-root-prefix-diff
test(boot): show where an extra root moved the cache-stable prefix
2026-11-01 10:21:12 -08:00
esengine 5dcb9a3a35 fix(studio): Reduced effects also stop the looping run animations
A long wait keeps the running state, and its three infinite animations, on
screen for minutes; the R mark's stroke-dashoffset trace alone costs a style
recalc every frame. Reduced effects, the mode meant for a window that keeps
the GPU busy, now draws the mark whole and stops the row sweep and spinners.

Fixes #14919
2026-11-01 10:14:02 -08:00
esengine 029df0ec25 test(boot): show where an extra root moved the cache-stable prefix
The assertion said only that the prefixes differed. It failed once on the
Windows full suite and passed on rerun; report the first differing byte with
context so the next failure says what moved.
2026-11-01 09:50:30 -08:00
YHH f6aa704059 Merge pull request #14915 from esengine/feat/office-preview
feat(workbench): preview Word and Excel files read-only
2026-11-01 08:55:17 -08:00
YHH dc5a49b8fa Merge pull request #14914 from esengine/fx/serve-password-file
fix(serve): read the password from --password-file instead of argv
2026-11-01 08:39:19 -08:00
esengine fb08cdc0d5 feat(workbench): preview Word and Excel files read-only
.docx and .xlsx were classed unsupported, so a delivered report or sheet
could only be opened in the system app. The kernel now serves them as an
office preview kind (binary, 32 MB), and the workbench renders them to static
HTML (docx-preview; ExcelJS with SSF number formats) shown through
staticDocument() in a sandbox="" frame, so nothing in a file runs or fetches.
Both parsers are lazy chunks, and a machine setting turns the preview off.

Refs #14622
2026-11-01 08:14:16 -08:00
esengine 2bd960b09d fix(serve): read the password from --password-file instead of argv
--password put the serve password in argv, where ps and /proc/<pid>/cmdline
show it to every local user; --hash-password needed it there too. Add
--password-file, held to the same single-line, owner-only rule as
--token-file, and accept it for --hash-password.

Fixes #14913
2026-11-01 08:12:54 -08:00
YHH f770f33791 Merge pull request #14912 from kevin9327/fix/driver-refusal-rune
fix(computer): cut a long CUA refusal reason on a rune boundary
2026-11-01 07:52:17 -08:00
YHH b58d62b589 Merge pull request #14911 from kevin9327/fix/eval-result-rune
fix(browser): cut a long eval result on a rune boundary
2026-11-01 07:52:09 -08:00
kevin 37e203408d fix(computer): cut a long CUA refusal reason on a rune boundary 2026-11-02 00:15:50 +09:00
kevin 2407ebd639 fix(browser): cut a long eval result on a rune boundary 2026-11-02 00:15:50 +09:00
YHH f247be74ea Merge pull request #14909 from esengine/fx/seed-aged-meta
test(serve): age seeded sessions through their branch meta
2026-11-01 06:22:56 -08:00
YHH f88faddf41 Merge pull request #14907 from kevin9327/fix/bounded-segment-rune
fix(evidence): cut quoted mutation-scan segments on a rune boundary
2026-11-01 06:22:45 -08:00
YHH 027668a0ee Merge pull request #14908 from kevin9327/fix/args-summary-rune
fix(recovery): cut ArgsSummary on a rune boundary
2026-11-01 05:55:08 -08:00
esengine b0c5d3287e test(serve): age seeded sessions through their branch meta
seedAged set file times only, but listings read activity from the branch
meta, which SaveSnapshot stamps with the write time. Every seeded session
was therefore 'now', ordered only by milliseconds of write order, and the
recent-order tests failed whenever two writes shared a millisecond.

Write the intended time into the meta as well as the transcript and event
log, so the seeded ages are the ones the listing reads.
2026-11-01 05:31:08 -08:00
kevin 498b834b71 fix(recovery): cut ArgsSummary on a rune boundary 2026-11-01 22:04:09 +09:00
kevin 2051fc937f fix(evidence): cut quoted mutation-scan segments on a rune boundary 2026-11-01 22:03:20 +09:00
YHH ee47753988 Merge pull request #14906 from esengine/dependabot/npm_and_yarn/desktop/frontend-next/npm-1dcfd208cf
chore(deps): bump the npm group in /desktop/frontend-next with 10 updates
2026-11-01 04:55:53 -08:00
YHH 5ecf313c3d Merge pull request #14901 from esengine/dependabot/go_modules/go-ccc6468e39
chore(deps): bump the go group with 4 updates
2026-11-01 04:55:14 -08:00
YHH fea800bac6 Merge pull request #14905 from esengine/dependabot/github_actions/actions-4430c5f07e
chore(deps): bump actions/setup-java from 4.9.1 to 6.1.0 in the actions group
2026-11-01 04:46:10 -08:00
esengine ba6bf964bb test(surface): read the default catalog as optional under a2ui 0.14
a2ui 0.14 types SurfaceModel.defaultCatalog as possibly undefined. Studio's
surface always names its catalog in createSurface, so the catalogue checks
still hold; an absent catalog now fails them rather than the type check.
2026-11-01 04:37:51 -08:00
esengine 82de6d9622 chore(deps): tidy the desktop module for the go group bump 2026-11-01 04:27:05 -08:00
dependabot[bot] 14dbabfec2 chore(deps): bump the npm group
Bumps the npm group in /desktop/frontend-next with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [@a2ui/react](https://github.com/a2ui-project/a2ui/tree/HEAD/typescript/renderers/react) | `0.13.0` | `0.14.0` |
| [@a2ui/web_core](https://github.com/a2ui-project/a2ui/tree/HEAD/typescript/core/web_core) | `0.13.0` | `0.14.0` |
| [@codemirror/view](https://github.com/codemirror/view) | `6.43.14` | `6.43.15` |
| [@mantine/charts](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/charts) | `9.7.3` | `9.7.4` |
| [@mantine/core](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/core) | `9.7.3` | `9.7.4` |
| [@mantine/hooks](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/hooks) | `9.7.3` | `9.7.4` |
| [katex](https://github.com/KaTeX/KaTeX) | `0.19.0` | `0.19.1` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.61.0` | `1.64.0` |
| [maplibre-gl](https://github.com/maplibre/maplibre-gl-js) | `6.15.0` | `6.16.0` |
| [@babel/parser](https://github.com/babel/babel/tree/HEAD/packages/babel-parser) | `8.0.7` | `8.0.8` |


Updates `@a2ui/react` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/a2ui-project/a2ui/releases)
- [Changelog](https://github.com/a2ui-project/a2ui/blob/main/typescript/renderers/react/CHANGELOG.md)
- [Commits](https://github.com/a2ui-project/a2ui/commits/HEAD/typescript/renderers/react)

Updates `@a2ui/web_core` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/a2ui-project/a2ui/releases)
- [Changelog](https://github.com/a2ui-project/a2ui/blob/main/typescript/core/web_core/CHANGELOG.md)
- [Commits](https://github.com/a2ui-project/a2ui/commits/HEAD/typescript/core/web_core)

Updates `@codemirror/view` from 6.43.14 to 6.43.15
- [Changelog](https://github.com/codemirror/view/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/view/commits)

Updates `@mantine/charts` from 9.7.3 to 9.7.4
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/9.7.4/packages/@mantine/charts)

Updates `@mantine/core` from 9.7.3 to 9.7.4
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/9.7.4/packages/@mantine/core)

Updates `@mantine/hooks` from 9.7.3 to 9.7.4
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/9.7.4/packages/@mantine/hooks)

Updates `katex` from 0.19.0 to 0.19.1
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.19.0...v0.19.1)

Updates `lucide-react` from 1.61.0 to 1.64.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/1.64.0/packages/lucide-react)

Updates `maplibre-gl` from 6.15.0 to 6.16.0
- [Release notes](https://github.com/maplibre/maplibre-gl-js/releases)
- [Changelog](https://github.com/maplibre/maplibre-gl-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/maplibre/maplibre-gl-js/compare/v6.15.0...v6.16.0)

Updates `@babel/parser` from 8.0.7 to 8.0.8
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v8.0.8/packages/babel-parser)

---
updated-dependencies:
- dependency-name: "@a2ui/react"
  dependency-version: 0.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@a2ui/web_core"
  dependency-version: 0.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@codemirror/view"
  dependency-version: 6.43.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: "@mantine/charts"
  dependency-version: 9.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: "@mantine/core"
  dependency-version: 9.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: "@mantine/hooks"
  dependency-version: 9.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: katex
  dependency-version: 0.19.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: lucide-react
  dependency-version: 1.64.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: maplibre-gl
  dependency-version: 6.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@babel/parser"
  dependency-version: 8.0.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-01 11:59:19 +00:00
dependabot[bot] 6bccc90b84 chore(deps): bump actions/setup-java
Bumps the actions group with 1 update: [actions/setup-java](https://github.com/actions/setup-java).


Updates `actions/setup-java` from 4.9.1 to 6.1.0
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/cf277c60eb25467037889841efdb72551f06f6c3...b843ebf9b913146b38da2eaa7aeddf76074ae1ad)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-01 11:59:01 +00:00
dependabot[bot] 91b5467cba chore(deps-dev): bump electron in /desktop/electron
Bumps [electron](https://github.com/electron/electron) from 44.7.2 to 45.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Commits](https://github.com/electron/electron/compare/v44.7.2...v45.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-version: 45.1.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-01 11:57:55 +00:00
dependabot[bot] 34707b672f chore(deps): bump the go group with 4 updates
---
updated-dependencies:
- dependency-name: charm.land/bubbletea/v2
  dependency-version: 2.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/bmatcuk/doublestar/v4
  dependency-version: 4.10.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/pkg/sftp
  dependency-version: 1.13.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/tdewolff/parse/v2
  dependency-version: 2.8.20
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-01 11:56:25 +00:00
YHH 839114a857 Merge pull request #14900 from esengine/fx/bg-job-resume-note
fix(jobs): tell the model a running background job resumes the session when it ends
2026-11-01 03:29:21 -08:00
esengine d56abf84d1 fix(jobs): tell the model a running background job resumes the session when it ends
The host already opens a turn when a background job ends, but bash's launch
message, bash_output and wait only offered more polling. A long build outlived
several capped waits and the model closed the turn reporting it unfinished.

The manager now answers whether a completion will resume a given session, and
the three readers state it for running jobs only where that holds.

Refs #14879
2026-11-01 03:03:27 -08:00
YHH e52e22bcce Merge pull request #14898 from esengine/fx/host-row-label
fix(queue): label a background job's follow-on that needs a decision as background
2026-10-31 23:55:01 -07:00
esengine de35fb7b0f fix(queue): label a background job's follow-on that needs a decision as background 2026-10-31 23:31:15 -07:00
YHH a8fe2001c8 Merge pull request #14894 from kevin9327/fix-failure-summary-rune
fix(plugin): cut MCP startup failure summaries on a rune boundary
2026-10-31 22:51:12 -07:00
YHH 1efd6dcae6 Merge pull request #14893 from esengine/fx/chip-steer-label
fix(composer): name a running send with a skill card as queued
2026-10-31 22:25:16 -07:00
kevin 41cd0d7021 fix(plugin): cut MCP startup failure summaries on a rune boundary 2026-11-01 14:05:40 +09:00
esengine 5f82ea087f fix(composer): name a running send with a skill card as queued 2026-10-31 22:01:06 -07:00
YHH 14a85d29cb Merge pull request #14891 from kevin9327/fix-semantic-truncate-rune
fix(capability): cut semantic-router candidate descriptions on a rune boundary
2026-10-31 20:51:42 -07:00
YHH 4367b57921 Merge pull request #14890 from kevin9327/fix-byte-size-rounding-carry
fix(size): move byte sizes to the next unit when rounding reaches 1024
2026-10-31 20:51:04 -07:00