Money & AI boundaries
12 Money & AI boundaries
Read the result before assuming an action happened.
A financial record is not automatically a transfer. A generation request is not automatically a suggestion. Homeroom has explicit refusal and no-action results that belong in the product description, including the payment and AI workflows below.
Pending portrait payouts are held when payments are off.
For a pending payout, the portrait payout workflow checks whether the payment connection can settle before it mutates payout records and again before marking the payout executed. With payments off, that pending action is refused: nothing is transferred and the payout is not marked settled. A held payout should remain work for the responsible financial operator to review.
This is a specific boundary on the payout action. Other order or test workflows can create records, so a refusal must not be generalized into a claim that nothing anywhere in the platform is saved. Processor test activity also remains test activity. It does not establish that real money reached a school or studio.
A connection has to produce the result it promises.
The Stripe billing-portal path requires the relevant account, customer and portal connection. An unavailable connection returns no portal link. Missing account and customer information have their own refusal states. Staff should distinguish a successful link creation from a screen that merely offers a billing action.
The bank-debit method workflow can record method metadata without making a debit. Its activation path refuses when the bank-debit rail is disabled; the inspected enabled branch still reports the method as queued, with the rail unprovisioned and no charge. Recording a preferred method does not establish an active collection arrangement.
Tuition auto-draft requests validate the proposed installment information but return that the schedule was not recorded and provide no saved schedule reference. Fixed empty tuition views are not evidence of a family’s real balance. Do not treat this workflow as tuition collection or a working automatic payment plan.
| Requested action | Result to expect at the stated boundary |
|---|---|
| Pending portrait payout with payments off | Refused; no transfer and no settlement mutation |
| Billing portal with an unavailable connection | Refused; no portal link |
| Bank-debit activation in the inspected workflow | Refused when disabled; otherwise queued with no debit |
| Valid tuition auto-draft request | Schedule validated; not recorded |
| Mailbox AI draft or summary | Refused; no generated message |
| Classroom AI generation | Refused; template generation is a separate path |
AI suggestions have named limits.
Mailbox AI draft suggestions and thread summaries are off. The request returns that the engine is not wired and produces no generated message. Classroom AI generation is also off, with a held-enablement or unprovisioned-engine refusal. These are specific results, not invitations to infer that a hidden switch in the request will generate the content.
Caption and theme suggestions have a different configuration boundary: an unconfigured provider causes the request to be refused. Configured provider paths exist, and returned suggestions are not automatically applied. A suggested caption still needs the responsible editor to verify names, context and accuracy; a theme choice still needs editorial acceptance.
Begin with the work
Bring us the part
of school life you want to improve.
A roster that needs careful reconciliation. A publication program with several titles. A picture day with too many loose ends. Tell us who does the work, what they use today and what a reviewed result should look like. We can discuss the relevant workflow, its requirements and its limits.
Talk through your school’s needsAn inquiry, with room for your actual questions. No activation or purchase is implied.