Compare commits

...
Author SHA1 Message Date
esengine 3af45c0b53 docs(release): studio 2.58.1 release notes, with the unreleased fragments merged into it 2026-11-08 16:40:45 -08:00
YHH 643bbad2b3 Merge pull request #15025 from esengine/dependabot/go_modules/go-647395855d
chore(deps): bump the go group with 3 updates
2026-11-08 10:30:32 -08:00
esengine 5a1dcb19d2 chore(deps): tidy the desktop module for the go group bump
desktop/ is its own module and requires modernc.org/sqlite indirectly; the root-only bump left its go.mod and go.sum behind, which the go.mod tidy job rejects.
2026-11-08 08:31:10 -08:00
YHH 564177d7c2 Merge pull request #15028 from esengine/dependabot/github_actions/actions-8779dd77e0
chore(deps): bump the actions group with 4 updates
2026-11-08 07:30:58 -08:00
esengine a89b729586 fix(openwith): on Linux, xdg-terminal-exec starts the terminal ahead of the fixed candidate order
The terminal target returned the first installed of a fixed list, so a machine with konsole and kitty always got konsole. xdg-terminal-exec reads the desktop's default-terminal list (Default Terminal Specification) and takes the folder as --dir=; it is declared first, and the existing order remains the fallback.
2026-11-08 06:34:07 -08:00
YHH 6844599056 Merge pull request #15029 from esengine/dependabot/npm_and_yarn/desktop/frontend-next/npm-584499d3e1
chore(deps): bump the npm group in /desktop/frontend-next with 11 updates
2026-11-08 05:32:52 -08:00
YHH d38c8b99ad Merge pull request #15027 from esengine/dependabot/npm_and_yarn/desktop/electron/npm-1fe0127121
chore(deps-dev): bump electron from 45.1.0 to 45.2.3 in /desktop/electron in the npm group
2026-11-08 05:31:24 -08:00
dependabot[bot] 10b92ed99c chore(deps): bump the npm group
Bumps the npm group in /desktop/frontend-next with 11 updates:

