Commit Graph
23 Commits
Author SHA1 Message Date
YI QI LIMandabraxas914 efb3bc6ad1 feat(desktop): compiled React Desktop 2.0 v0.2.1 renderer update (#787)
* fix(desktop): expose explicit backup capabilities

* fix(desktop): align titlebar controls with native metrics

* release(desktop): prepare portable v0.2.1

* build(desktop): rebuild compiled dist from source 4a67226

Rebuild the compiled-only React Desktop 2.0 renderer from abraxas914/GenericAgent
main @4a67226, carrying the v0.2.1 iterations that PR #784 was closed to await:
live turn-timer persistence across session switch, Mixin image-to-path fallback,
folder drag-drop, per-turn duration, and image-thumbnail repair.

- dist/**: regenerated 98 manifest assets + entry HTML
- build-provenance.json: sourceCommit -> 4a67226, manifest sha256 recomputed
- verify-compiled-dist.mjs: expectedSourceCommit -> 4a67226
- dist/README.md: provenance source commit updated
- desktop_bridge.py, test_bridge_origin_security.py: synced to 4a67226
- core (agentmain.py, llmcore*, src/**, public/**) remains zero-diff vs upstream

---------

Co-authored-by: abraxas914 <abraxas345589144233@outlook.com>
2026-08-30 14:21:51 +08:00
yiqi-017 bb4b2ca974 feat(desktop): refresh compiled React Desktop 2.0 distribution
Rebuild the compiled renderer from abraxas914/GenericAgent source
commit 9fe5d69b85cfad8778ace84b6f69bc75f9e0d392, refreshing:

- New-chat default model tag: the selected-model badge in Settings
  and the composer now read '新会话默认' / 'New chat default'.
- Model selectors display the configured profile name (备注名) so the
  same model served by different providers is distinguishable.
- desktop_bridge: syncing mixin llm_nos references when a profile is
  renamed, preventing orphan references in the mixin config.
- Release publisher sets GH_REPO so 'gh release create' resolves the
  target repository without checking out source, satisfying the
  publisher security contract while fixing the prerelease step.

Provenance and verifier updated to the new source commit and the
LF-normalized content manifest (98 generated assets).
2026-08-25 18:00:43 +08:00
abraxas914 dd99c5c3ac refactor(desktop): streamline release qualification tooling 2026-08-24 01:07:43 +08:00
abraxas914andyiqi-017 6cc27a78c8 build(desktop): publish compiled React Desktop 2.0 distribution
Co-authored-by: yiqi-017 <22300246009@m.fudan.edu.cn>
2026-08-23 17:18:25 +08:00
dd3xp 3a30cda63c release desktop portable v0.1.6 2026-07-14 00:54:32 -04:00
yanghang 4799271943 fix(desktop): restore corrupted zh i18n, surface prepare errors, bundle UCRT
- i18n.js: the zh block (loading.*/setup.*) shipped with every Chinese
  character mangled into literal '?' (a non-UTF-8 save when the file was
  first added in 1bcb41d). Restore all 22 keys from the intact en block.
- Surface first-run prepare failures instead of silently opening the setup
  window: store the error, expose it via get_prepare_error, show it in
  fallback.html, and write runtime/prepare_error.log.
- Windows CI: deploy app-local UCRT (api-ms-win-crt-*.dll + ucrtbase.dll
  from the SDK redist) next to the embedded python so python.exe loads on
  images lacking an in-box Universal CRT. Pure SDK source, hard-fail if absent.
