Commit Graph
246 Commits
Author SHA1 Message Date
digua 344bd0b12f refactor(import): share parsed message writer 2026-07-19 21:27:23 +08:00
digua e5ec60aaaf refactor(format): centralize ChatLab format version 2026-07-19 15:16:29 +08:00
digua 5d30254c17 fix(parser): preserve JSONL member metadata
Emit explicit members before the first streamed message batch so merge previews do not retain metadata-free member stubs. Add parser ordering and temporary database regression coverage.
2026-07-18 17:38:12 +08:00
digua 4518a3aaa9 docs(data): explain skipped-file cleanup policy
Clarify that skipped files can leave unique data on either side, so cleanup records intentionally remain unchanged and deletion performs the final active-path safety check.
2026-07-18 16:15:19 +08:00
digua d4c837b367 fix(data): keep retry sources out of cleanup
A retried migration can skip stale files already copied to the target. Keep the source directory outside manual cleanup whenever any files were skipped so newer source data cannot be deleted.
2026-07-18 16:15:19 +08:00
digua 1f3069f359 fix(data): harden migration cleanup flow
Show the pending cleanup notice in CLI Web after initialization while excluding the browser-only runtime.\n\nStub config persistence in the cleanup test so it cannot overwrite the user's real data directory settings.
2026-07-18 16:15:19 +08:00
digua 739f8c7522 fix(data): preserve old directory after migration 2026-07-18 16:15:19 +08:00
digua e6059ffd75 fix(ai): enable all tools for default assistants 2026-07-17 10:29:59 +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 c73d18208e feat(ai): safely upgrade customized default assistants 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 c64c7b29a0 docs(runtime): clarify temp workspace ownership
Document the single-OS-user product boundary beside the default private temp root so future reviews do not treat unsupported multi-UID sharing as a regression.
2026-07-16 20:09:18 +08:00
digua 0227a8cc6b fix(migration): make Electron path test cross-platform
Resolve Electron userData fixtures for macOS, Windows, and Linux so the migration regression test exercises the path selected by the current runner.
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 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 fdd2a943f2 feat(members): support batch deletion 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 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 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 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 ec822cb1b0 fix(import): deduplicate mixed message identities
Track unmatched fallback-only keys separately so messages with and without platform IDs bridge safely without collapsing distinct stable IDs.
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 0606d5f5f7 feat(cli): enable automatic incremental imports 2026-07-13 01:01:42 +08:00
digua 6cf4c063fc feat(import): orchestrate automatic imports 2026-07-13 01:01:42 +08:00
digua 27f46dfcb6 feat(import): add automatic session matcher 2026-07-13 01:01:42 +08:00
digua a9a1557867 fix(import): preserve ChatLab owner and aliases
Thread ownerId and member aliases through the TS and native parsers. Persist aliases across full and incremental imports so exported ChatLab JSON retains user identity metadata.
2026-07-12 21:27:39 +08:00
digua 96235915b8 fix(export): generate importable ChatLab JSON 2026-07-12 21:27:39 +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 b15f38c4a5 fix(insight): address annual summary review findings 2026-07-12 15:29:09 +08:00
digua 1713e0d577 fix(insight): remove session facts on deletion 2026-07-12 15:29:09 +08:00
digua f198b41bdb feat(settings): manage session owner identities 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 81be26b68e feat(runtime): add global insight cache pipeline 2026-07-12 15:29:09 +08:00
digua 740c410d7b refactor(core): centralize contact identity resolution 2026-07-12 15:29:09 +08:00
digua 2aeb912dec test(ai): type legacy auth profile fixtures 2026-07-12 01:22:43 +08:00
diguaandCursor 74971c624a fix(semantic-index): only clamp sender names when over shared budget
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 15:11:51 +08:00
digua b2f20a15bd fix(semantic-index): harden embedding input guards 2026-07-10 15:11:51 +08:00
digua dd40fc6502 feat(semantic-index): add local model download sources 2026-07-10 15:11:51 +08:00