Delivery lesson charge apply authentication repaired and Jenny correction finalized
Root cause and repair
Delivery hardened the Revenue apply caller so it materializes and validates the
bearer and idempotency-key headers before dispatch. Commit a44519c deployed as
dpl_8xAjiGxYZF63dAAZb784wMWU5Qmc.
The first post-deploy retry then exposed the actual remaining Delivery blocker:
the production action registry did not contain
delivery.lesson.correct_details. Preview did not use that registry, while
apply did, so the apply command stopped before the Revenue call. Delivery seeded
the missing action and added code-owned default self-registration so a missing
registry row cannot regress a shipped action. Commit 928f924 deployed as
dpl_3HDZTGGjPFyxLkxVXXbEWoYAhWPE, which is READY on
delivery.sguildswim.com.
Production verification
Delivery retried the blocker-free preview once with durable correction id
loc_019fc4f3-3803-77d7-878b-58645d67aa91. Revenue authorized
system:delivery for revenue.lesson-outcome-corrections.apply and returned
HTTP 200. Revenue request id was
7b007877-4785-462f-9b98-b77e45eac74c, with the correction id present as the
correlation and idempotency key.
Revenue production logs contain exactly one successful apply for that correction key. The completed correction applied the negative one-credit adjustment from 2 to 3 credits. Delivery now shows Jenny Magio's July 27 lesson as Dallas Swim Private Lesson, 30 minutes, and 3 credits. The pending Delivery correction is finalized, and no second apply was issued.
The P0 incident is closed from Delivery's side.
Verification gates
Delivery passed 592 tests with one integration test skipped, all eight lock-state mapping tests, TypeScript typecheck, runtime smoke, and the focused missing-action self-registration regression test.
References
memos/2026/2026-08-02-revenue-delivery-lesson-charge-apply-auth-missing.mdmemos/2026/2026-08-02-revenue-negative-balance-correction-policy-amendment.mdadrs/ADR-0043-negative-credit-balances-do-not-block-corrections.md