| Package | From | To |
| --- | --- | --- |
| [@a2ui/react](https://github.com/a2ui-project/a2ui/tree/HEAD/typescript/renderers/react) | `0.14.0` | `0.15.0` |
| [@a2ui/web_core](https://github.com/a2ui-project/a2ui/tree/HEAD/typescript/core/web_core) | `0.14.0` | `0.15.0` |
| [@mantine/charts](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/charts) | `9.7.4` | `9.7.5` |
| [@mantine/core](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/core) | `9.7.4` | `9.7.5` |
| [@mantine/hooks](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/hooks) | `9.7.4` | `9.7.5` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.64.0` | `1.69.0` |
| [pdfjs-dist](https://github.com/mozilla/pdf.js) | `6.4.299` | `6.5.438` |
| [@babel/parser](https://github.com/babel/babel/tree/HEAD/packages/babel-parser) | `8.0.8` | `8.1.0` |
| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `6.1.2` | `6.2.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.3.5` | `8.3.6` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `5.0.5` | `5.1.0` |


Updates `@a2ui/react` from 0.14.0 to 0.15.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.14.0 to 0.15.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 `@mantine/charts` from 9.7.4 to 9.7.5
- [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.5/packages/@mantine/charts)

Updates `@mantine/core` from 9.7.4 to 9.7.5
- [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.5/packages/@mantine/core)

Updates `@mantine/hooks` from 9.7.4 to 9.7.5
- [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.5/packages/@mantine/hooks)

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

Updates `pdfjs-dist` from 6.4.299 to 6.5.438
- [Release notes](https://github.com/mozilla/pdf.js/releases)
- [Commits](https://github.com/mozilla/pdf.js/compare/v6.4.299...v6.5.438)

Updates `@babel/parser` from 8.0.8 to 8.1.0
- [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.1.0/packages/babel-parser)

Updates `@vitejs/plugin-react` from 6.1.2 to 6.2.1
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/[email protected]/packages/plugin-react)

Updates `vite` from 8.3.5 to 8.3.6
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.3.6/packages/vite)

Updates `vitest` from 5.0.5 to 5.1.0
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v5.1.0/packages/vitest)

---
updated-dependencies:
- dependency-name: "@a2ui/react"
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@a2ui/web_core"
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@mantine/charts"
  dependency-version: 9.7.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: "@mantine/core"
  dependency-version: 9.7.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: "@mantine/hooks"
  dependency-version: 9.7.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: lucide-react
  dependency-version: 1.69.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: pdfjs-dist
  dependency-version: 6.5.438
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@babel/parser"
  dependency-version: 8.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 6.2.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm
- dependency-name: vite
  dependency-version: 8.3.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm
- dependency-name: vitest
  dependency-version: 5.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-08 11:54:49 +00:00
dependabot[bot] 2738768c4d chore(deps): bump the actions group with 4 updates
Bumps the actions group with 4 updates: [pnpm/action-setup](https://github.com/pnpm/action-setup), [actions/setup-java](https://github.com/actions/setup-java), [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action).


Updates `pnpm/action-setup` from 6.1.0 to 6.1.1
- [Release notes](https://github.com/pnpm/action-setup/releases)
- [Commits](https://github.com/pnpm/action-setup/compare/ea17c68df8912ef543352723c149a84f56e3d413...73e46992e05b19abd31f2f3c20e0e7370d762115)

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

Updates `github/codeql-action/init` from 4.39.1 to 4.39.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/9b3254085494b55a0f7c4c2b3d2d52cc712ce370...33d7b85da1a04171e211befe2c739303b9a4c066)

Updates `github/codeql-action/analyze` from 4.39.1 to 4.39.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/9b3254085494b55a0f7c4c2b3d2d52cc712ce370...33d7b85da1a04171e211befe2c739303b9a4c066)

---
updated-dependencies:
- dependency-name: pnpm/action-setup
  dependency-version: 6.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
- dependency-name: actions/setup-java
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions
- dependency-name: github/codeql-action/init
  dependency-version: 4.39.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.39.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-08 11:54:13 +00:00
dependabot[bot] 4684e5d7b2 chore(deps-dev): bump electron in /desktop/electron in the npm group
Bumps the npm group in /desktop/electron with 1 update: [electron](https://github.com/electron/electron).


Updates `electron` from 45.1.0 to 45.2.3
- [Release notes](https://github.com/electron/electron/releases)
- [Commits](https://github.com/electron/electron/compare/v45.1.0...v45.2.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-version: 45.2.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-08 11:53:06 +00:00
dependabot[bot] 06fae21f08 chore(deps): bump the go group with 3 updates
Bumps the go group with 3 updates: [github.com/spf13/pflag](https://github.com/spf13/pflag), [github.com/yuin/goldmark](https://github.com/yuin/goldmark) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).


Updates `github.com/spf13/pflag` from 1.0.10 to 1.1.0
- [Release notes](https://github.com/spf13/pflag/releases)
- [Commits](https://github.com/spf13/pflag/compare/v1.0.10...v1.1.0)

Updates `github.com/yuin/goldmark` from 1.8.6 to 1.8.7
- [Release notes](https://github.com/yuin/goldmark/releases)
- [Commits](https://github.com/yuin/goldmark/compare/v1.8.6...v1.8.7)

Updates `modernc.org/sqlite` from 1.61.0 to 1.61.1
- [Release notes](https://gitlab.com/cznic/sqlite/tags)
- [Changelog](https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/cznic/sqlite/compare/v1.61.0...v1.61.1)

---
updated-dependencies:
- dependency-name: github.com/spf13/pflag
  dependency-version: 1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/yuin/goldmark
  dependency-version: 1.8.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: modernc.org/sqlite
  dependency-version: 1.61.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-11-08 11:52:53 +00:00
esengine d5ee56c1b7 fix(cli): every mcp subcommand prints usage for -h/--help and mcp import refuses arguments
Only add intercepted the flag, so mcp import --help ran the import and mcp remove --help looked up a server named --help. The dispatcher now answers the flag once, before choosing a subcommand; a flag later on the line still reaches the command, as in mcp add name -- cmd --help.
2026-11-08 03:31:56 -08:00
esengine 45e7f52d70 fix(electron): the instance probe and the kernel launch hide their console window on Windows
instance.js ran the console-subsystem kernel with execFileSync and no windowsHide on every launch, before any window exists, which is the console flash in #15016. host.js spawned the same binary without it too. packagegrants.js and cua.js already pass windowsHide; the probe now takes the runner as an argument so a test can see the option.
2026-11-07 20:31:50 -08:00
27 changed files with 365 additions and 296 deletions

No files matched your search

+2 -2
View File
@@ -114,7 +114,7 @@ jobs:
cache-dependency-path: go.sum
# pnpm first: setup-node's pnpm cache needs the executable to exist.
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v4
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v4
with:
version: 10
@@ -124,7 +124,7 @@ jobs:
cache: pnpm
cache-dependency-path: desktop/frontend-next/pnpm-lock.yaml
- uses: actions/setup-java@b843ebf9b913146b38da2eaa7aeddf76074ae1ad # v6.1.0
- uses: actions/setup-java@77dd5b2ce225ea11469928ac317850245a74ae78 # v6.2.0
with:
distribution: temurin
java-version: "21"
+3 -3
View File
@@ -43,20 +43,20 @@ jobs:
if: matrix.branch != ''
run: echo "sha=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"
- name: Initialize CodeQL
uses: github/codeql-action/init@9b3254085494b55a0f7c4c2b3d2d52cc712ce370 # v4.39.1
uses: github/codeql-action/init@33d7b85da1a04171e211befe2c739303b9a4c066 # v4.39.3
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.language == 'go' && 'autobuild' || 'none' }}
- name: Perform CodeQL Analysis
if: matrix.branch == ''
uses: github/codeql-action/analyze@9b3254085494b55a0f7c4c2b3d2d52cc712ce370 # v4.39.1
uses: github/codeql-action/analyze@33d7b85da1a04171e211befe2c739303b9a4c066 # v4.39.3
with:
category: "/language:${{ matrix.language }}"
# Results from a checked-out line are filed under that line's ref, not the
# default branch the schedule happened to run from.
- name: Perform CodeQL Analysis (${{ matrix.branch }})
if: matrix.branch != ''
uses: github/codeql-action/analyze@9b3254085494b55a0f7c4c2b3d2d52cc712ce370 # v4.39.1
uses: github/codeql-action/analyze@33d7b85da1a04171e211befe2c739303b9a4c066 # v4.39.3
with:
category: "/language:${{ matrix.language }}"
ref: refs/heads/${{ matrix.branch }}
+1 -1
View File
@@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
+1 -1
View File
@@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
+3 -3
View File
@@ -200,7 +200,7 @@ jobs:
cache: true
cache-dependency-path: go.sum
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
@@ -608,7 +608,7 @@ jobs:
ref: ${{ needs.resolve.outputs.sha }}
persist-credentials: false
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
@@ -911,7 +911,7 @@ jobs:
# The page every archive carries beside the executable, built once here
# rather than once per target: serve.FindPage looks for
# frontend-next/dist next to the binary.
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
@@ -41,7 +41,7 @@ jobs:
cache: true
cache-dependency-path: go.sum
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
+4 -4
View File
@@ -28,7 +28,7 @@ jobs:
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
@@ -108,7 +108,7 @@ jobs:
fi
- if: steps.spa.outputs.run == 'true'
uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
@@ -250,7 +250,7 @@ jobs:
cache: true
- if: steps.scope.outputs.run == 'true'
uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
@@ -435,7 +435,7 @@ jobs:
cache: true
cache-dependency-path: desktop/go.sum
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: pnpm/action-setup@73e46992e05b19abd31f2f3c20e0e7370d762115 # v6.1.1
with:
version: 10
run_install: false
+1 -1
View File
@@ -33,7 +33,7 @@
"launcher-live": "node test/launcher_live.mjs"
},
"devDependencies": {
"electron": "45.1.0",
"electron": "45.2.3",
"electron-builder": "^26.18.0",
"playwright": "1.64.1"
},
+5 -5
View File
@@ -9,8 +9,8 @@ importers:
.:
devDependencies:
electron:
specifier: 45.1.0
version: 45.1.0([email protected])
specifier: 45.2.3
version: 45.2.3([email protected])
electron-builder:
specifier: ^26.18.0
version: 26.18.0([email protected])([email protected])
@@ -374,8 +374,8 @@ packages:
resolution: {integrity: sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==}
engines: {node: '>=8.0.0'}
electron@45.1.0:
resolution: {integrity: sha512-i7qKVAh/KR5v1pf56NhGGX2QYHcdjvLgS7koL6ui50c+zUDGLRunR95nXcTpHPURKOQ4GDBG8BmXiDgOQ8DD0A==}
electron@45.2.3:
resolution: {integrity: sha512-Vurzu5UOA5nTGT4LqIwXD16QFGrOZdiXxF+1UP4KNsAOo/YtDcT3/u0jhP4WSwNJ0iLrLDi85hzBJ0arnGDhyw==}
engines: {node: '>= 22.12.0'}
hasBin: true
@@ -1551,7 +1551,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
electron@45.1.0([email protected]):
electron@45.2.3([email protected]):
dependencies:
'@electron-internal/extract-zip': 1.0.5
'@electron/get': 5.1.0([email protected])
+1 -1
View File
@@ -28,7 +28,7 @@ class HostStartError extends Error {
function start(binary, args, { onStderr, onExit, onAct, onSlow, systemLanguage, timeoutMs = HANDSHAKE_TIMEOUT_MS } = {}) {
const env = { ...process.env };
if (systemLanguage) env.REASONIX_SYSTEM_LANG = systemLanguage;
const child = spawn(binary, args, { stdio: ["pipe", "pipe", "pipe"], env });
const child = spawn(binary, args, { stdio: ["pipe", "pipe", "pipe"], env, windowsHide: true });
child.stderr.setEncoding("utf8");
if (onStderr) child.stderr.on("data", onStderr);
if (onExit) child.on("exit", onExit);
+2 -2
View File
@@ -6,9 +6,9 @@ const { execFileSync } = require("node:child_process");
// one Studio, canonicalized where it lives. The kernel answers it, because the
// home is resolved from an environment and a platform default this process
// does not own.
function instanceID(binary) {
function instanceID(binary, run = execFileSync) {
try {
return execFileSync(binary, ["-instance-id"], { encoding: "utf8", timeout: 10000 }).trim();
return run(binary, ["-instance-id"], { encoding: "utf8", timeout: 10000, windowsHide: true }).trim();
} catch {
// A kernel that cannot be run at all is a launch that is going to fail with
// a better message in a moment. Refusing to start here would report it as
+9 -1
View File
@@ -625,7 +625,7 @@ test("Windows is given the format it reads the small sizes from", () => {
assert.equal(iconFile("linux"), "icon.png");
});
const { profileFor } = require("../src/instance.js");
const { profileFor, instanceID } = require("../src/instance.js");
// Two homes are two Studios, and the profile is what carries that into the
// platform's own lock. Sharing one would make the second launch look like a
@@ -641,6 +641,14 @@ test("each instance gets a profile of its own", () => {
assert.equal(profileFor(base, ""), base);
});
test("the instance probe runs the kernel without a console window of its own", () => {
let options;
const run = (binary, args, opts) => { options = { binary, args, opts }; return "abc123\n"; };
assert.equal(instanceID("host", run), "abc123");
assert.deepEqual(options.args, ["-instance-id"]);
assert.equal(options.opts.windowsHide, true);
});
// A program that cannot be started emits "error" and never "exit". Waiting for
// the handshake instead spent the full timeout and then blamed the kernel for
// saying nothing, which is where the launch failure on Windows hid: go build
+11 -11
View File
@@ -12,8 +12,8 @@
"census:verify": "node tools/ui-census/verify.mjs"
},
"dependencies": {
"@a2ui/react": "0.14.0",
"@a2ui/web_core": "0.14.0",
"@a2ui/react": "0.15.0",
"@a2ui/web_core": "0.15.0",
"@codemirror/commands": "^6.11.1",
"@codemirror/lang-css": "^6.3.1",
"@codemirror/lang-go": "^6.0.1",
@@ -32,9 +32,9 @@
"@codemirror/state": "^6.7.6",
"@codemirror/view": "^6.43.15",
"@lezer/highlight": "^1.2.5",
"@mantine/charts": "9.7.4",
"@mantine/core": "9.7.4",
"@mantine/hooks": "9.7.4",
"@mantine/charts": "9.7.5",
"@mantine/core": "9.7.5",
"@mantine/hooks": "9.7.5",
"@noble/curves": "2.4.0",
"@xterm/addon-fit": "^0.11.0",
"@xterm/addon-web-links": "^0.12.0",
@@ -44,10 +44,10 @@
"dompurify": "^3.4.17",
"exceljs": "4.4.0",
"katex": "^0.19.1",
"lucide-react": "^1.64.0",
"lucide-react": "^1.69.0",
"maplibre-gl": "6.16.0",
"papaparse": "^5.7.0",
"pdfjs-dist": "^6.4.299",
"pdfjs-dist": "^6.5.438",
"react": "^19.3.1",
"react-dom": "^19.3.1",
"react-map-gl": "8.1.3",
@@ -64,18 +64,18 @@
"zod": "3.25.76"
},
"devDependencies": {
"@babel/parser": "^8.0.8",
"@babel/parser": "^8.1.0",
"@testing-library/react": "^16.3.3",
"@testing-library/user-event": "^14.6.8",
"@types/papaparse": "^5.5.2",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@vitejs/plugin-react": "^6.1.2",
"@vitejs/plugin-react": "^6.2.1",
"jsdom": "^30.1.3",
"jszip": "3.10.2",
"playwright": "^1.64.1",
"typescript": "^7.0.2",
"vite": "^8.3.5",
"vitest": "^5.0.5"
"vite": "^8.3.6",
"vitest": "^5.1.0"
}
}
+207 -207
View File
@@ -9,11 +9,11 @@ importers:
.:
dependencies:
'@a2ui/react':
specifier: 0.14.0
version: 0.14.0([email protected]([email protected]))([email protected])([email protected])
specifier: 0.15.0
version: 0.15.0([email protected]([email protected]))([email protected])([email protected])
'@a2ui/web_core':
specifier: 0.14.0
version: 0.14.0
specifier: 0.15.0
version: 0.15.0
'@codemirror/commands':
specifier: ^6.11.1
version: 6.11.1
@@ -69,14 +69,14 @@ importers:
specifier: ^1.2.5
version: 1.2.5
'@mantine/charts':
specifier: 9.7.4
version: 9.7.4(@mantine/[email protected].4(@mantine/[email protected].4([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected]))(@mantine/[email protected].4([email protected]))([email protected]([email protected]))([email protected])([email protected](@types/[email protected])([email protected]([email protected]))([email protected])([email protected])([email protected]))
specifier: 9.7.5
version: 9.7.5(@mantine/[email protected].5(@mantine/[email protected].5([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected]))(@mantine/[email protected].5([email protected]))([email protected]([email protected]))([email protected])([email protected](@types/[email protected])([email protected]([email protected]))([email protected])([email protected])([email protected]))
'@mantine/core':
specifier: 9.7.4
version: 9.7.4(@mantine/[email protected].4([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
specifier: 9.7.5
version: 9.7.5(@mantine/[email protected].5([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
'@mantine/hooks':
specifier: 9.7.4
version: 9.7.4([email protected])
specifier: 9.7.5
version: 9.7.5([email protected])
'@noble/curves':
specifier: 2.4.0
version: 2.4.0
@@ -105,8 +105,8 @@ importers:
specifier: ^0.19.1
version: 0.19.1
lucide-react:
specifier: ^1.64.0
version: 1.64.0(@types/[email protected])([email protected])
specifier: ^1.69.0
version: 1.69.0(@types/[email protected])([email protected])
maplibre-gl:
specifier: 6.16.0
version: 6.16.0
@@ -114,8 +114,8 @@ importers:
specifier: ^5.7.0
version: 5.7.0
pdfjs-dist:
specifier: ^6.4.299
version: 6.4.299
specifier: ^6.5.438
version: 6.5.438
react:
specifier: ^19.3.1
version: 19.3.1
@@ -160,8 +160,8 @@ importers:
version: 3.25.76
devDependencies:
'@babel/parser':
specifier: ^8.0.8
version: 8.0.8
specifier: ^8.1.0
version: 8.1.0
'@testing-library/react':
specifier: ^16.3.3
version: 16.3.3(@testing-library/[email protected])(@types/[email protected](@types/[email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
@@ -178,8 +178,8 @@ importers:
specifier: ^19.3.0
version: 19.3.0(@types/[email protected])
'@vitejs/plugin-react':
specifier: ^6.1.2
version: 6.1.2([email protected].5(@types/[email protected])([email protected]))
specifier: ^6.2.1
version: 6.2.1([email protected].6(@types/[email protected])([email protected]))
jsdom:
specifier: ^30.1.3
version: 30.1.3(@noble/[email protected])
@@ -193,11 +193,11 @@ importers:
specifier: ^7.0.2
version: 7.0.2
vite:
specifier: ^8.3.5
version: 8.3.5(@types/[email protected])([email protected])
specifier: ^8.3.6
version: 8.3.6(@types/[email protected])([email protected])
vitest:
specifier: ^5.0.5
version: 5.0.5(@types/[email protected])([email protected](@noble/[email protected]))([email protected].5(@types/[email protected])([email protected]))
specifier: ^5.1.0
version: 5.1.0(@types/[email protected])([email protected](@noble/[email protected]))([email protected].6(@types/[email protected])([email protected]))
packages:
@@ -206,16 +206,16 @@ packages:
peerDependencies:
'@a2ui/web_core': ^0.14.0
'@a2ui/[email protected]4.0':
resolution: {integrity: sha512-kew3gVx4/U4qZ41FwyanDndCuBsx3s+5kPzjBt5N9w8E6UKSfwJpOmWD3Vy5WN5bxuiQKmorN+Ozh59ZLrwkMA==}
'@a2ui/[email protected]5.0':
resolution: {integrity: sha512-SkbdIMoRgtYNGh+nSEvK8YHDSAgS8LVFggDMCYdDqrUAWMLb2PS1unYOL8lfkXjskYK/+VoD7sa6X+I2F+F62w==}
engines: {node: '>=18.0.0'}
peerDependencies:
react: ^18.0.0 || ^19.0.0
react-dom: ^18.0.0 || ^19.0.0
zod: ^3.25.76
'@a2ui/[email protected]4.0':
resolution: {integrity: sha512-OEJOgcfRMW0lwActVl1NKToxE2Ff5G3mIBHDB6gKm0elGZSwAhB7bj+Ef2a/h2nrL+57VPnSR67YSNz9JVV4yw==}
'@a2ui/[email protected]5.0':
resolution: {integrity: sha512-S3k9rAJ9O55z5TlDeWy22ly3yQnDLO+XBWihlL5JQSuyxaCUmd7jgFnxO4eq/Bn6dSgdBF0WG8cve/euMoz8SA==}
'@asamuzakjp/[email protected]':
resolution: {integrity: sha512-1t1U8Cm3RBl9vh3RAZhjkPaduzLSvQJRToRrxpGR/eDRW99mOREleuu+mWfiFa795bUzjwht7NgphCKTs2ianQ==}
@@ -241,8 +241,8 @@ packages:
resolution: {integrity: sha512-HYx0YmuchRxRSpnjvcNffnPS8DCauKNmnumIuHG3jnQAVewRA7kfJGwF13ayEpSZs7s4R/oBH4eppuXcAQd5JQ==}
engines: {node: ^22.18.0 || >=24.11.0}
'@babel/parser@8.0.8':
resolution: {integrity: sha512-Gq65JogAr0S2p0BzvfSJboyuiRnxDQApyOqHkKmkrvm+VlLK4gC3pKsiOKEdnhFBemrFbSnOu90mZZWDpiJnmQ==}
'@babel/parser@8.1.0':
resolution: {integrity: sha512-fpqZYAC+Tthr19JbEKxXhCGutvfm/+roMe+ULrgUKI+GVyzkQiTMTSheORcWIAzW8T3Oo3W5UavWSvAWmsp7fA==}
engines: {node: ^22.18.0 || >=24.11.0}
hasBin: true
@@ -250,8 +250,8 @@ packages:
resolution: {integrity: sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==}
engines: {node: '>=6.9.0'}
'@babel/types@8.0.8':
resolution: {integrity: sha512-iXSSZAKQWmaeAwGtFw10v9fg5hUiUs0L+w+Z2K11kym3pDNK+SF0VcAQPsEFvWcTSZ7LMgClMXDBvTbH0IlICg==}
'@babel/types@8.1.0':
resolution: {integrity: sha512-8V8aSTDx012YPmDQF30vrokyxVFdRAU2YBS2VzrnfLAGkP8floVnjckwgFcD0Jrvf6GWMSRdCrYVsk3tyMwZRg==}
engines: {node: ^22.18.0 || >=24.11.0}
'@bramus/[email protected]':
@@ -607,24 +607,24 @@ packages:
'@lit/[email protected]':
resolution: {integrity: sha512-pbCDiVMnne1lYUIaYNN5wrwQXDtHaYtg7YEFPeW+hws6U47WeFvISGUWekPGKWOP1ygrs0ef0o1VJMk1exos5A==}
'@mantine/[email protected].4':
resolution: {integrity: sha512-liMa0KIxcbE7goA0YqslEj9Ir8NVBV2158vW11J8g20+yrYe6fAqFu0nrtFMqN0Jm72wU0DMqCqZcrsKlWf0DQ==}
'@mantine/[email protected].5':
resolution: {integrity: sha512-udNEXI9NWs/BOXNOS868O4dNuQDzBNO9hP3ahFRe/i1It7kbFGlZ2P5y0HNYZ4+a38+coUeTuYaN7AJ7a41BiA==}
peerDependencies:
'@mantine/core': 9.7.4
'@mantine/hooks': 9.7.4
'@mantine/core': 9.7.5
'@mantine/hooks': 9.7.5
react: ^19.2.0
react-dom: ^19.2.0
recharts: '>=3.2.1'
'@mantine/[email protected].4':
resolution: {integrity: sha512-c7aTGELNn74CxG9i5/tq9BHGh0lKdKmGGz+9iDF+gR7Ipt4U1TMM286lAmLpRrKL2bR+UEaN4blZ8UJmOuGJ4Q==}
'@mantine/[email protected].5':
resolution: {integrity: sha512-NiOTHpAZssi1Z5ISZBvcXEA4XDn0BWcxwpmmUthFx/eL0CsJ18FXMn/ydRCJmoeMGcIKmRE+pjt90KM70GOsUw==}
peerDependencies:
'@mantine/hooks': 9.7.4
'@mantine/hooks': 9.7.5
react: ^19.2.0
react-dom: ^19.2.0
'@mantine/[email protected].4':
resolution: {integrity: sha512-j6Xf9Sc1fhhGEKXg6BZA2geyP/Czqvo6Rsi0IduOCWgwl/MAAJbKRjRc7xe2+9vePLdfqLZqRIAOY5rta88uNA==}
'@mantine/[email protected].5':
resolution: {integrity: sha512-+3cNisLOUkzF77SjRKkG/V+svZii9WDGvcwlaxFH58b14MNohz1zWbV+WfjZt9qfzrIPPUOedks/z6PMo5rAFA==}
peerDependencies:
react: ^19.2.0
@@ -667,79 +667,79 @@ packages:
'@marijn/[email protected]':
resolution: {integrity: sha512-Wy0V7+SGUjnF9/TkiM1hKVDPj7jKXduPNboMVtHTA8dySMURWqfg/JZ9E2Sq8JgSJmkl7k7Qe9FLeMSrSraWmQ==}
'@napi-rs/canvas-android-arm64@1.0.12':
resolution: {integrity: sha512-Z8hg9BD7ABaZNhdM8O96IrfBaYLM7KzO/YyKA8eU9BDdc5fZJRTWyOhSAyOv59/ari6bOYa+p96h7zN6wbJRDA==}
'@napi-rs/canvas-android-arm64@1.1.0':
resolution: {integrity: sha512-mKrSmRyhWK4q699Q1xthbZIZi7JBvLtsRNnOZAeFaLPOFT1yo8y82aRC2nNZbXTGJXU7fVDONgGQPr0vo3kerw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [android]
'@napi-rs/canvas-darwin-arm64@1.0.12':
resolution: {integrity: sha512-dRtZCi/u1IOZyRjEDCA73PqgWakf5689K2jfv4uPRYGMJvEqtV+Eq7MIQkBJLmdfUPe7AktSiBZRml2pggnjRQ==}
'@napi-rs/canvas-darwin-arm64@1.1.0':
resolution: {integrity: sha512-iqwST4g0oH+x8VCpBIYh+MYokv/mVvkM+v9oJGB0d9A3P2qBh42ogJlVyWq9SpPCrAjS7tplMb1D3OIfxl+utw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
'@napi-rs/canvas-darwin-x64@1.0.12':
resolution: {integrity: sha512-YwvMgK5NBXwPY1AjZGXfPCG3hp/OFGM0Kw+JZHCOR/FYaeSOftaZRyxaDEGkJQSLEUZZIMNJXKCWgZYSzgWZEA==}
'@napi-rs/canvas-darwin-x64@1.1.0':
resolution: {integrity: sha512-jkeA8eVTxDum03LTvc32YJ28F6KB1U0gYwnWMfOAUQZvWWEh/kvONby4iWGJx3+Tw45UqMGMXjtw2GKNVZDhVg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
'@napi-rs/canvas-linux-arm-gnueabihf@1.0.12':
resolution: {integrity: sha512-LlOsZy8qh+qJq1euEvDZqa9muACS1fL1Ag38c7J+axAnA8NeXazMtqmUyKb4NVyft6DqbU/MesEj3C0bAFnv4Q==}
'@napi-rs/canvas-linux-arm-gnueabihf@1.1.0':
resolution: {integrity: sha512-Y4YkKG1ijoqkgUdTEEBNG4k+2BK5bR5jGL6S56YxCXYPwGfUd5nED8/74xyc7z+bpixPasCjSYoP3xYPOIGNxw==}
engines: {node: '>= 10'}
cpu: [arm]
os: [linux]
'@napi-rs/canvas-linux-arm64-gnu@1.0.12':
resolution: {integrity: sha512-nvuqhi85GzaFl/6sid4qf7wwjHuGU6gfIuDyywUb/fB+kp6Fp3h8GyIAKss/QPil3zVO2r8g6O9ah+IOUoBrIw==}
'@napi-rs/canvas-linux-arm64-gnu@1.1.0':
resolution: {integrity: sha512-dE/XthqYkiWcBVtKFlZbUXwAYfDuQGqDWixznipJNmevLGpprNnTVQZyftm1RZJudkIOn2EkzYZDMMETM08Row==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
libc: [glibc]
'@napi-rs/canvas-linux-arm64-musl@1.0.12':
resolution: {integrity: sha512-Bf6+9PoEr9K06P/oyMab7zZOpW90KimbIuNsy/vL0VhZZKsb0B0rCC78cp0jXhK6PIM7v8t6uX1sn7isOZ8KEw==}
'@napi-rs/canvas-linux-arm64-musl@1.1.0':
resolution: {integrity: sha512-DqZ/CMcHlhU56pPjv9AP0h3U7MFQ5LzC1HzMyRMotL+PFsJmZJA/ziApPYVyyz78DaVLhI8t3So3ztqtijbYpg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
libc: [musl]
'@napi-rs/canvas-linux-riscv64-gnu@1.0.12':
resolution: {integrity: sha512-j7VcZduLSRx60nv/wbdyH+fyB5QriWGuO8GrvMDlFlt7GNUKAw5lHAHpcuuQW3QwLOe+3P+3qryzyT3sW5pCqQ==}
'@napi-rs/canvas-linux-riscv64-gnu@1.1.0':
resolution: {integrity: sha512-kJ7m5n2VffxWXM5QGa5lfq8ZN4LdOJEoz3aAJAmIqYvKiZw1gRdXqpucnRXsF6D9nLYiiIlevaAtAclR7c5ilg==}
engines: {node: '>= 10'}
cpu: [riscv64]
os: [linux]
libc: [glibc]
'@napi-rs/canvas-linux-x64-gnu@1.0.12':
resolution: {integrity: sha512-twDb8ZNgoCF8EG6ka+Lk4etU+ea9lv6NiV5ptIf+thz3LgWuHBbt85c+YgL1s05VsHe4WYWK0f+GhR45IuqARg==}
'@napi-rs/canvas-linux-x64-gnu@1.1.0':
resolution: {integrity: sha512-uQ9JuJlRhQdHyttcMWOiwLkfIqkqaB0YFUVe835LUe12THt2b51HXkTItq0fxWT1jdhUPX2ylWZ1walkJyD6GQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
libc: [glibc]
'@napi-rs/canvas-linux-x64-musl@1.0.12':
resolution: {integrity: sha512-mtZbBeNCdGA0MYQxivPmMOp5JMH80LaJLQeEMg7Nne517fvgGb+DWTJTmoE/qUW8YJ4nkiP2vQyr1XVGrH/Ktg==}
'@napi-rs/canvas-linux-x64-musl@1.1.0':
resolution: {integrity: sha512-has4CPPAkkCac/LZ13VAw5p+MJLdaKVoyrhumN/A7uJd6960xYkJNDZgUebyxiha82AFzXx6RV+QJg5qGG079g==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
libc: [musl]
'@napi-rs/canvas-win32-arm64-msvc@1.0.12':
resolution: {integrity: sha512-HgGRuBUkFL8U99ogwUnTz3SmwUu7WKjmj0eOVWRqVZTPPyfWGEIMr+ycb8oDoNZcKM9vSiF1rpy3r+UIqqaKqw==}
'@napi-rs/canvas-win32-arm64-msvc@1.1.0':
resolution: {integrity: sha512-MJnktLKNijmXqdjTughHDZ9TDLZ9uUm2hvFXqaOqn0+w7lphXFnft6bpSgQAc9U1exc20UGIBlzGu9+kiCj9Ag==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
'@napi-rs/canvas-win32-x64-msvc@1.0.12':
resolution: {integrity: sha512-SEEfblIAnYeS4UkeFPp9jw6ZWuHxaTqumUuksMgnMXmPLW8Ofb21uu7cujhw+lk4E9V3aWgGAE9f8g+CdoAU0Q==}
'@napi-rs/canvas-win32-x64-msvc@1.1.0':
resolution: {integrity: sha512-08575bFk7iiadxap4h+JxgGut9xDCHAGum6wh0eInN53zEMImkmEHi5MushX2FOmNO7qRNX7BPiDC5ZYBwHeEg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
'@napi-rs/canvas@1.0.12':
resolution: {integrity: sha512-PSwhRdvizfuiSDlhE4Ld2jl/JqkrbSFFyZO0ycamE6mBpf1H0uUF3Tm8yQaVDeAwCNNDzxjRfrN22KmWLTDwcw==}
'@napi-rs/canvas@1.1.0':
resolution: {integrity: sha512-k+ph/D8H9GS8ZZ48okvHrKeJynkqAA1kMUZRuzRWNlQUDHXngq7oRaWMZBdmSfd9ZhVy9bwNKei/7wMboI/uMg==}
engines: {node: '>= 10'}
'@noble/[email protected]':
@@ -750,8 +750,8 @@ packages:
resolution: {integrity: sha512-X5XaVWZIBCT7HHZGm5I7ZQXDwLG+bGXuSrMQAW+7Zvl87h1kmc1ZB1VSRJcpUfoUrGQp4Fkoxm5kZ+Ms+aW+eA==}
engines: {node: '>= 20.19.0'}
'@oxc-project/[email protected]5.0':
resolution: {integrity: sha512-SeE8JPwW1xs1tHeNycjUtUBdhorRa8o4jlvjwk49R7/Z291i+4DQa7JJIgOm/TaYQZx+QrPQbVJ/9c8dMIZN8Q==}
'@oxc-project/[email protected]6.0':
resolution: {integrity: sha512-1Duyg48TdJNdyhEB8Xn1L36bT9Pv6GUtlKjHxOys8xkaF/rQq3XJE+bAurSK/AgIz5mGFsb77cn9Pb20+WCScw==}
'@preact/[email protected]':
resolution: {integrity: sha512-HNB6HYeYKhQbJ1aKl+YRjrS4+QWHLKX6qKoUsfS/m0vqzsVaEBiZiaKbG/e+NKk2ch5ALQr/ihWaMHxiCuuWHA==}
@@ -767,98 +767,98 @@ packages:
react-redux:
optional: true
'@rolldown/[email protected]5':
resolution: {integrity: sha512-aLcgK9gIJ3YRvrrtfSBbRa27F5WrpiTaPulnFpsHPxpUHgFlSgnU4854MHwoRGEBhfRJDWCS2WQ7lIjskE9Olw==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-ia3DwAs0OsMGS7+IConptSiyk9pEXkOx/AbJ2n/lAGxH3QkWQus1t8d7gnAT38FCU2sQu8lUbeR6AiZFv4JxaA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [android]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-xD7DdZCrbThKuxNg7ooQmvp07ys4J/pnSEMTG3/OdOWl6daC67m/Q4fL78sRHMxTH/N4fGUbYhcPM0MF5WFHkg==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-kx5wBiMB6E7TEvpl2B9gjLU004BkvEm2Dr941BFjx/SontPwSzNuQUIoVKxHHoSjpFIfHMmcguyLOtyn0hObRg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-m2WuQ6r0B4OTYxyPpNLtXaMRbRDUbG8YQV2Q3KTdSSK8Th6KHCnC8jVCJt8bvYeSB5WivkkNbc85mKadaSdOxA==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-qslZrXnKJU4cUpjoAmtAo/KQM9e2IRMlmpig6Zpwj+8KWxW8v+nkAf9216Bsek9lOC1jvg2yCjygCFo2f83msQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-5RtnsHM36nodM9WbMy+zip0LGS/G+y5wro5RHrpOlr4ac24+1zSi9kiV2MP1myZeZ/ifEHfulQcWjnAXzc2C2A==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-FdF+y48ND13eAyM2mQn+85kvAqNlvRWROy2rhgA463X/0Gv4vGtazZtfaF1mRBLscYvtOlh4QnLjOWiFzX69OQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-g3l09pyFqhu+135JKkbkwiKGQmwU5hUMUPJ4VdBADvuqR8d33L6H578rh8m7rtxbdp+VmX/+nzI7nvhSZlzpUQ==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-ddjqFM5e95AgLbUPtKIS7V1KTVlA0RUgCVr5mn+/IEhsdy3pr+Vuj/HZ7nlMN2FyxIwUktOH1LEPIQXO1v9y1Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-nIe3VugI97nGQtspPxDqA4sXMUpeiocKIP/CqpY/u/vgbT+alX+cVxu1C/oVBPKg4feNTmYovE91v4DgXvXNwQ==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-tHdKWbFkFBI687iim3LIyIvyL7j66VvQYkDPss5Stn/qyE2tWkR1YD0dXmXPFKKqT/o5ZEJVsaRsWS2meQwGOA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-iTBjXx+B5QSvgI89lJfmqh4wTh8NabR1YZIIN3hNx4zSG0EVfVqkOvLulNpG4251pbd6/IAmZ/LefVk1Y4rPhw==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-FJiLGAblPBMlBEdbOqw6kW6QcXDWAf/oJu7gYs9ZJZwmg+K+/zjFLxPTIY9izJUzxzc24FHvmseyA0IvJSl17w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [glibc]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-uN26XOnVR7rqQupG3V9oAG2EGGatWjcJHOeDOHUFCh4TBWmP2tHTFoVN13aYbwfm0aHqJAEmcwhAu6sooIjfqQ==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-hrJpblMsrQ58U9veWpbXzkhV5zStunds6HWLprqq1qauvgBr1E6P+24kLj6lSLI9vjRn/RYpjprhkHQPKGWpNg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [musl]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-9nWkcdd+H+XhaA3fQIwpHnKIrfx/PQ6rO0pivr78Og07tXlUlctBBJoEYLPfhTmCR/QxEVdn6uPjHV5SymPhdw==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-qJd/dC6j6CwLG9/s/RP2nb1RZ0GIgj7Ioj7x/SYa3RzjVrlzrmH0fhIOpfvqQDeIsdP0loi+kHaMhJzY1PBIaA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
libc: [glibc]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-Ggh0ciFjLwIusLSLz7LZYEaGdxOAUJXI+Qu5JCbhPJJHEt8vP+IjRATTJheiJsdzzTYgUiHUiw3X1Ea3ZpMBdA==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-Vx7Xg5uUJuNcujJjI70OICaH0EYj80BtOLZTSN7uOYg8QOLlyKnaG0IW7Fn/J0IpJsaKzmDKMhOQv1JBM9m9vg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
libc: [glibc]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-FHg60rS6DBePAYZ9X9F67x+JObFdmgn6tupA1C/a3B+CufFmTD4mX+e8M75tCiAO3foR/6xwVBI0KQiI7sn/rw==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-TNKhgE3uJTsTzatUSSYt0Kgo+Oa2uSlSjz4r1aEIea7HX6ULBym4fAlYUhG1i6pjNf2njfCUAfKwr6C3E9Xg1w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [glibc]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-/cvV/7v5VGz/moiz0XKRj2dE8DzsKyhIu1KpOvJGPjRywg3yscON889UGvAe8zfiJLHup7VLjBduoGWi3HusWQ==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-7chXdpjXZ8qG0+mIxECN3cT9kvhZ3/oZhMX6Pp876P7CDrIy8nJswva6Mq357JR7eYXfuskwZxMeV1SzoZdHrA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [musl]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-MyzC5Hrv/sm+Z7TSGKP/j8001RO2xQm1zOpCNVL4j0cY/VhBZviludA2YFQ7i4lH6ZAXxQm0lcMdBzM+99mE7w==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-Kwjt+7uNTJK5/MDkGWGVO2KQPnj8yAV75dMpfwyHZrJSXWHrniOB0aUEWlVYf3H1hOqFLIStLdM5QXq6bnKmOQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-+PgYiS+AH5omy6L45ZLxybasauJaj3M8buoT83D+nzPmCayXlxUV9hydhciCKVyIg0B/v0BtXPDE1uGqNwCPpg==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-/LH6WfjDRXXJz/p5xl4TmU+jpcnwcxbKEQBW/GZE0JHfN0lGIyTtsUEGaQ/q/GikkGJ2yLKe6pwm7AnEWO8pdw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
'@rolldown/[email protected]5':
resolution: {integrity: sha512-HFZd2QNQYn1JbIi+Hpd7H+r/lkWxcfIu28nirZ6eCn2LafuvmExMlb/P96Sfx5tf7pPArw39IdhmCF8vmV+NhQ==}
'@rolldown/[email protected]6':
resolution: {integrity: sha512-1lv1KvX0Z871zfk7vw+dnXMMnHNyDwMzWG8Kv3HxDXMOhzCX4SHc7HK319fInP0i+0p9D8brkfzL7pJOaGl+tw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
@@ -1129,13 +1129,13 @@ packages:
maplibre-gl:
optional: true
'@vitejs/plugin-react@6.1.2':
resolution: {integrity: sha512-fhJNGUdscQa4HkI0xFxwonWyhnVReCPDbXI7FH7jmzpnVCrFQI7PRrhWecO263610vOrs9tr2Y4xcf8uAdFxbw==}
'@vitejs/plugin-react@6.2.1':
resolution: {integrity: sha512-9KyWCij3r0+qLG3Q62vBmv0VyevmYibAtxaCIVK9o0k6CXgaajZRIe8tpfchQcdZArJ5b/7OrIz4W3b2uxVRDA==}
engines: {node: ^20.19.0 || >=22.12.0}
peerDependencies:
'@rolldown/plugin-babel': ^0.1.7 || ^0.2.0
'@rolldown/plugin-babel': ^0.1.7 || ^0.2.0 || ^0.3.0
babel-plugin-react-compiler: ^1.0.0
oxc-transform-react: ^0.152.0
oxc-transform-react: '>=0.152.0 <0.157.0'
vite: ^8.0.0
peerDependenciesMeta:
'@rolldown/plugin-babel':
@@ -1145,8 +1145,8 @@ packages:
oxc-transform-react:
optional: true
'@vitest/mocker@5.0.5':
resolution: {integrity: sha512-xLL3lkDegJZw+MGoGaCCsFayDZthGgpAtr3Vziyfc4p7xH89K7KRPcRBBh/kEYm0Aqkt5DtTmkYpBtRV/FrHZg==}
'@vitest/mocker@5.1.0':
resolution: {integrity: sha512-5umB9/jlWcqVS6fsrFmv5Gdnpu6wAUio/lEOwAmvB7v+lFo/IW2B9FhAD0p19GCULTgMzLCdUmuCDCnAzWgppQ==}
peerDependencies:
msw: ^2.4.9 || ^3.0.0
vite: ^6.0.0 || ^7.0.0 || ^8.0.0
@@ -1156,8 +1156,8 @@ packages:
vite:
optional: true
'@vitest/spy@5.0.5':
resolution: {integrity: sha512-lwJRExuH417257Q5wv9QYugN9IMJkoxcrKrYxGPQkBzl7wlNpTUxD/5yNX4ESKVUIShKPgkGchYPFMWOOk0wzw==}
'@vitest/spy@5.1.0':
resolution: {integrity: sha512-2DPO5OMHWKrBngC+fCmTQqemNF0gidRhp3lxbBmRhW+M1XJrfgPpqNqWVevXtn2f2ufD5ZaR1B6B641aAlcX5A==}
'@xterm/[email protected]':
resolution: {integrity: sha512-jYcgT6xtVYhnhgxh3QgYDnnNMYTcf8ElbxxFzX0IZo+vabQqSPAjC3c1wJrKB5E19VwQei89QCiZZP86DCPF7g==}
@@ -2075,8 +2075,8 @@ packages:
resolution: {integrity: sha512-U4N8FgzmWxc8k1VH8Kr6lQg18U7Fjvby6wXHVRX/ZZ7IwWbRMgrRbP0Wrb5q5NVinryp4SQampHKdvtecItxUg==}
engines: {node: 20 || >=22}
[email protected]4.0:
resolution: {integrity: sha512-v626F/bcLNvFom6vzztHILtG9tUgXXbgA5AGkd82YkV401+Ko/NHyrWafbPwGofa+6p/EgDJcvEkIwsMH9098w==}
[email protected]9.0:
resolution: {integrity: sha512-UTFECm4yEgkgMN0kfLuxWcmlk+4u02Jrqehgk3ZXRx/Ud68OpP7hjkp67bvkBHmIpMaZCIveF1QDYeupO7XmYQ==}
peerDependencies:
'@types/react': '*'
react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -2322,8 +2322,8 @@ packages:
resolution: {integrity: sha512-mnvGdvOrIvJOBGUEdGkrVXjN8E/VkIJCkf2eS1DH2yv82ORUlLttmDt0rWY38yYZmVwciZwBUvHM20qxBZf40w==}
hasBin: true
pdfjs-dist@6.4.299:
resolution: {integrity: sha512-AVl138zALtfaAPvADulE0PZThbYzCBS79nL4pOSL/6Sm/4AH5A21BD9VHt97OlCuzJuCpmeZtAtkinisF4Vb1g==}
pdfjs-dist@6.5.438:
resolution: {integrity: sha512-vg8Pw1x+AFKy4AMDvhuWl5cOYV8d698UoEANoFFhc79hqXDnZQqnOXoxw3HG907WHOg1JYOvLhP756boddFxpA==}
engines: {node: '>=22.13.0 || >=24'}
[email protected]:
@@ -2347,8 +2347,8 @@ packages:
resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==}
engines: {node: '>= 0.4'}
[email protected]0:
resolution: {integrity: sha512-zkd+e9S1AQHhmaBKye9zlFHWjOwVgqXl1q3ECYy8561K7qxR2cREf/STLskulBFd78k6AOFeA+ff1TtEzk9bAA==}
[email protected]2:
resolution: {integrity: sha512-LJlKCCAUFKOuZxipUdYw1NzIITEsPcgyOG9LkvRJvuKj/bRzbuRY0ARXvL0pWGpsZvn8jku+LMep2eU0seHp8g==}
engines: {node: ^10 || ^12 || >=14}
[email protected]:
@@ -2545,8 +2545,8 @@ packages:
deprecated: Rimraf versions prior to v4 are no longer supported
hasBin: true
[email protected]5:
resolution: {integrity: sha512-6odND+fel5zVw3I4Yc2e69gvguDnX0CAAGiNDZSq4ik5WUcaLrkD2GLuog0XcODbor31hZ5ayEMgVDno+KPV5g==}
[email protected]6:
resolution: {integrity: sha512-bWvlMpFKiTfDKfnK7FC2MPgPeWCf/Kpwsq49ApdW+FQaBZb6O6dZ4MAPbPUjp7hYQrw/RobqCzn64BRrQecGHw==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
@@ -2874,8 +2874,8 @@ packages:
[email protected]:
resolution: {integrity: sha512-SbPDPdDBYp+5MJHhBCAyI7wKM3d5ivekigc2Dk2s7pgbZ9wIgIBYGVw4zGHBml/qTFbexrofXW6Gu4noGxrOwQ==}
[email protected].5:
resolution: {integrity: sha512-z1YpjieJ9g0ebTmQpLBv/oq9E3F9EIlOe+7LahW8SrE3LTiG3udBRUXQOlYXP9b+IC2q2phHeVxj9xGlw34OEQ==}
[email protected].6:
resolution: {integrity: sha512-UI7dK29NnS54Fk+mmo7o+jI6U8Fp7hDl+X5Q1k45WH+d4dSlbLVUETGQ+hfkNgvLQGyoElPj837nZyv4MBc0VA==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
@@ -2917,20 +2917,20 @@ packages:
yaml:
optional: true
vitest@5.0.5:
resolution: {integrity: sha512-cPODOMF8YnkiiYtDdHo6n4wWmBrOBBbOIYH2d33M4l3CdNn72h+qMmO6uXffUN6A5AZFXNND/d+krS9mgkXRfg==}
vitest@5.1.0:
resolution: {integrity: sha512-MzmNFnrwa8v8lF1bLxw3UJ4EREwVOVb75VqJZmUDRjJ6EluK/x9th7qTbaeDk41WxE1GxWqmTXcdsfobfH5sOA==}
engines: {node: ^22.12.0 || ^24.0.0 || >=26.0.0}
hasBin: true
peerDependencies:
'@edge-runtime/vm': '*'
'@opentelemetry/api': ^1.9.0
'@types/node': ^22.0.0 || >=24.0.0
'@vitest/browser-playwright': 5.0.5
'@vitest/browser-preview': 5.0.5
'@vitest/browser-playwright': 5.1.0
'@vitest/browser-preview': 5.1.0
'@vitest/browser-webdriverio': ^5.0.0-beta.5 || >=5.0.0
'@vitest/coverage-istanbul': 5.0.5
'@vitest/coverage-v8': 5.0.5
'@vitest/ui': 5.0.5
'@vitest/coverage-istanbul': 5.1.0
'@vitest/coverage-v8': 5.1.0
'@vitest/ui': 5.1.0
happy-dom: '*'
jsdom: '*'
vite: ^6.4.0 || ^7.0.0 || ^8.0.0
@@ -3028,23 +3028,23 @@ packages:
snapshots:
'@a2ui/[email protected](@a2ui/[email protected]4.0)':
'@a2ui/[email protected](@a2ui/[email protected]5.0)':
dependencies:
'@a2ui/web_core': 0.14.0
'@a2ui/web_core': 0.15.0
dompurify: 3.4.11
markdown-it: 14.3.2
'@a2ui/[email protected]4.0([email protected]([email protected]))([email protected])([email protected])':
'@a2ui/[email protected]5.0([email protected]([email protected]))([email protected])([email protected])':
dependencies:
'@a2ui/markdown-it': 0.2.2(@a2ui/[email protected]4.0)
'@a2ui/web_core': 0.14.0
'@a2ui/markdown-it': 0.2.2(@a2ui/[email protected]5.0)
'@a2ui/web_core': 0.15.0
clsx: 2.1.1
markdown-it: 14.3.2
react: 19.3.1
react-dom: 19.3.1([email protected])
zod: 3.25.76
'@a2ui/[email protected]4.0':
'@a2ui/[email protected]5.0':
dependencies:
'@lit/context': 1.1.6
'@preact/signals-core': 1.14.4
@@ -3081,13 +3081,13 @@ snapshots:
'@babel/[email protected]': {}
'@babel/parser@8.0.8':
'@babel/parser@8.1.0':
dependencies:
'@babel/types': 8.0.8
'@babel/types': 8.1.0
'@babel/[email protected]': {}
'@babel/types@8.0.8':
'@babel/types@8.1.0':
dependencies:
'@babel/helper-string-parser': 8.0.8
'@babel/helper-validator-identifier': 8.0.6
@@ -3488,18 +3488,18 @@ snapshots:
dependencies:
'@lit-labs/ssr-dom-shim': 1.6.0
'@mantine/[email protected].4(@mantine/[email protected].4(@mantine/[email protected].4([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected]))(@mantine/[email protected].4([email protected]))([email protected]([email protected]))([email protected])([email protected](@types/[email protected])([email protected]([email protected]))([email protected])([email protected])([email protected]))':
'@mantine/[email protected].5(@mantine/[email protected].5(@mantine/[email protected].5([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected]))(@mantine/[email protected].5([email protected]))([email protected]([email protected]))([email protected])([email protected](@types/[email protected])([email protected]([email protected]))([email protected])([email protected])([email protected]))':
dependencies:
'@mantine/core': 9.7.4(@mantine/[email protected].4([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
'@mantine/hooks': 9.7.4([email protected])
'@mantine/core': 9.7.5(@mantine/[email protected].5([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
'@mantine/hooks': 9.7.5([email protected])
react: 19.3.1
react-dom: 19.3.1([email protected])
recharts: 3.10.1(@types/[email protected])([email protected]([email protected]))([email protected])([email protected])([email protected])
'@mantine/[email protected].4(@mantine/[email protected].4([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])':
'@mantine/[email protected].5(@mantine/[email protected].5([email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])':
dependencies:
'@floating-ui/react': 0.27.20([email protected]([email protected]))([email protected])
'@mantine/hooks': 9.7.4([email protected])
'@mantine/hooks': 9.7.5([email protected])
clsx: 2.1.1
react: 19.3.1
react-dom: 19.3.1([email protected])
@@ -3509,7 +3509,7 @@ snapshots:
transitivePeerDependencies:
- '@types/react'
'@mantine/[email protected].4([email protected])':
'@mantine/[email protected].5([email protected])':
dependencies:
react: 19.3.1
@@ -3563,52 +3563,52 @@ snapshots:
'@marijn/[email protected]': {}
'@napi-rs/canvas-android-arm64@1.0.12':
'@napi-rs/canvas-android-arm64@1.1.0':
optional: true
'@napi-rs/canvas-darwin-arm64@1.0.12':
'@napi-rs/canvas-darwin-arm64@1.1.0':
optional: true
'@napi-rs/canvas-darwin-x64@1.0.12':
'@napi-rs/canvas-darwin-x64@1.1.0':
optional: true
'@napi-rs/canvas-linux-arm-gnueabihf@1.0.12':
'@napi-rs/canvas-linux-arm-gnueabihf@1.1.0':
optional: true
'@napi-rs/canvas-linux-arm64-gnu@1.0.12':
'@napi-rs/canvas-linux-arm64-gnu@1.1.0':
optional: true
'@napi-rs/canvas-linux-arm64-musl@1.0.12':
'@napi-rs/canvas-linux-arm64-musl@1.1.0':
optional: true
'@napi-rs/canvas-linux-riscv64-gnu@1.0.12':
'@napi-rs/canvas-linux-riscv64-gnu@1.1.0':
optional: true
'@napi-rs/canvas-linux-x64-gnu@1.0.12':
'@napi-rs/canvas-linux-x64-gnu@1.1.0':
optional: true
'@napi-rs/canvas-linux-x64-musl@1.0.12':
'@napi-rs/canvas-linux-x64-musl@1.1.0':
optional: true
'@napi-rs/canvas-win32-arm64-msvc@1.0.12':
'@napi-rs/canvas-win32-arm64-msvc@1.1.0':
optional: true
'@napi-rs/canvas-win32-x64-msvc@1.0.12':
'@napi-rs/canvas-win32-x64-msvc@1.1.0':
optional: true
'@napi-rs/canvas@1.0.12':
'@napi-rs/canvas@1.1.0':
optionalDependencies:
'@napi-rs/canvas-android-arm64': 1.0.12
'@napi-rs/canvas-darwin-arm64': 1.0.12
'@napi-rs/canvas-darwin-x64': 1.0.12
'@napi-rs/canvas-linux-arm-gnueabihf': 1.0.12
'@napi-rs/canvas-linux-arm64-gnu': 1.0.12
'@napi-rs/canvas-linux-arm64-musl': 1.0.12
'@napi-rs/canvas-linux-riscv64-gnu': 1.0.12
'@napi-rs/canvas-linux-x64-gnu': 1.0.12
'@napi-rs/canvas-linux-x64-musl': 1.0.12
'@napi-rs/canvas-win32-arm64-msvc': 1.0.12
'@napi-rs/canvas-win32-x64-msvc': 1.0.12
'@napi-rs/canvas-android-arm64': 1.1.0
'@napi-rs/canvas-darwin-arm64': 1.1.0
'@napi-rs/canvas-darwin-x64': 1.1.0
'@napi-rs/canvas-linux-arm-gnueabihf': 1.1.0
'@napi-rs/canvas-linux-arm64-gnu': 1.1.0
'@napi-rs/canvas-linux-arm64-musl': 1.1.0
'@napi-rs/canvas-linux-riscv64-gnu': 1.1.0
'@napi-rs/canvas-linux-x64-gnu': 1.1.0
'@napi-rs/canvas-linux-x64-musl': 1.1.0
'@napi-rs/canvas-win32-arm64-msvc': 1.1.0
'@napi-rs/canvas-win32-x64-msvc': 1.1.0
optional: true
'@noble/[email protected]':
@@ -3617,7 +3617,7 @@ snapshots:
'@noble/[email protected]': {}
'@oxc-project/[email protected]5.0': {}
'@oxc-project/[email protected]6.0': {}
'@preact/[email protected]': {}
@@ -3633,49 +3633,49 @@ snapshots:
react: 19.3.1
react-redux: 9.3.0(@types/[email protected])([email protected])([email protected])
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]5':
'@rolldown/[email protected]6':
optional: true
'@rolldown/[email protected]': {}
@@ -3867,21 +3867,21 @@ snapshots:
optionalDependencies:
maplibre-gl: 6.16.0
'@vitejs/plugin-react@6.1.2([email protected].5(@types/[email protected])([email protected]))':
'@vitejs/plugin-react@6.2.1([email protected].6(@types/[email protected])([email protected]))':
dependencies:
'@rolldown/pluginutils': 1.0.1
vite: 8.3.5(@types/[email protected])([email protected])
vite: 8.3.6(@types/[email protected])([email protected])
'@vitest/mocker@5.0.5([email protected].5(@types/[email protected])([email protected]))':
'@vitest/mocker@5.1.0([email protected].6(@types/[email protected])([email protected]))':
dependencies:
'@jridgewell/trace-mapping': 0.3.31
'@vitest/spy': 5.0.5
'@vitest/spy': 5.1.0
estree-walker: 3.0.3
magic-string: 1.4.3
optionalDependencies:
vite: 8.3.5(@types/[email protected])([email protected])
vite: 8.3.6(@types/[email protected])([email protected])
'@vitest/spy@5.0.5': {}
'@vitest/spy@5.1.0': {}
'@xterm/[email protected]': {}
@@ -4948,7 +4948,7 @@ snapshots:
[email protected]: {}
[email protected]4.0(@types/[email protected])([email protected]):
[email protected]9.0(@types/[email protected])([email protected]):
dependencies:
react: 19.3.1
optionalDependencies:
@@ -5440,9 +5440,9 @@ snapshots:
dependencies:
resolve-protobuf-schema: 2.1.0
pdfjs-dist@6.4.299:
pdfjs-dist@6.5.438:
optionalDependencies:
'@napi-rs/canvas': 1.0.12
'@napi-rs/canvas': 1.1.0
[email protected]: {}
@@ -5456,7 +5456,7 @@ snapshots:
[email protected]: {}
[email protected]0:
[email protected]2:
dependencies:
nanoid: 3.3.20
picocolors: 1.1.1
@@ -5723,26 +5723,26 @@ snapshots:
dependencies:
glob: 7.2.3
[email protected]5:
[email protected]6:
dependencies:
'@oxc-project/types': 0.155.0
'@oxc-project/types': 0.156.0
'@rolldown/pluginutils': 1.0.1
optionalDependencies:
'@rolldown/binding-android-arm-eabi': 1.2.15
'@rolldown/binding-android-arm64': 1.2.15
'@rolldown/binding-darwin-arm64': 1.2.15
'@rolldown/binding-darwin-x64': 1.2.15
'@rolldown/binding-freebsd-x64': 1.2.15
'@rolldown/binding-linux-arm-gnueabihf': 1.2.15
'@rolldown/binding-linux-arm64-gnu': 1.2.15
'@rolldown/binding-linux-arm64-musl': 1.2.15
'@rolldown/binding-linux-ppc64-gnu': 1.2.15
'@rolldown/binding-linux-s390x-gnu': 1.2.15
'@rolldown/binding-linux-x64-gnu': 1.2.15
'@rolldown/binding-linux-x64-musl': 1.2.15
'@rolldown/binding-openharmony-arm64': 1.2.15
'@rolldown/binding-win32-arm64-msvc': 1.2.15
'@rolldown/binding-win32-x64-msvc': 1.2.15
'@rolldown/binding-android-arm-eabi': 1.2.16
'@rolldown/binding-android-arm64': 1.2.16
'@rolldown/binding-darwin-arm64': 1.2.16
'@rolldown/binding-darwin-x64': 1.2.16
'@rolldown/binding-freebsd-x64': 1.2.16
'@rolldown/binding-linux-arm-gnueabihf': 1.2.16
'@rolldown/binding-linux-arm64-gnu': 1.2.16
'@rolldown/binding-linux-arm64-musl': 1.2.16
'@rolldown/binding-linux-ppc64-gnu': 1.2.16
'@rolldown/binding-linux-s390x-gnu': 1.2.16
'@rolldown/binding-linux-x64-gnu': 1.2.16
'@rolldown/binding-linux-x64-musl': 1.2.16
'@rolldown/binding-openharmony-arm64': 1.2.16
'@rolldown/binding-win32-arm64-msvc': 1.2.16
'@rolldown/binding-win32-x64-msvc': 1.2.16
[email protected]: {}
@@ -6183,22 +6183,22 @@ snapshots:
d3-time: 3.1.0
d3-timer: 3.0.1
[email protected].5(@types/[email protected])([email protected]):
[email protected].6(@types/[email protected])([email protected]):
dependencies:
lightningcss: 1.33.0
picomatch: 4.0.7
postcss: 8.5.30
rolldown: 1.2.15
postcss: 8.5.32
rolldown: 1.2.16
tinyglobby: 0.2.17
optionalDependencies:
'@types/node': 26.6.5
esbuild: 0.28.2
fsevents: 2.3.3
vitest@5.0.5(@types/[email protected])([email protected](@noble/[email protected]))([email protected].5(@types/[email protected])([email protected])):
vitest@5.1.0(@types/[email protected])([email protected](@noble/[email protected]))([email protected].6(@types/[email protected])([email protected])):
dependencies:
'@types/chai': 5.2.3
'@vitest/mocker': 5.0.5([email protected].5(@types/[email protected])([email protected]))
'@vitest/mocker': 5.1.0([email protected].6(@types/[email protected])([email protected]))
chai: 6.3.0
es-module-lexer: 2.3.2
expect-type: 1.4.0
@@ -6209,7 +6209,7 @@ snapshots:
tinybench: 6.2.2
tinyexec: 1.3.1
tinyglobby: 0.2.17
vite: 8.3.5(@types/[email protected])([email protected])
vite: 8.3.6(@types/[email protected])([email protected])
why-is-node-running: 3.2.1
optionalDependencies:
'@types/node': 26.6.5
+1 -1
View File
@@ -37,7 +37,7 @@ require (
modernc.org/libc v1.79.0 // indirect
modernc.org/mathutil v1.7.1 // indirect
modernc.org/memory v1.12.1 // indirect
modernc.org/sqlite v1.61.0 // indirect
modernc.org/sqlite v1.61.1 // indirect
mvdan.cc/sh/v3 v3.14.1 // indirect
)
+2 -2
View File
@@ -100,8 +100,8 @@ modernc.org/opt v0.2.0 h1:tGyef5ApycA7FSEOMraay9SaTk5zmbx7Tu+cJs4QKZg=
modernc.org/opt v0.2.0/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns=
modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w=
modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE=
modernc.org/sqlite v1.61.0 h1:sQi63oLQ9uquAUA4CzOisH35Q3pEszkPBuHM0tFL8CY=
modernc.org/sqlite v1.61.0/go.mod h1:f4gr5tbpx2umklaT/QVtbi/50hNdM+4ng+2zMo8KXJ0=
modernc.org/sqlite v1.61.1 h1:TBEE49wz7VlxS+qXRXMQiPUZYOXHJ4ku83daYv1fe04=
modernc.org/sqlite v1.61.1/go.mod h1:f4gr5tbpx2umklaT/QVtbi/50hNdM+4ng+2zMo8KXJ0=
modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0=
modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A=
modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y=
+5 -5
View File
@@ -11,12 +11,14 @@ require (
charm.land/lipgloss/v2 v2.0.6
git.sr.ht/~jackmordaunt/go-toast/v2 v2.0.3
github.com/BurntSushi/toml v1.6.0
github.com/UserExistsError/conpty v0.1.4
github.com/alecthomas/chroma/v2 v2.27.0
github.com/atotto/clipboard v0.1.4
github.com/aymanbagabas/go-udiff v0.4.1
github.com/bmatcuk/doublestar/v4 v4.10.4
github.com/charmbracelet/colorprofile v0.4.3
github.com/charmbracelet/x/ansi v0.11.9
github.com/creack/pty v1.1.24
github.com/godbus/dbus/v5 v5.2.4
github.com/gorilla/websocket v1.5.3
github.com/joho/godotenv v1.5.1
@@ -27,14 +29,14 @@ require (
github.com/rivo/uniseg v0.4.7
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06
github.com/santhosh-tekuri/jsonschema/v6 v6.0.3
github.com/spf13/pflag v1.0.10
github.com/spf13/pflag v1.1.0
github.com/tdewolff/parse/v2 v2.8.20
github.com/tree-sitter/go-tree-sitter v0.25.0
github.com/tree-sitter/tree-sitter-javascript v0.25.0
github.com/tree-sitter/tree-sitter-python v0.25.0
github.com/tree-sitter/tree-sitter-rust v0.24.2
github.com/tree-sitter/tree-sitter-typescript v0.23.2
github.com/yuin/goldmark v1.8.6
github.com/yuin/goldmark v1.8.7
github.com/zalando/go-keyring v0.2.8
go.starlark.net v0.0.0-20260908191801-89a6a09411d5
go.uber.org/goleak v1.3.0
@@ -46,20 +48,18 @@ require (
golang.org/x/term v0.47.0
golang.org/x/text v0.43.0
gopkg.in/yaml.v3 v3.0.1
modernc.org/sqlite v1.61.0
modernc.org/sqlite v1.61.1
mvdan.cc/sh/v3 v3.14.1
rsc.io/qr v0.2.0
)
require (
github.com/UserExistsError/conpty v0.1.4 // indirect
github.com/charmbracelet/ultraviolet v0.0.0-20261008173134-6b8d4baf91b4 // indirect
github.com/charmbracelet/x/term v0.2.2 // indirect
github.com/charmbracelet/x/termios v0.1.1 // indirect
github.com/charmbracelet/x/windows v0.2.2 // indirect
github.com/clipperhouse/displaywidth v0.11.0 // indirect
github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
github.com/creack/pty v1.1.24 // indirect
github.com/danieljoos/wincred v1.2.3 // indirect
github.com/dlclark/regexp2/v2 v2.2.1 // indirect
github.com/dustin/go-humanize v1.1.0 // indirect
+6 -6
View File
@@ -113,8 +113,8 @@ github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDj
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs=
github.com/santhosh-tekuri/jsonschema/v6 v6.0.3 h1:1EYB5IzjZawrrnELUi78f9fPu57HuXjmddZPjrls/28=
github.com/santhosh-tekuri/jsonschema/v6 v6.0.3/go.mod h1:JXeL+ps8p7/KNMjDQk3TCwPpBy0wYklyWTfbkIzdIFU=
github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/spf13/pflag v1.1.0 h1:6W6MbVUrnMb8PEhjkqwsVLY7ryuzRfFHF4mQd7L94ag=
github.com/spf13/pflag v1.1.0/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
@@ -155,8 +155,8 @@ github.com/tree-sitter/tree-sitter-typescript v0.23.2 h1:/Odvphn18PniVixb9e97X0D
github.com/tree-sitter/tree-sitter-typescript v0.23.2/go.mod h1:zjzMXT/Ulffel2xfOcAkQQkiAkmgnbtPGlFQw/5X4xA=
github.com/xo/terminfo v1.0.0 h1:2ZpYzqWzyyytjk3TP6aJVDhkMAkc99/1xKQdA3TDTBY=
github.com/xo/terminfo v1.0.0/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM=
github.com/yuin/goldmark v1.8.6 h1:d0VcaP1sx9GkFVkoW+KtggpGi2KZ965i14b0+bDQST4=
github.com/yuin/goldmark v1.8.6/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg=
github.com/yuin/goldmark v1.8.7 h1:XT/tNqCIbabh0ln675w4x3dv04kQBKi8NwYqi9IJaxI=
github.com/yuin/goldmark v1.8.7/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg=
github.com/zalando/go-keyring v0.2.8 h1:6sD/Ucpl7jNq10rM2pgqTs0sZ9V3qMrqfIIy5YPccHs=
github.com/zalando/go-keyring v0.2.8/go.mod h1:tsMo+VpRq5NGyKfxoBVjCuMrG47yj8cmakZDO5QGii0=
go.starlark.net v0.0.0-20260908191801-89a6a09411d5 h1:X8HyonnLxrmAbdeMIEGEJVZ/yg6WykLZyAZmpCLSfMA=
@@ -215,8 +215,8 @@ modernc.org/opt v0.2.0 h1:tGyef5ApycA7FSEOMraay9SaTk5zmbx7Tu+cJs4QKZg=
modernc.org/opt v0.2.0/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns=
modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w=
modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE=
modernc.org/sqlite v1.61.0 h1:sQi63oLQ9uquAUA4CzOisH35Q3pEszkPBuHM0tFL8CY=
modernc.org/sqlite v1.61.0/go.mod h1:f4gr5tbpx2umklaT/QVtbi/50hNdM+4ng+2zMo8KXJ0=
modernc.org/sqlite v1.61.1 h1:TBEE49wz7VlxS+qXRXMQiPUZYOXHJ4ku83daYv1fe04=
modernc.org/sqlite v1.61.1/go.mod h1:f4gr5tbpx2umklaT/QVtbi/50hNdM+4ng+2zMo8KXJ0=
modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0=
modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A=
modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y=
+8 -4
View File
@@ -33,6 +33,10 @@ func mcpCommand(args []string) int {
mcpUsage()
return 2
}
if len(args) > 1 && (args[1] == "-h" || args[1] == "--help") {
mcpUsage()
return 0
}
switch args[0] {
case "list", "ls":
if len(args) > 1 {
@@ -41,10 +45,6 @@ func mcpCommand(args []string) int {
}
return mcpList()
case "add":
if len(args) > 1 && (args[1] == "-h" || args[1] == "--help") {
mcpUsage()
return 0
}
return mcpAddCLI(args[1:])
case "get":
return mcpGetCLI(args[1:])
@@ -64,6 +64,10 @@ func mcpCommand(args []string) int {
case "update":
return mcpUpdateCLI(args[1:])
case "import":
if len(args) > 1 {
fmt.Fprintf(os.Stderr, "mcp import: unexpected argument %q\n", args[1])
return 2
}
return mcpImportCLI()
case "browse", "search":
return mcpBrowseCLI(args[1:])
+32
View File
@@ -33,3 +33,35 @@ func TestMCPListAndGetRejectExtraArguments(t *testing.T) {
}
}
}
func TestMCPHelpFlagPrintsUsageForEverySubcommandAndRunsNothing(t *testing.T) {
home := t.TempDir()
t.Setenv("HOME", home)
t.Setenv("USERPROFILE", home)
t.Setenv("REASONIX_HOME", home)
for _, sub := range []string{"list", "ls", "add", "get", "remove", "rm", "enable", "disable", "retry", "connect", "trust", "auth", "authorize", "update", "import", "browse", "search", "install"} {
for _, flag := range []string{"--help", "-h"} {
var code int
stdout, stderr := captureCLIOutput(t, func() {
code = Run([]string{"mcp", sub, flag}, "test")
})
if code != 0 || !strings.Contains(stdout, "reasonix mcp") || stderr != "" || strings.Contains(stdout, "imported") {
t.Errorf("mcp %s %s: exit %d, want 0 with usage only\nstdout:\n%s\nstderr:\n%s", sub, flag, code, stdout, stderr)
}
}
}
}
func TestMCPImportRejectsArgumentsInsteadOfImporting(t *testing.T) {
home := t.TempDir()
t.Setenv("HOME", home)
t.Setenv("USERPROFILE", home)
t.Setenv("REASONIX_HOME", home)
var code int
stdout, stderr := captureCLIOutput(t, func() {
code = Run([]string{"mcp", "import", "--nope"}, "test")
})
if code != 2 || stdout != "" || stderr == "" {
t.Fatalf("mcp import --nope exited %d, want 2 with an error\nstdout:\n%s\nstderr:\n%s", code, stdout, stderr)
}
}
@@ -288,3 +288,26 @@ func TestAProgramOutsideEveryProjectCarriesNoReason(t *testing.T) {
}
}
}
func TestLinuxTerminalFollowsTheMachinesDefaultBeforeAnyFixedOrder(t *testing.T) {
dir := "/home/a/proj"
f := newFake(t, "linux", map[string]string{"PATH": "/usr/bin"})
f.dirs[dir] = true
f.files["/usr/bin/konsole"] = true
f.files["/usr/bin/kitty"] = true
if _, err := f.m.open("terminal", dir); err != nil {
t.Fatal(err)
}
if want := []call{{"/usr/bin/konsole", []string{"--workdir", dir}}}; !reflect.DeepEqual(f.started, want) {
t.Fatalf("without a default-terminal launcher started %v, want %v", f.started, want)
}
f.started = nil
f.files["/usr/bin/xdg-terminal-exec"] = true
if _, err := f.m.open("terminal", dir); err != nil {
t.Fatal(err)
}
if want := []call{{"/usr/bin/xdg-terminal-exec", []string{"--dir=" + dir}}}; !reflect.DeepEqual(f.started, want) {
t.Fatalf("with xdg-terminal-exec started %v, want %v", f.started, want)
}
}
+1
View File
@@ -49,6 +49,7 @@ var targets = []target{
"windows": {{exes: []string{`%LOCALAPPDATA%\Microsoft\WindowsApps\wt.exe`}, lead: []string{"-d"}}},
"darwin": {{apps: []string{"Terminal"}}},
"linux": {
{commands: []string{"xdg-terminal-exec"}, glue: "--dir="},
{commands: []string{"gnome-terminal"}, glue: "--working-directory="},
{commands: []string{"konsole"}, lead: []string{"--workdir"}},
{commands: []string{"xfce4-terminal"}, glue: "--working-directory="},
+35
View File
@@ -0,0 +1,35 @@
本版是修复版:修好 2.58.0 里设置页版面错位、会话行置顶按钮常驻、模型菜单标签折行、思考「展开」被限高等问题,修复 Windows 启动闪控制台窗口、命令行 `mcp --help` 误执行和 Linux 终端选择。
## 变更
- 桌面壳的 Electron 升到 45.2.3(Chromium 156,含上游的安全与稳定性修复)。关联 #15027。
## 修复
- 修复 Linux 上「在终端中打开」不管你把哪个终端设成默认,总是按固定顺序挑一个(比如装了 konsole 就先用它,而不是你的 kitty)。现在如果装了 `xdg-terminal-exec`(桌面规范里读取默认终端的启动器),就由它按你机器声明的默认终端打开;没装的话仍按原来的顺序(#15031)。
- 修复命令行里 `reasonix mcp import --help`(以及 `mcp remove --help` 等其他子命令)不会显示用法,反而把 `--help` 当成参数真的去执行:`import` 会直接改写 MCP 配置。现在所有 `reasonix mcp` 子命令的 `--help` / `-h` 都只打印用法并退出,什么都不改;`mcp import` 带多余参数时会报错而不是照常导入(#15022)。
- 修复 2.58.0 里,开着「会话行快捷按钮」时,侧栏每一行会话都一直显示一个置顶图标(不管有没有置顶):现在这个按钮只在鼠标移上去或键盘聚焦时才出现;已置顶的会话在没悬停时会一直显示一个小图钉,方便一眼看出(#15012)。
- 修复输入框右下角的模型选单里,模型名字较长时,右边的「读图」标签被挤成两行竖着排的问题;现在标签始终在一行里完整显示(#15012)。
- 修复 2.58.0 里设置的「模型」「连接」等单栏页面:顶部「本页包含」目录和下面的标题、卡片没有对齐,卡片左边多出一大块空白(现在三者对齐到同一条左边线)(#15008)。
- 修复从「操作与性能」点开「导航入口」这类二级页时,顶部多出几条空白的横条;现在二级页里只显示它自己(#15009)。
- 修复设置里「思考过程」选成「展开」后,模型思考时仍然只显示最新六行、要等整段思考结束才一下子全部显示的问题:选「展开」时,运行中的思考块现在随内容一直完整展开;「进行中展开」仍是最新六行的滚动窗口(#15013)。
- 修复 Windows 上每次启动 Reasonix Studio 都会先闪一下黑色控制台窗口的问题:启动时用来确认"是不是同一个 Studio"的内核探测,以及启动内核本身,现在都隐藏控制台窗口(#15016)。
---
<!-- lang:en -->
## Changed
- The desktop shell moves to Electron 45.2.3 (Chromium 156, with upstream security and stability fixes). Refs #15027.
## Fixed
- On Linux, "Open in terminal" picked a terminal by a fixed order rather than the one the machine declares as its default (konsole before kitty, for example). When `xdg-terminal-exec` is installed, it now starts the machine's default terminal; without it the old order still applies (#15031).
- `reasonix mcp import --help` (and `--help` on the other `mcp` subcommands) did not print usage and ran the command with `--help` as an argument, so `import` rewrote the MCP configuration. Every `reasonix mcp` subcommand now prints usage for `--help` / `-h` and changes nothing, and `mcp import` refuses extra arguments instead of importing (#15022).
- With "Quick buttons on session rows" turned on, every session row in the sidebar showed a pin icon all the time, pinned or not (2.58.0). The button now appears only when the pointer is over the row or it has keyboard focus, and a pinned session keeps a small pin on the row while nothing is hovered (#15012).
- In the model menu next to the message box, the "reads images" tag was squeezed into two stacked characters beside a long model name; it now stays whole on one line (#15012).
- In Settings, single-column pages such as Model and Connection no longer draw the "On this page" index out of line with the title and cards, which left a wide empty strip beside the cards in 2.58.0; all three now share one left edge (#15008).
- Opening a sub-page such as Navigation entries from Operation and performance no longer leaves a few empty bars above it; the sub-page shows only itself (#15009).
- With Thinking set to "Open", a thought still showed only its latest six lines while the model was thinking and then jumped to the full text when it finished. In "Open" the running thought now grows with its text; "Open while running" keeps the six-line rolling window (#15013).
- On Windows, launching Reasonix Studio no longer flashes a console window first: the kernel probe that tells whether this is the same Studio, and the kernel launch itself, now run with their console hidden (#15016).
@@ -1,12 +0,0 @@
## 修复
- 修复 2.58.0 里,开着「会话行快捷按钮」时,侧栏每一行会话都一直显示一个置顶图标(不管有没有置顶):现在这个按钮只在鼠标移上去或键盘聚焦时才出现;已置顶的会话在没悬停时会一直显示一个小图钉,方便一眼看出(#15012)。
- 修复输入框右下角的模型选单里,模型名字较长时,右边的「读图」标签被挤成两行竖着排的问题;现在标签始终在一行里完整显示(#15012)。
---
<!-- lang:en -->
## Fixed
- With "Quick buttons on session rows" turned on, every session row in the sidebar showed a pin icon all the time, pinned or not (2.58.0). The button now appears only when the pointer is over the row or it has keyboard focus, and a pinned session keeps a small pin on the row while nothing is hovered (#15012).
- In the model menu next to the message box, the "reads images" tag was squeezed into two stacked characters beside a long model name; it now stays whole on one line (#15012).
@@ -1,12 +0,0 @@
## 修复
- 修复 2.58.0 里设置的「模型」「连接」等单栏页面:顶部「本页包含」目录和下面的标题、卡片没有对齐,卡片左边多出一大块空白(现在三者对齐到同一条左边线)(#15008)。
- 修复从「操作与性能」点开「导航入口」这类二级页时,顶部多出几条空白的横条;现在二级页里只显示它自己(#15009)。
---
<!-- lang:en -->
## Fixed
- In Settings, single-column pages such as Model and Connection no longer draw the "On this page" index out of line with the title and cards, which left a wide empty strip beside the cards in 2.58.0; all three now share one left edge (#15008).
- Opening a sub-page such as Navigation entries from Operation and performance no longer leaves a few empty bars above it; the sub-page shows only itself (#15009).
@@ -1,10 +0,0 @@
## 修复
- 修复设置里「思考过程」选成「展开」后,模型思考时仍然只显示最新六行、要等整段思考结束才一下子全部显示的问题:选「展开」时,运行中的思考块现在随内容一直完整展开;「进行中展开」仍是最新六行的滚动窗口(#15013)。
---
<!-- lang:en -->
## Fixed
- With Thinking set to "Open", a thought still showed only its latest six lines while the model was thinking and then jumped to the full text when it finished. In "Open" the running thought now grows with its text; "Open while running" keeps the six-line rolling window (#15013).