@pwngh/economy-lab
    Preparing search index...

    Interface Unit

    The stores one operation's handler may write to, all inside one database transaction; checkpoints is absent because only the worker writes it.

    Storage for atomicity and the outbox/inbox.

    interface Unit {
        accruals: AccrualStore;
        balances?: Map<string, Amount>;
        entitlements: EntitlementStore;
        idempotency: IdempotencyStore;
        inbox: InboxStore;
        ledger: Ledger;
        outbox: OutboxStore;
        promos: PromoStore;
        sagas: SagaStore;
        sales: SaleStore;
        subscriptions: SubscriptionStore;
        trust: TrustStore;
    }
    Index
    accruals: AccrualStore
    balances?: Map<string, Amount>

    Cached so the funds screen and handler share one read; unset outside the pipeline.

    entitlements: EntitlementStore
    idempotency: IdempotencyStore
    inbox: InboxStore
    ledger: Ledger
    outbox: OutboxStore
    promos: PromoStore
    sagas: SagaStore
    sales: SaleStore
    subscriptions: SubscriptionStore
    trust: TrustStore