ulysses/static
Lucas Daniel 5462030cde
fix(auth): per-user allowed-models checklist ignores cache, [None] doesn't block (#3355)
Three issues combined to make the per-user 'Allowed models' checklist
unreliable (#3032):

1. admin.js _loadModelsForUser fetched /api/models, which is backed by
   cached_models — endpoints that haven't been probed yet (e.g. a
   freshly-added DeepSeek API endpoint) simply didn't show up in the
   checklist. Switched to /api/model-endpoints, which always reflects
   every configured endpoint regardless of cache state.

2. _saveModels sent allowed_models: [] both when the admin clicked
   [All] (no restriction) and [None] (block everything) — the backend
   had no way to distinguish the two.

3. _enforce_chat_privileges treated an empty allowed_models list as
   'no restriction' (falsy -> skip the check), so [None] had no effect.

Added an explicit block_all_models privilege flag (defaulting to False,
and forced to False for admins) that admin.js now sets when zero models
are checked. _enforce_chat_privileges checks it first and 403s
regardless of allowed_models contents.
2026-06-08 22:52:39 +02:00
..
fonts Odysseus v1.0 2026-05-31 23:58:26 +09:00
js fix(auth): per-user allowed-models checklist ignores cache, [None] doesn't block (#3355) 2026-06-08 22:52:39 +02:00
lib Odysseus v1.0 2026-05-31 23:58:26 +09:00
app.js fix: hide shell access and plan mode buttons in chat mode (#3417) 2026-06-08 11:32:37 +02:00
index.html feat: add ChatGPT Subscription provider (#2876) 2026-06-08 10:19:18 +02:00
login.html fix(login): keep inputs >=16px on touch so iOS doesn't zoom on focus (#1632) 2026-06-03 14:23:24 +09:00
manifest.json Odysseus v1.0 2026-05-31 23:58:26 +09:00
style.css Revert "fix: expose supports_tools toggle for local endpoints in UI (#3195)" (#3438) 2026-06-08 14:46:01 +02:00
sw.js fix(ui): modal drag + removed startDrag func (#2430) 2026-06-04 20:34:18 +02:00