Commit Graph
249 Commits
Author SHA1 Message Date
digua dd6765baf3 release: v0.32.0 2026-07-18 17:44:15 +08:00
digua 739f8c7522 fix(data): preserve old directory after migration 2026-07-18 16:15:19 +08:00
digua 058c3448ca fix(security): harden desktop app lock
Keep the renderer fail-closed until lock state is known, use native modal dialogs without unmounting business state, and coordinate overlapping dialogs while locked. Isolate desktop E2E data from real user settings and keep startup migration inspection read-only.
2026-07-18 11:49:09 +08:00
digua e7dd418642 fix(security): throttle app lock PIN attempts
Persist failed unlock attempts in the lock flag so restarting the desktop app cannot reset the limit. Block further attempts for 30 seconds after five failures and surface the remaining cooldown on the lock screen.
2026-07-18 11:49:09 +08:00
xyz-225648 7e46e47d3c fix(security): 汇总应用锁安全审计修复
严格校验应用锁 canonical 配置,并通过临时文件原子替换避免写入中断损坏配置。

补充密码、手动锁定、闲置锁定、启动锁定和崩溃恢复回归测试。
2026-07-18 11:49:09 +08:00
xyz-225648andClaude 84b371e73d feat(security): 新增桌面端应用锁
新增 4 位 PIN、手动锁定、启动锁定和系统闲置锁定。

新增主进程与 preload 能力、桌面端设置面板、全局锁屏覆盖层及四语言界面。

Fixes #190

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-18 11:49:09 +08:00
digua 32bd268af4 release: v0.31.3 2026-07-17 11:17:22 +08:00
digua 79e2027b43 fix(ai): initialize and migrate default assistants
Load standalone CLI assistant configs through the shared manager so fresh data directories receive locale defaults. Back up custom assistants that occupy newly reserved default IDs before installing canonical templates.
2026-07-17 00:42:04 +08:00
digua 3dc8fb3157 fix(ai): share default assistants across runtimes 2026-07-17 00:42:04 +08:00
digua e4eb7fa683 feat(ai): improve default assistant experience 2026-07-17 00:42:04 +08:00
digua 6967779650 refactor(analysis): simplify ranking cards 2026-07-16 21:12:21 +08:00
digua c4ad84cb7a fix(api): preserve REST member display name
Normalize member responses from both database and Desktop providers so the public REST endpoint keeps its legacy name field while retaining the newer detailed fields.
2026-07-16 20:09:18 +08:00
digua 47ca785779 fix(electron): resolve temp workspace source alias
Add an exact Vite alias before the workspace catch-all so Electron main-process imports resolve the exported temp-workspace source instead of a nonexistent package-root path.
2026-07-16 20:09:18 +08:00
digua 7d156040f8 fix(runtime): contain and clean temporary workspaces 2026-07-16 20:09:18 +08:00
digua c34f71ed2d chore(workspace): enforce dependency declarations 2026-07-16 20:09:18 +08:00
digua 4b52a7d2f8 refactor(http): organize shared route package 2026-07-16 20:09:18 +08:00
digua bf7004d0e0 refactor(http): share server infrastructure 2026-07-16 20:09:18 +08:00
digua 2d69e836ea refactor(import): share JSON push protocol 2026-07-16 20:09:18 +08:00
digua e563183e62 refactor(http): share system and session routes 2026-07-16 20:09:18 +08:00
digua f949c7a8f9 refactor(http): unify API error model 2026-07-16 20:09:18 +08:00
digua a14de9fc10 refactor(electron): organize desktop runtime modules 2026-07-16 20:09:18 +08:00
digua 45d9813d05 refactor(electron): split desktop startup and window modules 2026-07-16 20:09:18 +08:00
digua c6ae5d4cfa refactor(electron): modularize path management 2026-07-16 20:09:18 +08:00
digua 68e33cd0b0 refactor(electron): formalize runtime import boundaries 2026-07-16 20:09:18 +08:00
digua 5a5fae880a refactor: remove redundant re-export proxies 2026-07-16 20:09:18 +08:00
digua 35c696b1a4 release: v0.31.2 2026-07-16 11:30:01 +08:00
digua 15d0158a40 feat(members): align member table interactions 2026-07-16 11:23:39 +08:00
digua e2d4ef9831 chore(deps): upgrade TypeScript and Nuxt UI 2026-07-15 23:23:52 +08:00
digua 61cfc0a51e release: v0.31.1 2026-07-15 20:32:19 +08:00
digua 82710e2d5a fix(import): keep dry-run database access read-only
Use non-migrating session enumeration during import analysis so previews cannot mutate legacy schemas or raise data-directory compatibility gates.
2026-07-14 11:32:22 +08:00
digua 53406f4c6d feat(import): add dry-run preview
Share auto-import planning between preview and write paths, expose a machine-readable CLI result envelope, and preserve explicit parser options during analysis.
2026-07-14 11:32:22 +08:00
digua 16ee4d8348 refactor(ai): unify desktop tool adapters 2026-07-13 20:42:27 +08:00
digua 9123bd8476 refactor(import): simplify shared push import analysis 2026-07-13 18:33:23 +08:00
digua 859b4a79ed fix(import): align JSON dry-run with push semantics
Route Desktop JSON dry-runs through a shared read-only push analyzer so validation, deduplication, and member inference match actual writes. Keep JSONL on the file analyzer path and cover new and incremental predictions without database mutations.
2026-07-13 17:56:47 +08:00
digua db26950d4b fix(import): harden desktop shared imports
Use the long-running worker timeout and refresh Desktop caches after successful push imports.

