diff --git a/dev-docs/BACKLOG.md b/dev-docs/BACKLOG.md index bfd88489..d37507dc 100644 --- a/dev-docs/BACKLOG.md +++ b/dev-docs/BACKLOG.md @@ -392,39 +392,6 @@ Prioriteit: Medium. Kan gebundeld worden met de organizer --- -### FORM-09 — TriggerPersonIdentityMatchOnFormSubmit ShouldQueue herzien - -**Aanleiding:** De bestaande listener `implements ShouldQueue`. Gevolg: -bij een public event_registration submission is -`identity_match_status` nog `null` op het moment dat de submit-HTTP- -response terugkeert. De confirmation page rendert daardoor zonder -banner bij first load — pas na een refresh (of queue-worker tick) is -de `pending` staat zichtbaar. Tijdens S3a PR 2 is dit genoteerd als -"dev ergonomics" (draai `queue:work` erbij), maar dat is een -workaround, geen fix. -**Wat:** Verwijder `implements ShouldQueue` uit -`TriggerPersonIdentityMatchOnFormSubmit`. De listener wordt -orchestrator: schrijft `identity_match_status` synchroon in de -request-lifecycle zodat de submit-response direct klopt. Wanneer -FORM-05 proper landt met zwaardere matching-logica -(`PersonIdentityService::detectMatchesByValues` met fuzzy name -matching over de hele org), wordt dat zware werk gedispatched als -aparte `ResolveIdentityMatchJob` vanuit deze listener. Eager state -transition blijft sync, heavy resolution blijft async. - -Zie ook: architectuur-discussie in de S3a planning-sessie -("eager state + lazy resolution" patroon). - -**Prioriteit:** Middel — niet user-facing blocking vandaag (draait -met `queue:work` gewoon), maar architecturaal is de refactor juist nu -klein (1 regel weghalen + test-aanpassing). Wordt groter als FORM-05 -landt zonder deze refactor. - -**Impact:** ~5 regels code, 1-2 test-aanpassingen. Eén commit, aparte -PR. - ---- - ### SUP-01 — Leveranciersportal + productieverzoeken **Aanleiding:** Leveranciers moeten productie-informatie kunnen indienen. @@ -572,6 +539,7 @@ De volgende items zijn geïmplementeerd en afgerond (673+ tests): - ~~Premium portal wizard (banner, branding, success page)~~ ✅ - ~~Global error handling (useNotificationStore + axios 422 interceptor)~~ ✅ - ~~S3a PR 2: TAG_PICKER / AVAILABILITY_PICKER / SECTION_PRIORITY renderen in het publieke registratieformulier. Seeder uitgebreid met twee showcase-velden + parent-level VOLUNTEER time slot + duplicate section name voor dedup-dekking. SECTION_PRIORITY waarde-shape gevalideerd in FormValueService. `FormSubmissionResource` krijgt admin-facing `identity_match` block. 64 nieuwe assertions over backend + Vitest.~~ ✅ +- ~~FORM-09: TriggerPersonIdentityMatchOnFormSubmit sync refactor (eager state transition, async resolution deferred to FORM-05)~~ ✅ ---