yaosanqi137
|
13d0d7707a
|
fix(ai-public): hide public pool endpoint from users
|
2026-04-06 14:28:37 +08:00 |
|
yaosanqi137
|
6ae9f49b4c
|
refactor(web-ai): split chat and settings pages
|
2026-04-06 14:26:18 +08:00 |
|
yaosanqi137
|
ea23f6264c
|
feat(web-ai): add channel-aware assistant panel
|
2026-04-06 13:51:44 +08:00 |
|
yaosanqi137
|
019436507e
|
perf(web-toolbar): reduce rich editor toolbar update cost
|
2026-04-06 02:05:42 +08:00 |
|
yaosanqi137
|
63298d6827
|
perf(web-page): memoize todo panels to limit rerenders
|
2026-04-06 01:55:18 +08:00 |
|
yaosanqi137
|
3a7c67bb88
|
perf(web-editor): decouple rich editor state from page render
|
2026-04-06 01:50:33 +08:00 |
|
yaosanqi137
|
5d88ac783b
|
perf(web-editor): reduce task content typing lag
|
2026-04-06 01:38:54 +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
|
8dff555db4
|
fix(web-task): localize task status labels
|
2026-04-06 00:26:33 +08:00 |
|
yaosanqi137
|
a2d1840e47
|
feat(web-task): animate top feedback banner
|
2026-04-06 00:11:22 +08:00 |
|
yaosanqi137
|
73e0f1312c
|
feat(web-task): persist local drafts and save shortcut
|
2026-04-05 23:59:03 +08:00 |
|
yaosanqi137
|
8ef7c75948
|
feat(web-editor): add resizable media interactions
|
2026-04-05 23:58:39 +08:00 |
|
yaosanqi137
|
fab72906c9
|
fix(web-editor): avoid file picker on editor focus
|
2026-04-05 23:21:45 +08:00 |
|
yaosanqi137
|
5d71f3b527
|
feat(web-storage): implement media upload with quota hints
|
2026-04-05 17:30:39 +08:00 |
|
yaosanqi137
|
60dbd1be9d
|
feat(web-editor): integrate tiptap media extensions
|
2026-04-05 17:26:36 +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
|
aff645bc5d
|
feat(web): render auth pages without app shell
|
2026-04-05 17:09:17 +08:00 |
|
yaosanqi137
|
e8dd85ee65
|
feat(web): polish sidebar shell and authentication UI
|
2026-04-05 16:57:52 +08:00 |
|
yaosanqi137
|
eeee62c4e8
|
feat(web-ui): use project icon as favicon
|
2026-04-05 15:47:32 +08:00 |
|
yaosanqi137
|
95c10eca77
|
feat(web-auth): implement logout with token revoke and session clear
|
2026-04-05 15:05:51 +08:00 |
|
yaosanqi137
|
25857abf26
|
docs(web): localize web README to Chinese
|
2026-04-05 14:57:27 +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 |
|
yaosanqi137
|
579d63d39d
|
feat(web): bootstrap react vite tailwind shadcn stack
|
2026-04-05 02:31:18 +08:00 |
|
yaosanqi137
|
31dbb70bfb
|
chore(repo): scaffold apps and packages directories
|
2026-04-04 12:00:42 +08:00 |
|