ulysses/routes
Sirsyorrz 09acf955f1
models: dedupe endpoints by base_url on create (#266)
POST /api/model-endpoints always inserted a new row, so Settings -> Add
Models -> Scan for Servers re-added any endpoint a user had already
registered manually — once under its model name (from the earlier
manual add) and again under its host:port (auto-generated when scan
posts without a name). The success toast then misreported the result
as "added N new".

Look up an existing endpoint with the same base_url accessible to the
caller (shared or owned by them) before inserting. If found, return it
with `existing: true` so the client can tell the difference between
an actual add and a dedupe hit. Toast now reads, e.g.,
"Found 1 server with 1 model — 1 already added".

Tested: POSTing the same base_url three times (incl. trailing-slash
variation) returns the same id each time; only one row exists.
2026-06-01 14:22:06 +09:00
..
__init__.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
admin_wipe_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
api_token_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
assistant_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
auth_routes.py Add admin user rename 2026-06-01 12:52:58 +09:00
backup_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
calendar_routes.py Fix YEARLY recurring CalDAV events only showing on DTSTART year (#179) 2026-06-01 13:42:44 +09:00
chat_helpers.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
chat_routes.py fix: stop leaking DB connections when persisting session mode (#64) 2026-06-01 13:57:48 +09:00
cleanup_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
compare_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
contacts_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
cookbook_helpers.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
cookbook_routes.py Clarify Cookbook diffusion dependencies 2026-06-01 11:45:26 +09:00
diagnostics_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
document_helpers.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
document_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
editor_draft_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
email_helpers.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
email_pollers.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
email_routes.py Prefetch adjacent emails while reading 2026-06-01 13:14:47 +09:00
embedding_routes.py Gate embedding routes behind admin auth 2026-06-01 10:47:11 +09:00
emoji_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
font_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
gallery_helpers.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
gallery_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
history_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
hwfit_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
mcp_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
memory_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
model_routes.py models: dedupe endpoints by base_url on create (#266) 2026-06-01 14:22:06 +09:00
note_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
personal_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
prefs_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
preset_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
research_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
search_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
session_routes.py Improve Ollama setup and model endpoint handling 2026-06-01 10:00:15 +09:00
shell_routes.py Secure cookbook package probe endpoint 2026-06-01 13:22:37 +09:00
signature_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
skills_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
stt_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
task_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
tts_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
upload_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
vault_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00
webhook_routes.py Odysseus v1.0 2026-05-31 23:58:26 +09:00