From 6bdc76cd6e56ee63739019cc138e9330c0be9eb6 Mon Sep 17 00:00:00 2001 From: fylorn <249551762+fylorn@users.noreply.github.com> Date: Sun, 4 Oct 2026 01:17:48 +0800 Subject: [PATCH 1/2] chore: 2026.10.2 Co-Authored-By: Claude Opus 5.5 --- package.json | 2 +- release-notes/2026.10.2.md | 29 +++++++++++++++++++++++++++++ src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- src-tauri/tauri.conf.json | 2 +- 5 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 release-notes/2026.10.2.md diff --git a/package.json b/package.json index 5cf1cdf0..dde7814b 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.1", + "version": "2026.10.2", "type": "module", "packageManager": "pnpm@11.13.0", "scripts": { diff --git a/release-notes/2026.10.2.md b/release-notes/2026.10.2.md new file mode 100644 index 00000000..c26cc1f4 --- /dev/null +++ b/release-notes/2026.10.2.md @@ -0,0 +1,29 @@ +**Upgrade notes:** +- The bundled core is now 0.60.0, which speaks control-plane protocol 36. A remote server has to run core 0.60.0 too: this version does not connect to 0.59.0, and 2026.10.1 and earlier do not connect to 0.60.0. +- Request history is kept. +- Auxiliary requests have two modes now (see *Auxiliary requests*). If a kind under Routing › Auxiliary was ever set to Pass through or Use routing, `config.yaml` holds `passthrough` or `route` for it under `client_probes:`. Core does not start with either, and the app runs in safe mode until each one is changed to `forward` or its line is deleted. Kinds that were never changed are not in the file and are not affected. +- Release files are now named `ThinkWatch-Lite---…`. Installed copies keep updating as before. + +**Auxiliary requests:** +- Each kind of auxiliary request is either answered locally or forwarded. Forward replaces Pass through and Use routing, which both went through the routing rules and differed only in whether a rule's Auxiliary request condition could match. +- A forwarded auxiliary request goes through the routing rules like any other request, and a rule's Auxiliary request condition matches it with no further setting, for example to send titles to a lower-cost upstream. +- The rule dialog points out when the condition names a kind that is answered locally, since such requests never reach routing. +- A dry run of a forwarded auxiliary request evaluates the rules. + +**Windows portable build:** +- One zip each for x64 and ARM64. Extract it and run "ThinkWatch Lite.exe"; no administrator rights are needed. +- Data lives in a data folder next to the program, separate from the installed copy. +- Updates install with one click and no elevation prompt. + +**Windows:** +- Only one ThinkWatch Lite runs at a time. Opening a copy from another location says so and offers to stop the running one and start this one instead; the running one waits for requests in progress before it quits. +- System notifications no longer depend on a Start menu shortcut; thinkwatch:// links and launch at login always point at the running copy. +- Uninstalling from Windows Settings first restores taken-over clients. Ticking "Also delete data" now deletes the configuration, API keys and request history, and an incomplete cleanup is reported. +- Clients connected by another ThinkWatch Lite are marked as such and are restored from that copy. +- A missing WebView2 runtime is reported with a download link. +- The interface and system dialogs follow per-monitor scaling and stay sharp on scaled displays. + +**Fixes:** +- Running an older version after a newer one no longer clears the request history: the older version records nothing for that run and leaves the history for the newer one. + +The [Features](https://thinkwat.ch/docs/lite/features) page describes each of these in full. diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 639986c7..5519ab35 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -4756,7 +4756,7 @@ dependencies = [ [[package]] name = "thinkwatch-lite" -version = "2026.10.1" +version = "2026.10.2" dependencies = [ "anyhow", "block2", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 2f84a093..17d22304 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thinkwatch-lite" -version = "2026.10.1" +version = "2026.10.2" 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 fb165513..40e86c99 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.1", + "version": "2026.10.2", "identifier": "app.thinkwatch.lite", "build": { "beforeDevCommand": "pnpm dev", From 183e321e637f0c06940ac16a972066a3660637f8 Mon Sep 17 00:00:00 2001 From: fylorn <249551762+fylorn@users.noreply.github.com> Date: Sun, 4 Oct 2026 01:24:00 +0800 Subject: [PATCH 2/2] Release notes: updates install after a single confirmation Co-Authored-By: Claude Opus 5.5 --- release-notes/2026.10.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release-notes/2026.10.2.md b/release-notes/2026.10.2.md index c26cc1f4..d1cb9af3 100644 --- a/release-notes/2026.10.2.md +++ b/release-notes/2026.10.2.md @@ -13,7 +13,7 @@ **Windows portable build:** - One zip each for x64 and ARM64. Extract it and run "ThinkWatch Lite.exe"; no administrator rights are needed. - Data lives in a data folder next to the program, separate from the installed copy. -- Updates install with one click and no elevation prompt. +- Updates install after a single confirmation, without an elevation prompt. **Windows:** - Only one ThinkWatch Lite runs at a time. Opening a copy from another location says so and offers to stop the running one and start this one instead; the running one waits for requests in progress before it quits.