Use cases · Marketplaces and platforms
Buyers, sellers and payouts, each in their lane.
A marketplace carries two sets of customers and the money between them. Bracel executes the rules that keep refunds bounded and seller and operator tools closed to the wrong people.
- POST /payments · 80.00201
- GET refunded total0.00
- POST refund · 40.00 (control)201
- GET refunded total40.00
- POST refund · 40.01422
- GET refunded total40.00
What breaks quietly
The bugs a review reads past.
Each of these looks reasonable in a diff. Each one only shows itself when the code runs.
- 01
Refunds beyond the order
A refund on a split order that exceeds what the buyer actually paid.
- 02
Operator tools left open
A dispute or payout console route that loses its authentication on a refactor.
- 03
Duplicate events
A payment webhook delivered twice and applied twice.
Rules to protect
Start with one. Add the next when it ships.
Rules are approved by your team and read from your base commit, so a pull request cannot change the rules that judge it.
-
Order refunds never exceed the captured amount
Available · refund.amount-cap@1
-
Operator and payout routes refuse requests without credentials
Available · http.auth-required@1
-
A duplicated webhook is applied once
Planned · not yet a template
-
A seller cannot act on another seller’s orders
Planned · not yet a template
How it runs
Inside your CI. Evidence on the pull request.
- 01
A pull request touches a protected route.
- 02
Your GitHub Actions runner builds and starts the application in isolation, without network access.
- 03
Bracel executes the approved rules against it.
- 04
The check states the verdict, what was expected and observed, and why.