2026-07-07 15:28:30 +08:00
yanghang 60dcf52e86 ci(desktop): bump upload-artifact v5 -> v7 (node24)
upload-artifact@v5 still targets node20; v6+ moved to node24. v7 is the
latest. This clears the last remaining Node.js 20 deprecation warning.
2026-06-26 20:39:43 +08:00
yanghang dc71a110ee ci(desktop): bump checkout/setup-node/upload-artifact to v5
Clears the Node.js 20 deprecation warnings on the desktop packaging
workflow. No download-artifact in use, so upload-artifact v5 has no
version-mismatch counterpart; release path uses gh CLI.
2026-06-26 20:34:34 +08:00
yanghang c471036839 refactor(desktop): move desktop_release/ → frontends/desktop/packaging/
Co-locate desktop packaging scripts with the Tauri app, declutter repo
root. Drop legacy manual-install flow (install.bat/start_windows.bat/
README_WINDOWS.md) and unused apps/ placeholder tree. Update CI workflow
paths and TODO references accordingly.
2026-06-26 20:12:46 +08:00
yanghang 29d9c2d46a chore(release): omit macOS internal checksum asset 2026-06-22 18:51:50 +08:00
yanghang c4f24fca3b chore(release): use English filenames in packages 2026-06-22 18:32:56 +08:00
yanghang 878c959dfb chore(release): add macOS DMG helper and install guide 2026-06-22 18:31:08 +08:00
yanghang 0283af64e6 chore(release): publish macOS DMG only and update install notes 2026-06-22 18:17:48 +08:00
yanghang a1e44957e4 feat(desktop): standard macOS DMG and themed confirm dialogs 2026-06-22 17:23:33 +08:00
yanghang a258c75bcc fix(desktop): replace native dialogs and add mac dmg artifact 2026-06-22 16:35:44 +08:00
yanghang c2b5f39633 fix(ci): release notes 改用 --notes-file,绕开 macOS runner(bash 3.2)命令替换+引号 bug
$(cat <<'EOF' ... platform's ... EOF) 在 bash 3.2 会把撇号当未闭合引号报
'unexpected EOF'(Win/Linux 的 bash5 无此问题),导致 macOS publish 步骤失败、
release 缺 mac 包。改成写临时文件 + gh release ... --notes-file,彻底规避。
2026-06-22 03:42:51 +08:00
yanghang 9353116bc0 fix(desktop): Linux 快捷方式带图标 — .desktop Icon 指向包内 GenericAgent.png
- lib.rs: Linux ensure_desktop_shortcut 的 Icon= 改为包内 GenericAgent.png
  (Icon 需真实图片文件,原来指 AppImage 路径不显示图标),缺失时回退
  主题图标 application-x-executable
- CI: 将 src-tauri/icons/icon.png 作为 GenericAgent.png 打进 Linux 包顶层
2026-06-22 02:34:18 +08:00
yanghang eff7c83b8b feat(desktop): Linux/mac 桌面快捷方式 + 便携卸载器(对齐 Windows)
- lib.rs: ensure_desktop_shortcut 增加 Linux(写 .desktop 到 ~/Desktop 与
  ~/.local/share/applications)与 macOS(Desktop 软链 .app)实现;
  shortcut_should_ask/decide/maybe_setup_shortcut 放开到非 Windows
- 新增 desktop_release/scripts/linux/uninstall.sh 与 macos/uninstall.command:
  停 bundle 自有进程 → 删本 bundle 的快捷方式 → 删设置 → 清 WebKit/WKWebView
  数据 → 删 bundle 目录(作用域限定本 bundle,不动其他安装)
- CI: 将卸载脚本打入 Linux/mac 便携包顶层
- 已在 Ubuntu 24.04 真机验证: cargo build 通过、uninstall.sh 隔离测试通过
2026-06-22 02:00:14 +08:00
yiqi-017 15c59dd1e7 feat(desktop): add portable uninstaller for Windows
Ship uninstall.bat (top-level, double-click entry) + uninstall_windows.ps1
(worker under runtime/) in the Windows portable bundle. The uninstaller:
- gracefully stops the bridge, then force-kills bundle-owned processes on
  ports 14168/8900 (filtered by exe path so other bundles are untouched)
- removes the desktop shortcut only when it targets this bundle
- removes ~/.ga_desktop_settings.json
- schedules deletion of the bundle folder after exit (detached cmd)

Wire both scripts into the release-package workflow.
2026-06-21 22:48:26 +08:00
yanghang 5cb19fedcc ci: race-safe unified release (retry create until it exists before upload) 2026-06-19 04:14:28 +08:00
yanghang 34296b754e feat(desktop): relocatable portable — install deps into embedded python (no venv, no editable -e), prepared-marker; bilingual release notes 2026-06-19 04:05:02 +08:00
yanghang 0a250aa9ba ci(linux): avoid SIGPIPE write error when listing tarball contents under pipefail 2026-06-19 03:37:35 +08:00
yanghang 54d02806ad ci: consolidate desktop release into one workflow (portable-only, unified naming + bilingual txt, tag-triggered unified release) 2026-06-19 03:23:16 +08:00