lazyflat/web
EiSiMo 77098c82df perf: one grouped query for latest per-flat application, not N
_wohnungen_context was calling last_application_for_flat(uid, f.id)
inside the flats loop — at 100 flats that's 101 queries per poll, and
with running applications the page polls every 3s. New
db.latest_applications_by_flat(user_id) returns {flat_id: row} via a
single grouped self-join.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 19:06:48 +02:00
..
static rename to wohnungsdidi + didi logo + footer for all + seconds-only counter 2026-04-21 17:29:24 +02:00
templates wohnungen actions: keep label text, disable both buttons while running 2026-04-21 18:43:17 +02:00
app.py perf: one grouped query for latest per-flat application, not N 2026-04-21 19:06:48 +02:00
apply_client.py multi-user: users, per-user profiles/filters/notifications, tab UI, apply forensics 2026-04-21 10:52:41 +02:00
auth.py multi-user: users, per-user profiles/filters/notifications, tab UI, apply forensics 2026-04-21 10:52:41 +02:00
db.py perf: one grouped query for latest per-flat application, not N 2026-04-21 19:06:48 +02:00
Dockerfile lazyflat: combined alert + apply behind authenticated web UI 2026-04-21 09:51:35 +02:00
enrichment.py rename to wohnungsdidi + didi logo + footer for all + seconds-only counter 2026-04-21 17:29:24 +02:00
llm.py secrets tab, drop commute filter, favicon, robust error reports 2026-04-21 17:56:57 +02:00
matching.py chore: sweep dead code across all three services 2026-04-21 19:06:05 +02:00
notifications.py rename to wohnungsdidi + didi logo + footer for all + seconds-only counter 2026-04-21 17:29:24 +02:00
requirements.txt enrichment: drop LLM for structured info, dedup images by sha + phash 2026-04-21 15:29:55 +02:00
retention.py multi-user: users, per-user profiles/filters/notifications, tab UI, apply forensics 2026-04-21 10:52:41 +02:00
settings.py chore: sweep dead code across all three services 2026-04-21 19:06:05 +02:00