Complete notification expiry and configurable durable delivery (#36)

This commit is contained in:
Stephan D committed 2026-09-12 14:52:44 +02:00
1 parent 326d58f705
commit 4b14649b3a
16 files changed
+320 -40

No files matched your search

+17
View File
@@ -480,3 +480,20 @@ in [PR #35](https://git.sendico.io/tech/sxchnge/pulls/35), which remains unmerge
- Task: <https://git.sendico.io/tech/sxchnge/issues/36>.
PR: <https://git.sendico.io/tech/sxchnge/pulls/37>, branch `notifications-36`.
Merge order: [#35](https://git.sendico.io/tech/sxchnge/pulls/35), then #37.
### Notifications completion follow-up (#36 / PR #37)
- Queue configuration now composes shared stream/provisioning settings. NATS
replication, retention and app/ops/hybrid provisioning are configurable;
production drift is rejected. Shared provisioning calls honor cancellation.
- Recovery expires queued and retrying notifications and clears rendered content
without requiring a working NATS connection, including future-scheduled retries.
Expiry queries have a dedicated index. Lost leases are logged with counts.
- Extended the real Mongo/NATS integration test through authenticated TLS gRPC
Send/Get, including caller isolation, idempotency and parameter propagation to
the email driver. Added queue configuration, cancellation and retention-drift
checks; gRPC now preserves canceled/deadline-exceeded outcomes.
- Validation: `make test`, `make lint-backend` and interface packaging passed in
an isolated clean checkout containing this contribution. Shared-workspace runs
initially failed because concurrent product/auth work had missing module
dependencies and unformatted files; that work was excluded and left untouched.