CluPilotCloud/app
nexxo 40532c6e02 Put the money gate in the class that promises it
AdoptStripePrice says in its own docblock that no adoption can move money, and
could compare three properties. The four that also decide what a Price charges
were filtered in HttpStripeClient — where FakeStripeClient cannot express them,
so no test of the class could reach the promise it makes, and a third client
implementation would drop the check in silence.

The client reports them now and the caller decides. Absent keys stay Stripe's
defaults, which is the direction that matters: read the other way round the gate
refuses every legitimate price and recognition becomes a no-op nothing alerts on.

And the unexplained-orphan warning is a state, not an event. It fired on every
sweep and every customer booking for as long as the orphan existed; once a day
per price is enough to act on.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 17:04:25 +02:00
..
Actions Stop charging VAT to the customers who owe us none 2026-07-30 02:15:41 +02:00
Console Put the price recognition back, all 3526 lines of it 2026-07-30 16:35:55 +02:00
Exceptions Refuse a portal login for an address that already belongs to an operator 2026-07-28 14:42:16 +02:00
Http Sell the year as well as the month, and say what it saves 2026-07-30 15:44:35 +02:00
Jobs Let the export have as many destinations as somebody wants 2026-07-29 02:43:15 +02:00
Listeners Keep a register of what was sent, and answer the customer from here 2026-07-29 21:02:36 +02:00
Livewire Take the address by field, fix the customer type, ask why they leave 2026-07-30 16:41:32 +02:00
Mail Accept terms instead of a start date, and fix the sender no server accepts 2026-07-30 15:22:35 +02:00
Models Take the address by field, fix the customer type, ask why they leave 2026-07-30 16:41:32 +02:00
Notifications Add the SSH identity to the vault, and give deployment config a console page 2026-07-29 00:52:44 +02:00
Observers Say the same thing to the customer, the register and the bank 2026-07-30 01:30:24 +02:00
Policies Move the console's identity out of the customer table 2026-07-28 10:31:43 +02:00
Providers Ask the EU register whether a VAT number is real 2026-07-29 22:42:29 +02:00
Provisioning Fix nine defects in the provisioning pipelines 2026-07-30 01:34:55 +02:00
Services Put the money gate in the class that promises it 2026-07-30 17:04:25 +02:00
Support Make mails readable on a phone, and let an operator look at one 2026-07-30 14:50:37 +02:00