peter
6d8b7be6d8
feat!: remove the shared demo account
...
The demo account — one shared user that whitelisted emails entered from
the login page, reset on a schedule — goes end to end (owner decision,
E34): demo.py and the reset job, users.is_demo and demo_whitelist
(migration 0098 deletes the demo user, its audit rows, the reset job's
override and notices, then drops the column and table; the downgrade
restores the empty schema), the /auth/demo entry, the admin whitelist and
reset, the Demo tab, the banner, the login page's "Try the demo", and
every is_demo branch in routes, userscope, scheduler and the UI.
require_human only ever refused the demo account, so its 87 uses become
current_user (owner-approved); require_write_scope keeps its own check.
The login page's "or" divider now shows only beside the Google button:
without the demo entry under it, an instance without Google would have
said "or" to nothing.
A contract test (removedFeatures) fails on the word anywhere in the
backend, frontend, e2e or scripts — seen red on a planted hit. Size
ceilings tightened for the modules that shrank; admin.py is back under
the limit.
2026-10-05 00:19:38 +02:00
..
2026-10-05 00:19:38 +02:00
2026-10-04 06:20:58 +02:00
2026-10-03 19:06:47 +02:00
2026-09-16 04:29:13 +02:00
2026-09-19 19:19:29 +02:00
2026-09-19 03:42:26 +02:00
2026-09-04 22:42:15 +02:00
2026-10-05 00:19:38 +02:00
2026-09-19 18:21:06 +02:00
2026-10-04 02:14:04 +02:00
2026-09-29 21:21:19 +02:00
2026-10-05 00:19:38 +02:00
2026-10-05 00:19:38 +02:00
2026-09-27 13:58:23 +02:00
2026-10-02 03:16:37 +02:00
2026-09-18 03:16:15 +02:00
2026-09-19 19:19:30 +02:00
2026-10-05 00:19:38 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-10-05 00:19:38 +02:00
2026-10-05 00:19:38 +02:00
2026-09-29 02:12:32 +02:00
2026-09-16 04:29:13 +02:00
2026-08-28 02:37:56 +02:00
2026-09-16 03:43:29 +02:00
2026-09-18 23:44:42 +02:00
2026-09-14 01:42:57 +02:00
2026-09-05 04:18:33 +02:00
2026-08-30 03:32:14 +02:00
2026-08-23 07:43:06 +02:00
2026-09-29 21:21:19 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-04 20:29:33 +02:00
2026-10-04 03:14:24 +02:00
2026-09-04 20:29:33 +02:00
2026-10-04 04:16:52 +02:00
2026-09-14 00:50:05 +02:00
2026-09-18 23:44:42 +02:00
2026-09-19 19:19:30 +02:00
2026-09-19 05:54:19 +02:00
2026-08-23 07:43:06 +02:00
2026-10-03 02:25:14 +02:00
2026-10-02 21:17:41 +02:00
2026-10-04 02:14:04 +02:00
2026-08-23 07:43:06 +02:00
2026-09-19 04:51:31 +02:00
2026-09-15 00:53:15 +02:00
2026-08-28 02:37:56 +02:00
2026-09-19 19:19:30 +02:00
2026-09-19 07:34:17 +02:00
2026-10-05 00:19:38 +02:00
2026-09-19 01:33:32 +02:00
2026-08-29 08:02:11 +02:00
2026-09-19 06:55:40 +02:00
2026-09-18 03:16:15 +02:00
2026-09-04 01:56:55 +02:00
2026-10-05 00:19:38 +02:00
2026-10-03 16:04:06 +02:00
2026-10-05 00:19:19 +02:00
2026-10-04 02:14:04 +02:00
2026-09-01 23:31:49 +02:00
2026-10-04 17:53:19 +02:00
2026-10-02 23:42:32 +02:00
2026-08-23 07:43:06 +02:00
2026-09-29 22:46:04 +02:00
2026-08-23 07:43:06 +02:00
2026-09-12 05:50:31 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-19 22:48:20 +02:00
2026-10-03 19:06:47 +02:00
2026-10-04 02:13:53 +02:00
2026-09-27 21:56:23 +02:00
2026-09-27 21:56:23 +02:00
2026-09-27 22:34:14 +02:00
2026-09-27 22:34:14 +02:00
2026-10-03 21:53:06 +02:00
2026-09-29 02:12:32 +02:00
2026-09-19 19:19:30 +02:00
2026-10-04 04:16:52 +02:00
2026-09-19 19:19:30 +02:00
2026-09-19 19:19:30 +02:00
2026-09-29 21:21:19 +02:00
2026-09-19 19:19:30 +02:00
2026-10-02 21:32:49 +02:00
2026-09-19 19:19:30 +02:00
2026-09-19 19:19:30 +02:00
2026-09-19 18:21:06 +02:00
2026-09-19 17:26:07 +02:00
2026-10-03 19:06:47 +02:00
2026-08-23 07:43:06 +02:00
2026-09-19 19:19:30 +02:00
2026-09-30 03:26:57 +02:00
2026-09-19 19:19:30 +02:00
2026-10-03 19:33:30 +02:00
2026-10-03 19:33:30 +02:00
2026-10-01 10:43:59 +02:00
2026-09-30 02:19:54 +02:00
2026-09-30 02:19:54 +02:00
2026-09-19 19:19:30 +02:00
2026-09-19 19:19:30 +02:00
2026-10-03 19:06:47 +02:00
2026-09-19 19:19:30 +02:00
2026-10-03 16:04:06 +02:00
2026-09-19 19:19:30 +02:00
2026-09-27 13:58:23 +02:00
2026-10-03 19:06:47 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-09-29 21:21:19 +02:00
2026-10-04 04:49:55 +02:00
2026-08-28 01:34:02 +02:00
2026-09-11 18:05:30 +02:00
2026-09-22 01:59:03 +02:00
2026-10-04 06:20:58 +02:00
2026-08-23 07:43:06 +02:00
2026-10-04 17:53:19 +02:00
2026-10-05 00:19:38 +02:00
2026-08-23 07:43:06 +02:00
2026-10-03 19:06:47 +02:00
2026-10-03 19:06:47 +02:00
2026-10-05 00:19:19 +02:00
2026-10-05 00:19:38 +02:00
2026-08-23 07:43:06 +02:00
2026-10-05 00:19:38 +02:00
2026-10-01 22:51:37 +02:00
2026-10-05 00:19:38 +02:00
2026-10-03 21:53:05 +02:00
2026-08-23 07:43:06 +02:00
2026-10-05 00:19:38 +02:00
2026-10-03 21:53:05 +02:00
2026-08-23 07:43:06 +02:00
2026-10-05 00:19:38 +02:00
2026-08-23 07:43:06 +02:00
2026-09-18 01:20:42 +02:00
2026-10-01 22:51:37 +02:00
2026-10-02 03:16:37 +02:00
2026-10-02 03:16:37 +02:00
2026-08-26 05:25:47 +02:00
2026-08-23 07:43:06 +02:00
2026-08-23 07:43:06 +02:00
2026-10-05 00:19:38 +02:00
2026-09-05 04:02:57 +02:00
2026-10-05 00:19:38 +02:00
2026-10-02 21:52:47 +02:00
2026-10-03 19:06:47 +02:00
2026-10-04 17:53:19 +02:00
2026-09-18 22:50:37 +02:00
2026-09-19 04:51:31 +02:00
2026-10-04 04:51:25 +02:00
2026-09-18 23:44:42 +02:00