theres never any reason for a committee to set rates
extend the minimal bivector transaction json with item, debitor_approval_time, creditor_approval_time fields:
{ "debitor": "john", "creditor": "mary", "price": "1.00", "quantity": "1", "item": "bottled water", "debitor_approval_time": "2026-05-16T12:00:05Z", "creditor_approval_time": "2026-05-16T12:00:00Z" }
the bivector transaction records number ownership as moving in the debitor → creditor direction with goods & services (item) ownership moving in the opposite direction
now stream every settled bivector and contract them with sum credit / sum debit - 1 per account
then average across accounts
SELECT AVG((revenue - expense) / expense) * 100 AS risk_free_rate FROM margin_per_account WHERE expense > 0;
the percentage that returns is the risk-free rate