S-19b-2 · Read projection sourced from Objecten instead of NRC zaak events #153

Closed
opened 2026-08-14 09:43:26 +00:00 by not · 0 comments
Contributor

Split from #150 (S-19b), CLAUDE.md §13. Second of two. Depends on S-19b-1.

Outcome: the public register read projection is derived from the RegisterRecord objects in Objecten rather than from NRC zaak-status notifications. The projection stays rebuildable (§8.4) — a rebuild reads the Objecten-derived log, not ZGW. Duplicate and out-of-order deliveries stay tolerated (§8.6).

Notes from the S-19a/S-19b-1 groundwork:

  • The Event Subscriber is currently hardcoded to zaken semantics in three places: IsZaakCreated/IsZaakStatusSet, ZaakUrl/ZaakId, and ToEntry's Resource == "status" mapping.
  • The ACL POSTs an object on first write and PATCHes it afterwards, so this path sees create and update actions on the same object — unlike the zaken path.
  • The record already carries id, status and reference, so no ACL call is needed to enrich a row (unlike zaken/reference today).

Out of scope: the notification wiring (S-19b-1).

Definition of Done

  • Failing test/verify committed first; implementation makes it pass.
  • Refactor commit follows if structure improved.
  • Conventional Commit messages referencing this issue (refs #NN).
  • All Gitea Actions CI jobs green: lint, unit, integration, mutation (ratchet), e2e, container build + push, compose-up smoke test.
  • docker compose up from a fresh clone reaches green health checks within 3 minutes.
  • Docs touched if behaviour, contracts, or operations changed.
  • ADR added in docs/architecture/ if a non-obvious decision was made.
  • Demo note appended to docs/demo-script.md if the slice is user-visible.
  • This issue closed by the merging PR (closes #NN).
Split from #150 (S-19b), CLAUDE.md §13. Second of two. Depends on S-19b-1. **Outcome:** the public register read projection is derived from the `RegisterRecord` objects in Objecten rather than from NRC zaak-status notifications. The projection stays rebuildable (§8.4) — a rebuild reads the Objecten-derived log, not ZGW. Duplicate and out-of-order deliveries stay tolerated (§8.6). Notes from the S-19a/S-19b-1 groundwork: - The Event Subscriber is currently hardcoded to zaken semantics in three places: `IsZaakCreated`/`IsZaakStatusSet`, `ZaakUrl`/`ZaakId`, and `ToEntry`'s `Resource == "status"` mapping. - The ACL POSTs an object on first write and **PATCHes** it afterwards, so this path sees `create` *and* `update` actions on the same object — unlike the zaken path. - The record already carries `id`, `status` and `reference`, so no ACL call is needed to enrich a row (unlike `zaken/reference` today). **Out of scope:** the notification wiring (S-19b-1). ## Definition of Done - [ ] Failing test/verify committed first; implementation makes it pass. - [ ] Refactor commit follows if structure improved. - [ ] Conventional Commit messages referencing this issue (`refs #NN`). - [ ] All Gitea Actions CI jobs green: lint, unit, integration, mutation (ratchet), e2e, container build + push, compose-up smoke test. - [ ] `docker compose up` from a fresh clone reaches green health checks within 3 minutes. - [ ] Docs touched if behaviour, contracts, or operations changed. - [ ] ADR added in `docs/architecture/` if a non-obvious decision was made. - [ ] Demo note appended to `docs/demo-script.md` if the slice is user-visible. - [ ] This issue closed by the merging PR (`closes #NN`).
not added this to the Iteration 4 — Objecten milestone 2026-08-14 09:43:26 +00:00
not added the area:event-subscriberarea:projectiontype:slice labels 2026-08-14 09:43:26 +00:00
not closed this issue 2026-09-01 07:26:34 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: eho/register-referentie#153