Implement P05 checked services and safe selected delivery recovery
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Build and Publish Container Image / build-and-push (push) Successful in 19s
Account journey acceptance / journeys (push) Successful in 5s

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a092fe-13b1-7f12-ac74-7d258af4d79c
This commit is contained in:
tegwick 2026-09-13 22:11:49 +02:00
parent 99618488e0
commit ac0eb14b75
15 changed files with 735 additions and 88 deletions

View file

@ -0,0 +1,57 @@
---
id: USER-WP-0032
type: workplan
title: "P05 checked service health and bounded delivery recovery"
domain: communication
repo: user-engine
status: active
owner: codex
topic_slug: communication
created: "2026-09-13"
updated: "2026-09-13"
---
Complete P05 under USER-WP-0030-T03. P06 remains separate. Do not send production
messages for acceptance; use the existing loopback SMTP/IMAP harness. Live SMTP
authentication diagnostics do not submit a message or claim inbox delivery.
## Expose checked service state with clear recovery steps
```task
id: USER-WP-0032-T01
status: progress
priority: high
```
Operator-only, bounded checks for KeyCape dependencies/current factor-read
credential and mail database/SMTP authentication. Show checked time, impact,
unknown versus unavailable state, retry and assisted setup; no secrets or raw
provider errors. Health probes must not send mail.
## Make selected delivery and retry safe and reviewable
```task
id: USER-WP-0032-T02
status: progress
priority: high
```
Fix failed worker claims; serialize event operations across connections; confirm
one selected delivery and reject stale/repeated completion. Missing email lane
must not mark invitations accepted. Preserve provider idempotency across lost
responses and restart; uncertain SMTP outcomes must not auto-resend. No automatic
processing of the production backlog during this task.
## Verify failure and recovery through native and harness acceptance
```task
id: USER-WP-0032-T03
status: todo
priority: high
```
Installed-provider genuine JWT expiry, scope withdrawal/recovery and outage;
native renewal/projection; SMTP/IMAP received-message and retry tests with a
local mailbox; role/CSRF/stale/ambiguous-outcome browser coverage. Publish digest
pinned releases and verify live non-sending status. Close RPF-WP-0040 acceptance
using its specified isolated fixture rather than disrupting live authentication.