feat(openzaak): bounded retry + flagged write divergence (WP-60)
Local aanvraag/document writes and their paired ZGW writes aren't transactional; a ZGW failure after the local write succeeds used to diverge silently. ZgwHttpClient now retries transport-shaped failures (not 500, which can follow a partial commit on the non-idempotent statussen/rollen POSTs), and a ZGW failure that survives retry sets Aanvraag.ZgwError plus a zgw:divergence audit row instead of failing or diverging quietly. No outbox/reconcile job: three request-triggered write paths don't justify a persisted queue that would also need to carry citizen PII for the JWT audit claims. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -68,10 +68,10 @@ not "must every category be configured."
|
||||
|
||||
## Verification
|
||||
|
||||
`cd backend && dotnet test` (161/161 green, incl. the 2 new `OpenZaakDocumentSourceTests`
|
||||
+ the new `StamdataValidationTests` reference entry); `dotnet format --verify-no-changes`
|
||||
clean. Manual: `/beheer/stamdata` shows and edits the new table; an upload for a mapped
|
||||
document type carries the mapped confidentiality level (test asserted).
|
||||
`cd backend && dotnet test` (161/161 green, incl. the 2 new `OpenZaakDocumentSourceTests` plus
|
||||
the new `StamdataValidationTests` reference entry); `dotnet format --verify-no-changes` clean.
|
||||
Manual: `/beheer/stamdata` shows and edits the new table; an upload for a mapped document type
|
||||
carries the mapped confidentiality level (test asserted).
|
||||
|
||||
## Out of scope
|
||||
|
||||
|
||||
Reference in New Issue
Block a user