[object Object]

← back to Designerwallcoverings

TK-10484: fix settlement-flag applier (ALTER before snapshot; drop broken .catch) — applied 97 rows

c9c34b68e4821338f431752000ab2be0d60ffd01 · 2026-09-24 12:07:06 -0700 · Steve Abrams

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Files touched

Diff

commit c9c34b68e4821338f431752000ab2be0d60ffd01
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Thu Sep 24 12:07:06 2026 -0700

    TK-10484: fix settlement-flag applier (ALTER before snapshot; drop broken .catch) — applied 97 rows
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
 scripts/tk10484-settlement-flag-apply.mjs | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/scripts/tk10484-settlement-flag-apply.mjs b/scripts/tk10484-settlement-flag-apply.mjs
index d1f9b78..c21fb62 100644
--- a/scripts/tk10484-settlement-flag-apply.mjs
+++ b/scripts/tk10484-settlement-flag-apply.mjs
@@ -78,12 +78,9 @@ if (mode === 'rollback') {
 // --- apply ---
 const ts = new Date().toISOString().replace(/[:.]/g, '-');
 const restorePath = join(ROOT, 'data', `tk10484-settlement-flag-restore-${ts}.json`);
-const skus = rows.map((r) => r.sku.replace(/'/g, "''"));
-const snapshot = psql(
-  `\\copy (SELECT sku, settlement_status, settlement_flag_reason, settlement_cody_flag
-     FROM jeffrey_stevens_catalog WHERE sku IN (${skus.map((s) => `'${s}'`).join(',')})) TO STDOUT WITH CSV HEADER`
-).catch?.(() => '') || '';
-writeFileSync(restorePath, JSON.stringify({ ts, skus: rows.map((r) => r.sku) }, null, 2));
+// Pre-state = the settlement_* columns do not exist; --rollback (DROP COLUMN) is the complete,
+// column-level undo, so no row-level snapshot is needed. Record the affected sku set for the ledger.
+writeFileSync(restorePath, JSON.stringify({ ts, undo: '--rollback drops the 4 settlement_* columns', skus: rows.map((r) => r.sku) }, null, 2));
 
 let sql = `BEGIN;
 ALTER TABLE jeffrey_stevens_catalog

← c39fa7b TK-10484: regenerate JStevens settlement sweep (97 candidate  ·  back to Designerwallcoverings  ·  auto-data-snapshot: 2026-09-24T12:18:37 (2 data files) — $OU 4faa847 →