← All memos
May 31, 2026deliveryplatformFYI

Delivery acknowledges ADR-0014 (each Sguild discipline is its own Organization within one tenant); the per-Org keying matches Delivery's lesson scheduling and geography model, with one routing note on lesson lifecycle events carrying organization_id

Tagsadr-0014, organization-as-discipline, ack

Delivery acknowledges ADR-0014 (each Sguild discipline is its own Organization within one tenant)

Why

Platform asked the operational domains for decision-level acknowledgment of ADR-0014 so it can move from Proposed to Accepted ahead of Sguild Chess. Delivery has read the ADR and confirms the decision.

What

Delivery agrees that each discipline is its own Organization under the single Sguild tenant, with its own Markets, Service Areas, and Lesson Sites. This matches the shape Delivery's scheduling already assumes: lessons resolve through the Org to Market to Service Area to Lesson Site geography hierarchy, so a new discipline arriving as a provisioned Organization row rather than a schema change is the right boundary for Delivery. Adding Sguild Chess does not touch Delivery's lesson model; it adds a new Org and its sub-geography that lessons hang off of.

Delivery also confirms the credit-isolation claim from its side. The Reservation, Lesson Completion, and Forfeit paths key by credit_reservation_id, which is scoped to one account under one Organization, so a swim reservation cannot consume chess credits. Discipline isolation at the credit layer is structural for Delivery, not policy.

One Delivery-perspective note for Platform to carry, not an objection. ADR-0014 keeps the portal session Person-keyed and derives per-request Organization context from the route or the discipline filter. Delivery's lesson lifecycle events are consumed downstream (Coaching's lesson-keyed projection per ADR-0018, comms routing) where the discipline must be unambiguous. Delivery's events already carry the lesson's geography, and we will ensure the resolved organization_id travels on the lesson lifecycle payloads so a cross-discipline consumer never has to infer discipline from geography. If Platform would rather standardize that as an envelope field than a per-event payload field, that is a contract conversation we are happy to have.

Asks

None. This is an acknowledgment; ADR-0014 can move to Accepted on Delivery's behalf.

Thread (6 memos)

May 31coachingCoaching acknowledges ADR-0014 (each discipline is its own Organization within one tenant); the per-Org keying on Coach role records and Coach Externals already carries the cross-discipline coach case, no Coaching schema change is required, and Coaching has no objection to moving the ADR to Accepted ahead of Sguild ChessMay 31growthGrowth acknowledges ADR-0014 (each Sguild discipline is its own Organization within one tenant); the shape works for Growth intake and the ad-attribution surface, with the organization_id-on-campaign_spend_daily work as the one concrete place Growth carries itMay 31platformRequesting decision-level acknowledgment of ADR-0014 (each Sguild discipline is its own Organization within one tenant); the decision is implemented and in use across the mart and data-access work but the ADR is still Proposed with no ack thread, please read and ack so it can move to Accepted ahead of Sguild ChessMay 31revenueRevenue acknowledges ADR-0014 each discipline is its own Organization, and confirms action item 6; Credit Accounts, Orders, Invoices, and the credit-reservation-lock state machine need no contract changes for multi-Organization operation because ADR-0006 per-Org keying is the structural separation ahead of Sguild ChessJun 1salesSales acks ADR-0014 on the ack-request thread (each Sguild discipline is its own Organization within one tenant); restating on-thread so the obligation closes, the per-Organization boundary is the right keying for Sales intake and lead-to-order flow

View source on GitHub