From 6def5be36146aa95e3a604034f9419d18811d99a Mon Sep 17 00:00:00 2001 From: fylorn <249551762+fylorn@users.noreply.github.com> Date: Thu, 8 Oct 2026 23:47:47 +0800 Subject: [PATCH] chore: 2026.10.9 Co-Authored-By: Claude Opus 5.5 --- package.json | 2 +- release-notes/2026.10.9.md | 28 ++++++++++++++++++++++++++++ src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- src-tauri/tauri.conf.json | 2 +- 5 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 release-notes/2026.10.9.md diff --git a/package.json b/package.json index 4547f74f..79e3a7ac 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "thinkwatch-lite", "private": true, "description": "Desktop app for a local AI API gateway on macOS, Windows and Linux", - "version": "2026.10.8", + "version": "2026.10.9", "type": "module", "packageManager": "pnpm@11.13.0", "scripts": { diff --git a/release-notes/2026.10.9.md b/release-notes/2026.10.9.md new file mode 100644 index 00000000..0be13765 --- /dev/null +++ b/release-notes/2026.10.9.md @@ -0,0 +1,28 @@ +**Upgrade notes:** +- The bundled core is now 0.65.0, with control-plane protocol 41. A remote server must be upgraded to core 0.65.0 together with the app: this version does not connect to a server on 0.64.x, and 2026.10.8 and earlier do not connect to 0.65.0. +- Request history is kept. The first start adds indexes to the request store, which takes about a second on a large history. + +**Menu bar and tray menu:** +- **Open ThinkWatch Lite** is always the first item, whatever else the menu shows. +- A **Today** block replaces the header and the three large numbers: today's tokens in large type, requests, failures and cost below them, and a small chart of tokens per hour. Its top line shows the gateway state and the generation speed, and the server's name when connected to a remote core. +- One row per quota window the upstream reports, with when it resets. +- **Copy Gateway Address** shows the address it copies. **Install Version** is the first item of its group when a new version is available. + +**Faster:** +- The Traffic page opens in a fraction of the time with thousands of requests in the list, uses far less memory, and stays smooth while requests arrive. +- The launch screen appears after a small part of the app has loaded; pages load as they are opened. +- Live updates and the Overview chart use less CPU, and nothing is redrawn while the window is hidden or minimised. +- The gateway processes large requests about four times faster, and no longer pauses other answers that are streaming at the same time. +- The conversation view of a long session fetches only the new turns instead of the whole conversation each time. +- On macOS, watching the clients' configuration files no longer wakes the app for every file change in the home folder. +- Over a remote connection, the Overview's figures are fetched in parallel. + +**Fixes:** +- Forwarded request bodies keep the client's bytes and key order. Removing `metadata.user_id`, and a routing rule or alias changing the model, output limit or thinking, used to rewrite the body with every object's keys in alphabetical order. +- When one day's stored payloads exceeded the size cap, the hourly clean-up deleted that whole day, including the session being viewed. The current day now loses only its oldest payloads. +- Sessions older than the newest 500 open again. +- The **Configuration file** and **Version history** dialogs show an error with **Retry** when they cannot load, instead of loading forever. +- If the menu bar item, tray icon or a window cannot be created at startup, the app reports it as a notice and keeps the gateway running, instead of quitting. +- The routing dry run shows each round-robin member's share as the gateway computes it; members sitting the round out show none. +- On Windows, the ring around an in-progress request's status dot now animates. +- Numbers are written the same way everywhere: latency as `1182ms`, dates as `10-08`, token counts as `1.5k`. diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 2a807ed0..feb2ee4e 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -4766,7 +4766,7 @@ dependencies = [ [[package]] name = "thinkwatch-lite" -version = "2026.10.8" +version = "2026.10.9" dependencies = [ "anyhow", "block2", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index ec48785e..8611162c 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thinkwatch-lite" -version = "2026.10.8" +version = "2026.10.9" edition = "2024" # **这个数决定依赖能升到哪一版。**edition 2024 的解析器只挑声明的 Rust # 版本编得动的依赖:写 1.85 的时候,`cargo update` 一直停在旧的 time 和 diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 9eaf3539..09ecbc2a 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "ThinkWatch Lite", - "version": "2026.10.8", + "version": "2026.10.9", "identifier": "app.thinkwatch.lite", "build": { "beforeDevCommand": "pnpm dev",