Ver código fonte

Sessie-afsluiting: P1-16 afgerond (Firebase Crashlytics live bevestigd), App Check/Drupal-backend-inzicht vastgelegd in CLAUDE.md

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
bob 2 semanas atrás
pai
commit
9fca49aac8
2 arquivos alterados com 24 adições e 21 exclusões
  1. 16 0
      CLAUDE.md
  2. 8 21
      TASKS.md

+ 16 - 0
CLAUDE.md

@@ -1404,6 +1404,22 @@ exacte veldnaam+type-specificatie (kost hem seconden per veld).
 
 ## Domein/architectuurcontext
 
+- **Firebase App Check beschermt alleen Firebase-diensten zelf
+  (Firestore/Cloud Functions/Storage), niet de eigen Drupal-backend van
+  dit project.** Besproken 2026-08-25 (Bob's vraag n.a.v. FlutterFlow's
+  App Check-toggle bij het instellen van Crashlytics, zie P1-16/P1-30):
+  de app praat rechtstreeks met een custom Drupal-Services-API, geen
+  Firebase-dienst — App Check aanzetten in FlutterFlow doet dus niets
+  voor die API, tenzij er óók custom Drupal-code bij komt die het
+  App-Check-token (Play Integrity/DeviceCheck) verifieert. Niet gebouwd
+  (te veel moeite voor een nog ongemeten risico) — zie P1-30 voor het
+  gekozen alternatief (Cloudflare rate limiting). **Kernbeperking die
+  hierbij ook geldt en niet op te lossen is:** alles wat de app
+  meestuurt (URL's, headers) staat letterlijk in de gecompileerde app en
+  is te achterhalen — geen enkele edge-laag (Cloudflare of anders) kan
+  cryptografisch bewijzen "dit request komt echt van de app" zonder een
+  App-Check-achtige attestatie-oplossing met backend-verificatie.
+
 - **Drupal 7 Services-module: een nieuwe custom resource moet ook los
   geactiveerd worden per endpoint — code alleen is niet genoeg.**
   Bevestigd 2026-08-19 (Bob + Claude samen gedebugd, P1-7 Tab 1

+ 8 - 21
TASKS.md

@@ -1157,25 +1157,12 @@ viewport te renderen (bekende clipping, zie CLAUDE.md), maar
 voorkomen (voorkomt de layout-overschrijding, ook zonder ellipsis-
 teken). Uit deze lijst verwijderd.)*
 
-**P1-16 · Eigenaar: Bob (Firebase-koppeling is account-/builder-niveau,
-geen Claude-taak).** Geen crash-reporting/analytics (bv. Firebase
-Crashlytics) ingesteld. Nu is de enige manier om een crash zoals P1-15
-hierboven te zien een handmatige `flutter run`-log tijdens een actieve
-sessie — na livegang is dat niet meer haalbaar, dan draai je blind.
-**Aanbeveling: instellen vóór livegang**, niet pas erna — FlutterFlow
-heeft ingebouwde Firebase-integratie (Crashlytics minimaal, Analytics
-optioneel) die met een paar builder-instellingen aan te zetten is.
-Zonder dit blijft elke toekomstige crash-bug (nieuwe RenderFlex-
-overflows, een volgende `launchURL`-achtige misser) onzichtbaar totdat
-een gebruiker 'm toevallig meldt. **Vers gecheckt 2026-08-13 (Claude,
-grep op "crashlytics"/"firebase" in `lib/` en `pubspec.yaml`):** nog
-geen enkele Firebase-referentie in het project — nog steeds volledig
-niet opgepakt. **Verduidelijkt 2026-08-25 (Bob's vraag in de chat):**
-puur Crashlytics (+ optioneel Analytics) — **geen** Firebase Cloud
-Messaging/push nodig, dat is een losse toggle die uit kan blijven (zie
-P2-10). Firebase-project koppelen is verplichte infra vóór Crashlytics
-kan, maar verplicht verder niets — P1 (aanbevolen, niet blokkerend voor
-livegang), Bob's eigen afweging of dit nu of later gebeurt.
+*(P1-16 afgerond 2026-08-25/26 — Bob, builder: Firebase gekoppeld,
+Crashlytics + Performance Monitoring aangezet (Cloud Messaging/push
+bewust uitgelaten, zie P2-10). Bevestigd via verse export:
+`firebase_core`/`firebase_crashlytics`/`firebase_performance` staan nu
+in `pubspec.yaml`, Firebase-init in `main.dart`. Uit deze lijst
+verwijderd.)*
 
 **P1-30 · Eigenaar: Bob (Cloudflare/infra-niveau, geen Claude-taak).**
 API-misbruik beperken voor de publieke Drupal-backend. **Besproken
@@ -2547,8 +2534,8 @@ overwegen bij een volgende theme-update:
 
 ---
 
-**P2-15 · Eigenaar: Bob (builder), Claude regisseert/verifieert —
-zelfde live pair-fix-aanpak als eerder.** Evenementen/stadsactiviteiten
+**P2-15 · Eigenaar: Bob (builder), Claude regisseert/verifieert — bezig
+(sessie 2026-08-26, stap 1: bestandUpload custom action).** Evenementen/stadsactiviteiten
 aanmaken vanuit de app (horeca-eigenaren + elke gebruiker). **Drupal-kant
 volledig klaar en curl-getest op devbob (2026-08-26)** — dit is nu
 zuiver FlutterFlow-bouwwerk. Volledige achtergrond/velden/beslissingen