Align auto-created member metadata and counts across initial and incremental imports, exclude SYSTEM from member updates, and keep existing-session writes validated and atomic.
2026-07-13 17:56:47 +08:00
digua e8f7ed9e4e refactor(import): route desktop imports through shared services 2026-07-13 17:56:47 +08:00
digua 8f8a19f96e fix(import): align shared push import semantics 2026-07-13 17:56:47 +08:00
digua a5e11d2fc8 release: v0.31.0 2026-07-13 10:17:25 +08:00
digua 5be001fea5 fix(sync): preserve pull cursor on lock conflict
Propagate retryable import lock conflicts through CLI and Desktop pull adapters so scheduled pulls defer without advancing past unimported messages.
2026-07-13 01:01:42 +08:00
digua 8bee0fab4a fix(api): align new import dry runs
Reuse create-path validation and deduplication during new-session analysis so dry-run counts match the subsequent import.
2026-07-13 01:01:42 +08:00
digua 381cfd05fd fix(api): preserve import result contracts
Map data-directory import lock conflicts to HTTP 409 across REST import paths and report stream duplicate counts from the dedicated diagnostics field.
2026-07-13 01:01:42 +08:00
digua 61d42b2500 fix(import): harden automatic incremental imports 2026-07-13 01:01:42 +08:00
digua 6dc35722c0 fix(import): disambiguate ChatLab reimports 2026-07-13 01:01:42 +08:00
digua 5823797256 feat(web): enable automatic incremental imports 2026-07-13 01:01:42 +08:00
digua 3e6f036826 feat(electron): enable automatic incremental imports 2026-07-13 01:01:42 +08:00
digua 0606d5f5f7 feat(cli): enable automatic incremental imports 2026-07-13 01:01:42 +08:00
digua e1288c3cc7 fix(insight): invalidate snapshots on session deletion
Remove persisted annual summary snapshots whenever a session is deleted through shared or desktop cleanup paths. Drop cached in-memory snapshots when their backing files disappear so stale responses cannot expose deleted session data.
2026-07-12 15:29:09 +08:00
digua d7692b5bfc feat(runtime): add global insight service and worker 2026-07-12 15:29:09 +08:00
digua fba575660d release: v0.30.2 2026-07-10 20:26:40 +08:00
digua e00c9a4503 fix(release): package Windows sqlite binding 2026-07-10 20:25:53 +08:00