Bijgewerkt: 2026-08-04. Zie CLAUDE.md voor werkinstructies/conventies.
Elke openstaande taak hieronder is bedoeld om zonder eerdere chatcontext
opgepakt te kunnen worden — bestandspaden en concrete stappen staan
erbij waar bekend.
SSESS*
staat al goed (bypass, eerste regel). Werkhypothese: Cloudflare Bot
Management behandelt FlutterFlow's server-side traffic anders op
basis van IP-reputatie/TLS-fingerprint. Niet opnieuw diagnosticeren
zonder navraag — check eerst of Bob al verder is.[ ] Home-slider crasht (RangeError) bij 0 API-resultaten.
CarouselSlider.builder met itemCount: 0 crasht. De originele
PUitgaanSliderComponent had deze bug (al gefixt daar, zie
"afgerond" hieronder). HomeUitgaantabelKaartComponent/de
Home-slider is een kopie van diezelfde code voor de landelijke
(cityid-loze) query — waarschijnlijk dezelfde bug geërfd. Check en
fix met hetzelfde patroon (empty-state check vóór de builder).
[ ] Werkende login + favorieten — resterende deeltjes. Grote basis is af (zie "afgerond"): login echt gekoppeld, wachtwoord- vergeten-flow, favorieten drawer-link + 3-tabblad-pagina, hartje op horeca-kaart + horeca-detailpagina. Nog open:
[ ] Hartje-icoon op gemeente — geblokkeerd op designvraag. Bob
koos: heart ergens anders dan de gemeente-dropdown zelf (dropdown
blijft ongewijzigd). Blocker: geen enkele pagina toont de
geselecteerde gemeente-náám als tekst — alleen het numerieke ID
(FFAppState().gemeenteSelectId) wordt doorgegeven als filter (bv.
plaats/townid param op PUitgaanPageWidget). GemeentenCall.
gemeenteName() in lib/backend/api_requests/api_calls.dart bestaat
al maar is ongebruikt. Voordat je bouwt: vraag Bob expliciet waar
de gemeente-naam + hartje moeten komen (meest voor de hand
liggende kandidaat: AppBar van PUitgaanPageWidget, de pagina die je
bereikt na het kiezen van een gemeente in de drawer) — niet zelf
raden aan de layout.
provincieNaamById/
gemeenteNaamById (in lib/flutter_flow/custom_functions.dart,
committed, compileert) is al gebouwd maar nog niet gekoppeld
aan een widget — de binding-poging liep vast op een FlutterFlow-
builderbug met List<CustomDataType>-argumenten (zie CLAUDE.md,
"geneste Set Variable-dialoog"). Simpeler alternatief dat die bug
vermijdt: naam vastleggen in een plain String App State-variabele
op het moment van selectie, i.p.v. 'm live op te zoeken via een
List-typed lookup function.[ ] "Hello Worlddd" — letterlijke debugtekst op de live
Event-pagina. Geen veldnaam-fallback, een vergeten testregel.
lib/evenement/evenement_info/evenement_info_widget.dart:185-188
(translation key kslnk9ez).
[ ] Overflow-bug in Event→Horeca-kaartje. Zelfde
Row+Icon+Text-zonder-Flexible-patroon dat al 2x eerder gefixt is
(slider + tabelkaart, zie "afgerond") — nu op de adres/plaats- én
telefoonregel.
lib/evenement/evenement_horecagelegenheid/evenement_horecagelegenheid_widget.dart:471-599.
[ ] Foutafhandeling ontbreekt op HorecagelegenhedenOverzicht. 6
FutureBuilders checken alleen "geen data nog", geen enkele checkt op
een mislukte call — bij een netwerkfout blijft het laadwieltje
voor altijd draaien.
lib/horecagelegenhedenoverzicht/horecagelegenheden_overzicht/horecagelegenheden_overzicht_widget.dart
(regels 276, 460, 644, 828, 1012, 1196).
[ ] Drupal: anonieme leestoegang onderzoeken voor browse- endpoints. Bob's eigen actie op Drupal-niveau, geen Claude-taak.
[ ] Lege image-URL crash (CachedNetworkImage) — 1 van 10
resterend. Patroon en volledige uitleg staan in CLAUDE.md
("Patroon: lege/ontbrekende afbeeldings-URL laten crashen"). 9 van
de 10 bekende instanties zijn al gefixt en gepusht. Laatste
resterende: component EvenementHorecagelegenheid, widget
Column > Carousel > Carousel Page > Image (Path gebonden aan
fotoosItem, een lijst-item-string). De ConditionalBuilder-wrap
staat al (server-side opgeslagen), maar de IF-conditie is nog
Unset — het instellen ervan liep herhaaldelijk vast op de geneste
Set Variable-dialoogbug (zie CLAUDE.md). Volgende poging: gewoon
opnieuw proberen met de "Is Set"-operator (korte weg, geen Second
Value nodig); lukt dat niet binnen 1-2 pogingen, vraag het aan Bob
(exacte stappen staan in CLAUDE.md).
grep -rl "CachedNetworkImage" over
lib/**/*_widget.dart; die grep zelf is waarschijnlijk nog
compleet, maar een her-check na toekomstige nieuwe pagina's is
verstandig.[ ] Loading/foutafhandeling-patroon repliceren naar andere lijstpagina's. Het patroon dat al werkt op de Uitgaan-pagina (eventenlijst) toepassen op overige lijst-/detailpagina's (Event, HorecagelegenheidCurrent, sliders) — nu geen enkele foutstatus daar, alleen "geen data nog".
[ ] "Thuis bezorgen" koppelen aan een echt leverbaar-veld per horecagelegenheid. Wacht op Bob: hij moet eerst het API-endpoint aan Drupal-kant configureren. Daarna: tonen/verbergen op basis van het echte veld i.p.v. de huidige dode tap.
[ ] Overflow op Home-pagina. Live gereproduceerd tijdens het
testen (2026-08-03): RenderFlex overflowed by 7338 pixels in een
Column zonder Expanded/scrollcontainer.
lib/uitgaanspaginas/home/home_widget.dart:316.
[ ] ~25+ plekken tonen letterlijke veldnaam i.p.v. nette placeholder (bv. "titel", "adres", "def") bij ontbrekende data. Nog niet geïnventariseerd welke exact — audit-agent-bevinding, concrete lijst nog te maken.
[ ] EstablishmentsCall crasht zonder categoriefilter.
horcat ??= null!; — nu geen probleem omdat elke aanroep toevallig
altijd een filter meegeeft, wel een landmijn voor de toekomst.
lib/backend/api_requests/api_calls.dart:1151.
[ ] Sliderkaartje: datumregel mist de Flexible-wrap. Zelfde
patroon als de twee regels eronder die al gefixt zijn (consistentie).
p_uitgaan_slider_kaart_component_widget.dart:273-306.
[ ] Account/profielscherm (wachtwoord wijzigen, uitloggen, account verwijderen) — bovenop de login/favorieten-P0-basis. Account verwijderen heeft mogelijk AVG-implicaties aan Drupal-kant.
[ ] Toegankelijkheid & navigatie, restpunten:
login_widget.dart:270-280,
392-401. Let op: dit zijn suffixIcons van een TextFormField,
de standaard Tooltip-wrap werkt daar niet op (zie CLAUDE.md).context.pop).nid, bv. gedeelde link naar verwijderd event).[ ] Visuele polish (los, per pagina): Uitgaan-pagina (typografie/contrast/spacing), Event-pagina, HorecagelegenhedenOverzicht, tabel-kaartje-afstemming met slider-kaartje, categorie-tag mag titel/datum niet overstemmen in dichte lijstweergaves.
[ ] Performance:
horecagelegenheden_overzicht(_sort_page/_page_data_type)_widget.dart.[ ] Responsive/screensize-audit — o.a. het vaste 200×200px- tegelformaat in het venue-event-grid dat botst met de grid-berekening.
kaartTabelUitgaanComp + kaartTabelUitgaanSComp — Bob
doet dit zelf ("ik kijk er zelf naar").lib/kanweg opnieuw leegmaken indien teruggekomen na een latere
export-pull, plus eventuele nieuwe losse dode componenten in
lib/evenement/.PUitgaanPage's provincie/
gemeente-gescoopte categorieën zich tot elkaar verhouden.EventWidget-route: heraansluiten of definitief schrappen (losse
orphan-route).