- admin proxy: 25s timeout, body guards, structured failure logs - cart: addItem enforces stock cap (409 INSUFFICIENT_STOCK), UI clamps qty - tpv selfpay: hide sidebar/discounts/save-pending, rename button, receipt-settings 400 fix - pos admin: quick products slot count aligned to 8 - returns: human-readable history message + metadata jsonb (migrations 064-065) + admin fallback formatter - storefront: product card white background - product page: remove duplicate stock label under add-to-cart button
21 lines
593 B
JavaScript
21 lines
593 B
JavaScript
/**
|
|
* F-138: orders_order_history.metadata holds the structured payload for
|
|
* machine-readable events (returns, refunds, etc.) so we can keep the
|
|
* human-visible `message` column short and friendly while preserving all the
|
|
* detail that internal tooling needs.
|
|
* @param {import('node-pg-migrate').MigrationBuilder} pgm
|
|
*/
|
|
export const up = (pgm) => {
|
|
pgm.sql(`
|
|
ALTER TABLE orders_order_history
|
|
ADD COLUMN IF NOT EXISTS metadata jsonb NULL
|
|
`);
|
|
};
|
|
|
|
export const down = (pgm) => {
|
|
pgm.sql(`
|
|
ALTER TABLE orders_order_history
|
|
DROP COLUMN IF EXISTS metadata
|
|
`);
|
|
};
|