yaosanqi137
|
7a7624866f
|
perf(web-db): stop re-encrypting records on read
|
2026-04-08 00:17:40 +08:00 |
|
yaosanqi137
|
e5948cd346
|
feat(ai-config): validate bindings before save
|
2026-04-08 00:09:36 +08:00 |
|
yaosanqi137
|
45b149ad58
|
fix(ai-context): include local tasks in prompt injection
|
2026-04-07 00:56:50 +08:00 |
|
yaosanqi137
|
1564d2dd30
|
feat(web-security): encrypt offline data at rest
|
2026-04-06 16:07:37 +08:00 |
|
yaosanqi137
|
1ea483016f
|
feat(web-ai): persist chat history locally
|
2026-04-06 15:58:00 +08:00 |
|
yaosanqi137
|
13d0d7707a
|
fix(ai-public): hide public pool endpoint from users
|
2026-04-06 14:28:37 +08:00 |
|
yaosanqi137
|
ea23f6264c
|
feat(web-ai): add channel-aware assistant panel
|
2026-04-06 13:51:44 +08:00 |
|
yaosanqi137
|
c98adb3051
|
feat(sync): implement lww conflict and tombstone handling
|
2026-04-06 01:33:57 +08:00 |
|
yaosanqi137
|
c48e16a977
|
feat(web-sync): add background sync worker and retry strategy
|
2026-04-06 01:15:50 +08:00 |
|
yaosanqi137
|
73e0f1312c
|
feat(web-task): persist local drafts and save shortcut
|
2026-04-05 23:59:03 +08:00 |
|
yaosanqi137
|
5d71f3b527
|
feat(web-storage): implement media upload with quota hints
|
2026-04-05 17:30:39 +08:00 |
|
yaosanqi137
|
bb0a09d627
|
feat(web-task): implement inbox and task detail views
|
2026-04-05 17:22:04 +08:00 |
|
yaosanqi137
|
b106d91f8a
|
feat(web-db): add dexie schema for tasks and op logs
|
2026-04-05 17:18:19 +08:00 |
|
yaosanqi137
|
e8dd85ee65
|
feat(web): polish sidebar shell and authentication UI
|
2026-04-05 16:57:52 +08:00 |
|
yaosanqi137
|
95c10eca77
|
feat(web-auth): implement logout with token revoke and session clear
|
2026-04-05 15:05:51 +08:00 |
|
yaosanqi137
|
4b47d3bda7
|
feat(web-auth): add oauth callbacks and session bootstrap
|
2026-04-05 02:54:50 +08:00 |
|
yaosanqi137
|
fe4f7909e3
|
feat(web-auth): implement email code login pages
|
2026-04-05 02:35:55 +08:00 |
|