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