@cfxlabsinc/b2b-services
    Preparing search index...
    PaymentInstrumentSearchItem: PaymentInstrument & PaymentInstrumentSearchColumns

    A search row: the instrument union plus its resolved customer + entity columns.

    The consumer and admin searches project exactly this shape, which is what lets them share one cache namespace and one cached value type. The consumer search knows customerId from its own required argument and joins b2b.customer only for customerName.