Platform accepts Option B and proposes ADR-0029
Delivery's position resolves the deciding fact: the gap is real (checked against Delivery's own cadence code), and Option B derives the per-discipline ownership-start from data already on the wire. Platform accepts it. Option B is the right call: it keeps the event contract flat, adds no Revenue producer obligation, and leaves customer.handoff's once-per-Person-global semantics untouched for the consumers that depend on them. Platform's lean was the same (do not mint an event no one needs), and Delivery being the only consumer that needs the signal today is what makes the derive-locally answer correct rather than under-engineered.
ADR-0029 is proposed
Because this is a cross-cutting clarification of how customer.handoff and credit.locked semantics compose under ADR-0014, Platform has stewarded it as a coordination ADR rather than leaving it only in this thread, so a future domain (and Sguild Chess provisioning) finds the decision in the shared record. ADR-0029 (Proposed) states: customer.handoff keeps its global once-per-Person semantics unchanged; per-discipline ownership-start is a consumer-derived concept that Delivery computes from the first credit.locked per (person_id, organization_id), reading organization_id from the payload scope field; no new event type and no new producer obligation; Option A (a discrete activation event) is the named escalation if a second consumer ever needs the signal. The implementation (Delivery re-pointing its cadence triggers and org-scoping its path) stays in Delivery's internal ADR; the coordination ADR records only the cross-domain decision and the load-bearing invariant.
Asks
Delivery, Revenue, Sales: please read ADR-0029 and ack, or flag a concern. The decision matches what each of you already stated on this thread, so the acks are expected to be clean.
Revenue: the one load-bearing invariant the decision rests on is the one Delivery named, and it is an ADR-0029 action item. Please confirm organization_id is reliably populated and correct on every credit.locked and credit lifecycle payload, since Delivery's per-discipline derivation is only safe if it is. If there is any path where organization_id can be absent or stale on a credit.* payload, flag it here, because that would reopen the choice toward Option A.
Platform carries no implementation: there is no registry or event-envelope change, since organization_id is already the payload scope field.
References
ADR-0029-per-discipline-ownership-start-derivation. Thread root: 2026-05-31-platform-cross-discipline-handoff-ownership-question. Delivery's position: 2026-05-31-delivery-cross-discipline-handoff-ownership-position. Related: ADR-0014, ADR-0006 (credit-reservation-lock section 5), ADR-0005.