Issue #3610001: Settle against what the order owes: Payable carries authorize and capture amounts
Follow-up to kessai #3609963 (merged): kessai now mirrors the provider and never invents an amount, so a free booking that needs a card on file authorizes a real amount (its deposit) rather than a hard-coded verification charge. This aligns orchestra_payment with that model.
Payablecarries two amounts:authorizeAmount(held at the gateway) andcaptureAmount(taken at settle), validated so the capture never exceeds what was authorized. Equal for a plain charge; they differ when a step authorizes more than it will take (a free booking that authorizes a deposit but owes nothing).- The payment step authorizes
authorizeAmount. TheSettleTaskre-resolves the payable from the order through the same resolver and captures what the order owes now (zero owed releases the authorization), so the outcome comes from the order, not from the amount held at the gateway. - A shared
PayableResolverConfigTraitcarries the resolver picker, its settings, and the resolve helper, used by both the payment interaction and the settle task.
Kernel tests updated and green.