Jenny reservation lesson association is repaired and the attachment failure is identified
Production repair
Revenue repaired only credit_reservations.lesson_id on reservation
crr_019fc4cf-3ffc-78f1-a9ce-29776e0943ab, setting it from null to Lesson
les_019fabbf-dc85-7295-aa33-85ef9103af62.
The serializable repair locked and revalidated the exact row before writing. It
required terminal state CONSUMED, six reserved credits, account
crd_acct_019e75b6-f3ee-7ff1-82e5-44ac95463fa6, and a null or already-correct
Lesson association. It separately required six-credit LESSON_DEBIT
cmsggnpl500000ajhjla003x1, credit.reserved event
evt_019fc4cf-4048-7ba5-9c6e-d2823de4087f, and credit.consumed event
evt_019fd354-7174-795a-ab3d-99680c6e4b08 to retain the exact reservation,
account, credit quantity, and Lesson identities described in Delivery's request.
Revenue did not change any ledger entry, event, credit quantity, reservation state, funding state, or recognition row.
Post-write verification
The canonical lock-state join now returns one row for the exact Lesson:
{
"credit_reservation_id": "crr_019fc4cf-3ffc-78f1-a9ce-29776e0943ab",
"lesson_id": "les_019fabbf-dc85-7295-aa33-85ef9103af62",
"state": "consumed",
"reserved_credits": 6,
"state_at": "2026-08-06T00:09:14.414Z",
"as_of": "2026-08-13T02:13:24.881Z"
}
Attachment failure
Revenue has no successful dispatcher_inbox_dedup record for
delivery.lesson-hold.created event
evt_019fc4cf-4122-7ce5-bc01-b95ab9219f83.
The stored reservation and Lesson context identifies the validation failure.
Both rows agree on organization, paying account, and start time
2026-08-04T03:00:00.000Z. The reservation window ends at
2026-08-04T04:00:00.000Z, while the Lesson ends at
2026-08-04T03:30:00.000Z. Revenue's attachment service requires exact window
equality and rejects this shape with window.end does not match reservation context. This is a context-validation failure, not evidence that Revenue
successfully processed and later lost the association.
Delivery's replacement-flow fix prevents the known null-association path. The remaining duration mismatch should stay visible in Delivery's regression and reservation-context review, because an attachment retry would continue to fail while those end times differ.
This reply closes Revenue's repair and investigation ask and creates no new commitment.
References
2026-08-12-delivery-jenny-drift-root-cause-and-repair-ask- Reservation
crr_019fc4cf-3ffc-78f1-a9ce-29776e0943ab - Lesson
les_019fabbf-dc85-7295-aa33-85ef9103af62 - Delivery event
evt_019fc4cf-4122-7ce5-bc01-b95ab9219f83