Commit Graph

262 Commits

Author SHA1 Message Date
m4 26a477464e docs: first-start admin setup design spec 2026-08-12 22:12:15 +08:00
m4 f31bb7203f fix(i18n): full-width colon in zh configTransfer failed copy
CI / macos-latest / Node 20 (push) Has been cancelled
CI / ubuntu-latest / Node 20 (push) Has been cancelled
CI / windows-latest / Node 20 (push) Has been cancelled
2026-08-12 21:29:59 +08:00
m4 94b1045957 feat(components): show secrets warning in image models editor 2026-08-12 21:13:20 +08:00
m4 ee84ae8bf2 feat(components): wire config export/import into registry and image editors 2026-08-12 21:02:20 +08:00
m4 784a14351d feat(components): add shared ConfigImportDialog for config import 2026-08-12 20:49:12 +08:00
m4 3c3a327588 fix(i18n): escape literal braces in configTransfer pastePlaceholder
The message '{"kind": "evoscientist.model-registry", ...}' is malformed
ICU: intl-messageformat throws MALFORMED_ARGUMENT at render time and
next-intl's type inference extracts a garbage argument name, so t()
neither typechecks nor renders. Wrap the braces in apostrophe quotes.
2026-08-12 20:49:00 +08:00
m4 20f39338ed feat(lib): add configTransfer parse/merge logic for config import/export 2026-08-12 20:36:08 +08:00
m4 8a159b3620 feat(i18n): add configTransfer catalog for config import/export 2026-08-12 20:27:25 +08:00
m4 94cb1e4f28 feat(bff): proxy admin config export routes with config:export scope 2026-08-12 20:21:29 +08:00
m4 eb3ca1d7a0 docs: clarify uv run pytest rationale in plan 2026-08-12 19:55:46 +08:00
m4 2ac4c34044 docs: correct backend test command to uv run pytest 2026-08-12 19:53:59 +08:00
m4 4e66e6a7f4 refactor: split i18n catalogs into domain modules, rework dialog components
In-progress work committed to unblock the config import/export plan:
- i18n: new changePassword/modelConfig/imageModels/systemConfig catalogs (zh+en)
- AccountDialog/ChangePasswordDialog/ConfigDialog/ImageModelsDialog rewired
- RegistryEditor/ImageModelsEditor updated for the new catalogs
- system-config tabs restyled; page/layout follow-ons
2026-08-12 19:45:18 +08:00
m4 05d8abef2d docs: add config import/export implementation plan
CI / macos-latest / Node 20 (push) Has been cancelled
CI / ubuntu-latest / Node 20 (push) Has been cancelled
CI / windows-latest / Node 20 (push) Has been cancelled
2026-08-12 19:32:24 +08:00
m4 c9909f58f8 docs(webui): add config import/export design spec
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-12 19:01:53 +08:00
m4 3fec24dc2b feat(update): update banner and one-click upgrade/rollback in version badge
CI / macos-latest / Node 20 (push) Has been cancelled
CI / ubuntu-latest / Node 20 (push) Has been cancelled
CI / windows-latest / Node 20 (push) Has been cancelled
2026-08-12 17:16:39 +08:00
m4 046aab4247 test(webui): include userManagement in i18n shadow-check module list 2026-08-12 17:11:06 +08:00
m4 caacec90bc feat(update): WebUI self-update and backend-proxy API routes 2026-08-12 17:07:18 +08:00
m4 49e7dde242 feat(webui): redesign user management with avatar rows and action dialogs 2026-08-12 17:06:25 +08:00
m4 af739b0aa1 feat(webui): add reset-password and delete-user dialogs 2026-08-12 16:57:16 +08:00
m4 1fdac0d2e1 feat(update): zero-dep WebUI updater runner 2026-08-12 16:55:16 +08:00
m4 a2ce1c6b7b feat(webui): add create-user dialog 2026-08-12 16:50:44 +08:00
m4 496236ccf5 feat(update): WebUI self-update check/download against shared Gitea release 2026-08-12 16:47:56 +08:00
m4 68179dd46e feat(webui): add user-management validation helpers 2026-08-12 16:45:43 +08:00
m4 3f6730c9e5 i18n(webui): add userManagement message catalogs 2026-08-12 16:37:36 +08:00
m4 8a6ccc032c docs(webui): add user-management UI redesign implementation plan
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-12 16:25:14 +08:00
m4 1ae2fe1b2a docs(webui): add user-management UI redesign spec
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-12 16:12:27 +08:00
m4 3efaa9f34e fix(webui): add getServerSnapshot to running-threads store for SSR
useLocalRunningThreadIds is now mounted on a force-dynamic route, so
useSyncExternalStore needs a getServerSnapshot to avoid React's
"Missing getServerSnapshot" error during server rendering. Use a
module-level EMPTY_IDS constant to keep snapshot identity stable.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-12 13:08:37 +08:00
m4 b94bcd649a feat(webui): show pulsing dot in header while open conversation runs 2026-08-12 12:33:55 +08:00
m4 10deb0ac22 feat(webui): show pulsing running dot on busy thread-list rows 2026-08-12 12:26:56 +08:00
m4 9cb986eb89 feat(webui): add RunningDot pulsing status component 2026-08-12 12:21:34 +08:00
m4 8fb1f299e6 feat(webui): add useRunningThreadIds merging local + heartbeat busy state 2026-08-12 12:13:39 +08:00
m4 93500c3020 docs(webui): running-conversation indicator implementation plan
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-12 12:00:31 +08:00
m4 f992cd213f docs(webui): running-conversation indicator design spec
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-12 11:55:17 +08:00
m4 2ee0e617ef fix(webui): format context-usage tooltip numbers via useFormatter 2026-08-11 22:33:54 +08:00
m4 c18ca4693c feat(webui): i18n main chat — chat + threadList domains
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-11 17:44:52 +08:00
m4 ddbc6c808e feat(webui): i18n chrome — header, LocaleSwitcher, login page 2026-08-11 16:03:26 +08:00
m4 63f3310fa0 feat(webui): move pages under [locale], compose intl + auth proxy
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-08-11 15:31:13 +08:00
m4 c6a2c347f8 feat(webui): wire version badge + system config dialog into header, admin gate 2026-08-11 15:07:53 +08:00
m4 598b2cfdc4 feat(webui): version update check with badge and download proxy 2026-08-11 15:07:53 +08:00
m4 141e25c3b0 feat(webui): surface summarization budget events in compaction UI 2026-08-11 15:07:53 +08:00
m4 e32dd49095 feat(webui): inline workspace images/links in chat via thread-aware file urls 2026-08-11 15:07:53 +08:00
m4 84e4d298b3 feat(webui): support latex \(...\) and \[...\] math delimiters in markdown 2026-08-11 15:07:53 +08:00
m4 ab3789603f feat(webui): image model connection test 2026-08-11 15:07:53 +08:00
m4 eab9178743 feat(webui): registry editor context-window/output/temperature fields + advanced section 2026-08-11 15:07:53 +08:00
m4 94e64cc0c2 feat(webui): context-usage indicator fed by custom stream events 2026-08-11 15:07:53 +08:00
m4 1351da2ee0 feat(webui): clear-all usage records endpoint + dialog action 2026-08-11 15:07:23 +08:00
m4 a7f7adc56b feat(webui): install skills from arbitrary source, uninstall, marketplace categories 2026-08-11 15:07:23 +08:00
m4 9e1e628ab7 feat(webui): next-intl scaffolding + en/zh catalog skeletons
CI / macos-latest / Node 20 (push) Has been cancelled
CI / ubuntu-latest / Node 20 (push) Has been cancelled
CI / windows-latest / Node 20 (push) Has been cancelled
2026-08-11 14:52:56 +08:00
m4 65ad214fcd docs(webui): implementation plan for i18n (en + zh)
CI / macos-latest / Node 20 (push) Has been cancelled
CI / ubuntu-latest / Node 20 (push) Has been cancelled
CI / windows-latest / Node 20 (push) Has been cancelled
2026-08-11 14:33:17 +08:00
m4 493b2bfc52 docs(webui): spec for bilingual i18n (next-intl URL locale segment, code-mapped errors) 2026-08-11 13:58:31 +08:00