Discussion about this post

User's avatar
Jonah Gray's avatar

This is a strong example of why the trace and the authorization gate need different jobs. A trace can explain entity selection and policy lookup after the fact, but the payment effect should only be reachable through a mechanical authorization contract that checks the current entity, policy version, approvals, and idempotency key before calling the provider. Then the observable event records which contract accepted or rejected the effect. That matters because a perfectly instrumented wrong decision is still a wrong decision. Telemetry helps diagnose it. The contract has to prevent it.

No posts

Ready for more?