Append-only version log for vendor changes. Each row is a snapshot of
(name, bankId) plus an optional note describing the change. No
immutability trigger; population is wired up by the service layer. The
parent product_vendor.current_version_id points at the live row here
(NOT NULL, deferrable FK in migration
20260710182509_add_product_vendor_current_version_id).
product_quote.vendor_version_id FKs into this table to freeze the vendor
identity snapshot at quote time; the fee and limit snapshots ride on
product_quote.route_version_id instead (both are per-route).
Append-only version log for vendor changes. Each row is a snapshot of (
name,bankId) plus an optionalnotedescribing the change. No immutability trigger; population is wired up by the service layer. The parentproduct_vendor.current_version_idpoints at the live row here (NOT NULL, deferrable FK in migration20260710182509_add_product_vendor_current_version_id).product_quote.vendor_version_idFKs into this table to freeze the vendor identity snapshot at quote time; the fee and limit snapshots ride onproduct_quote.route_version_idinstead (both are per-route).