13 Commits

Author SHA1 Message Date
8a12744 3fceb1516c feat(frontend): show user credential expiry 2026-05-06 22:13:54 +08:00
8a12744 ce55cfc6b3 feat(email): require verified approval email
Backfill approved legacy users with verified emails and replace the old unverified-email warning setting with a single approval email policy.
2026-05-06 22:12:23 +08:00
8a12744 a17a913618 feat(frontend): show QR refresh in dialog 2026-05-06 21:10:22 +08:00
8a12744 6afc5817a7 feat(auth): require verified email for approval 2026-05-06 20:57:54 +08:00
8a12744 f2554c7e56 fix(frontend): refresh auth in dashboard 2026-05-05 22:59:42 +08:00
8a12744 7f9ac0957c feat(admin): improve record management 2026-05-05 20:26:26 +08:00
8a12744 1093923a18 chore: remove useless test 2026-05-05 19:39:04 +08:00
8a12744 06d2e6d2f9 fix(frontend): show credential expiry status 2026-05-05 19:35:04 +08:00
8a12744 745ffb1353 fix(frontend): refine token refresh controls 2026-05-05 16:23:24 +08:00
8a12744 73d476bcea feat(email): add admin notification settings 2026-05-05 13:38:34 +08:00
8a12744 8596749085 chore: update frontend libs 2026-05-05 11:27:26 +08:00
8a12744 fa07b340e7 feat(webui): totally convert to new webui 2026-05-04 20:33:22 +08:00
8a12744 d4d6f87730 refactor(structure): reorganize app layout
BREAKING CHANGE: root backend/frontend directories and old run/manage entrypoints were removed. Use apps/backend, apps/frontend, and python main.py commands instead.
2026-05-03 16:43:11 +08:00