Designer Wallcoverings

repo: ~/Projects/Designer-Wallcoverings · 1739 commits · 60 in last 24h, 198 in last 7d · ▄▅▄▂▂▃█

Search the build

1739 commits indexed

  1. f36bace7 2026-07-28 auto-save: 2026-07-28T08:58:52 (9 files) — shopify/scripts/data/tk135/fullrun-vision.tsv shopify/staged/free-samples-function/extensions/free-samples-discount/package.json shopify/staged/free-samples-function/extensions/free-samples-discount/shopify.extension.toml shopify/staged/free-samples-function/shopify.app.toml shopify/staged/free-samples-function/extensions/free-samples-discount/package-lock.json
  2. 020c2ae7 2026-07-28 auto-save: 2026-07-28T08:28:39 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  3. 45e9a723 2026-07-28 auto-save: 2026-07-28T07:58:26 (4 files) — shopify/scripts/data/tk135/active-tags.tsv shopify/scripts/data/tk135/fullrun-vision.tsv shopify/scripts/data/tk135/normalize-worklist.tsv shopify/scripts/data/tk135/palette-proposed.tsv
  4. dca7c0a4 2026-07-28 auto-save: 2026-07-28T07:28:16 (4 files) — shopify/scripts/data/tk135/active-images.tsv shopify/scripts/data/tk135/fullrun-vision.tsv shopify/scripts/data/tk135/label-prefixed.tsv shopify/scripts/data/tk135/palette-proposed.tsv
  5. 6984f4c6 2026-07-28 Track shopify/scripts/lib operational source (registry+guards); was hidden by python venv lib/ ignore
  6. f8969b83 2026-07-28 TK-10002: forward-only variant-SKU collision guard (skuTakenOnActiveProduct)
  7. fc665d1c 2026-07-28 TK-135: add Shape: to label normalizer strip set
  8. 28363744 2026-07-28 TK-135: deeper palette (k16/top8) to capture all pattern colors; fix active-images 2-col pull
  9. f722f343 2026-07-28 auto-save: 2026-07-28T06:58:06 (3 files) — shopify/scripts/data/tk135/fullrun-vision.tsv shopify/scripts/data/tk135/label-prefixed.tsv shopify/scripts/data/tk135/style-prefixed.tsv
  10. 9fceefa7 2026-07-28 TK-135: multi-label normalizer — strip Style:/Motif:/Material:/Collection:/Colorway: to bare (hardened, timestamped, gated)
  11. a35d3f5d 2026-07-28 auto-save: 2026-07-28T06:27:56 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  12. 2d87cf65 2026-07-28 auto-save: 2026-07-28T05:57:47 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  13. 9dc35539 2026-07-28 auto-save: 2026-07-28T05:27:36 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  14. c1f36bdb 2026-07-28 auto-save: 2026-07-28T04:57:26 (2 files) — shopify/scripts/cadence/data/activations-2026-07-28.jsonl shopify/scripts/data/tk135/fullrun-vision.tsv
  15. 8d4d4f29 2026-07-28 auto-save: 2026-07-28T04:27:17 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  16. 5ff1f417 2026-07-28 auto-save: 2026-07-28T03:57:08 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  17. 76015b7d 2026-07-28 auto-save: 2026-07-28T03:26:56 (4 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json shopify/scripts/data/tk135/fullrun-vision.tsv DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260728T030002.json shopify/scripts/data/tk135/material-run.json
  18. c085575c 2026-07-28 auto-save: 2026-07-28T02:56:47 (2 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/data/tk135/fullrun-vision.tsv
  19. bf9da78c 2026-07-28 auto-save: 2026-07-28T02:26:37 (2 files) — scripts/room-image-push/ledger.json shopify/scripts/data/tk135/fullrun-vision.tsv
  20. 19590843 2026-07-28 auto-save: 2026-07-28T01:56:27 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  21. 6d8f4cfc 2026-07-28 auto-save: 2026-07-28T01:26:17 (2 files) — shopify/scripts/data/tk135/fullrun-vision.tsv shopify/scripts/data/bucketB/longtail-land-20260728T000105.json
  22. bcf23af8 2026-07-28 auto-save: 2026-07-28T00:56:07 (2 files) — shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl shopify/scripts/data/tk135/fullrun-vision.tsv
  23. 009bd63b 2026-07-28 auto-save: 2026-07-28T00:25:56 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  24. dd115bb7 2026-07-27 auto-save: 2026-07-27T23:55:46 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  25. d37283a4 2026-07-27 auto-save: 2026-07-27T23:25:34 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  26. 2bc78a7c 2026-07-27 auto-save: 2026-07-27T22:55:20 (2 files) — shopify/scripts/data/tk135/fullrun-vision.tsv shopify/scripts/cadence/data/activations-2026-07-28.jsonl
  27. 80e46810 2026-07-27 auto-save: 2026-07-27T22:25:06 (1 files) — shopify/scripts/data/tk135/fullrun-vision.tsv
  28. 512f21b7 2026-07-27 TK-135: harden apply scripts — gqlR retries 502/gateway/network, null-safe loop, per-item try/catch, no crash on transient errors
  29. 02ef098b 2026-07-27 auto-save: 2026-07-27T21:54:54 (2 files) — shopify/scripts/data/tk135/fullrun-vision.tsv shopify/scripts/data/tk135/collection-run.json
  30. 5571b086 2026-07-27 auto-save: 2026-07-27T21:24:43 (3 files) — shopify/scripts/data/tk135/fullrun-title.tsv shopify/scripts/data/tk135/fullrun-untagged.tsv shopify/scripts/data/tk135/fullrun-vision.tsv
  31. 7396cb9e 2026-07-27 auto-save: 2026-07-27T20:54:34 (3 files) — shopify/scripts/data/tk135/active-full.tsv shopify/scripts/data/tk135/material-proposed-unmatched.tsv shopify/scripts/data/tk135/material-proposed.tsv
  32. d1a61097 2026-07-27 TK-135: generic descriptor apply — bare tagsAdd + per-SKU *_tagged_at timestamp (gated)
  33. fcb3debd 2026-07-27 TK-135: material classifier — 24,581 bare primary-material tags (composition + title, $0 deterministic)
  34. 7ff5efd7 2026-07-27 auto-save: 2026-07-27T20:24:23 (9 files) — shopify/scripts/data/tk135/audit-grid.png shopify/scripts/data/tk135/audit-thumbs/ shopify/scripts/data/tk135/bakeoff-grid.png shopify/scripts/data/tk135/bakeoff-thumbs/ shopify/scripts/data/tk135/material-sample200-unmatched.tsv
  35. 16012764 2026-07-27 TK-135: stamp custom.color_normalized_at per SKU (durable dedup + audit) on normalize
  36. 5d19295d 2026-07-27 TK-135: motif classifier (bare)
  37. 224468c3 2026-07-27 TK-135: collection backfill (bare)
  38. e061f1ea 2026-07-27 TK-135: style classifier (bare)
  39. 2b4057cf 2026-07-27 auto-save: 2026-07-27T19:54:12 (9 files) — shopify/scripts/data/tk135/active-images.tsv shopify/scripts/data/tk135/active-tags.tsv shopify/scripts/data/tk135/motif-title.tsv shopify/scripts/data/tk135/normalize-worklist.tsv shopify/scripts/data/tk135/sample-150.tsv
  40. 35de4b03 2026-07-27 TK-135: comma-separate tags in normalize worklist (not pipe)
  41. 51ad1beb 2026-07-27 TK-135: unified color-tag normalizer — strip all color:/Color: to bare catalog-wide + our bare color + metafield (gated)
  42. 1ad1dff4 2026-07-27 TK-135: BARE-VALUE color tags (no color: prefix) + self-heal removes old color:Bucket; Shopify-authoritative
  43. 525345fa 2026-07-27 auto-save: 2026-07-27T19:23:22 (3 files) — package-lock.json shopify/scripts/data/tk135/motif-sample150.tsv shopify/scripts/data/tk135/vtest/
  44. 7421d43f 2026-07-27 chore: v1.2.7 (session close — cleanWallpaper brand-aware fleet fix)
  45. f26f24ae 2026-07-27 TK-135: fix PG-mirror trigger abort — skip DW-prefix mfr_sku rows + make mirror step non-fatal (Shopify authoritative)
  46. f6f5377e 2026-07-27 TK-135: add resume (progress log) to palette apply; canary 20 verified live (metafield+tag ok)
  47. 97023338 2026-07-27 auto-save: 2026-07-27T18:53:10 (2 files) — shopify/scripts/data/tk135/palette-proposed.tsv shopify/scripts/data/tk135/apply-canary.json
  48. 7ff04f87 2026-07-27 TK-00134: fix documented cleanWallpaper snippet in CLAUDE.md to brand-aware
  49. 8661e2fa 2026-07-27 TK-00134: patch last 3 blanket cleanWallpaper() copies to brand-aware
  50. 930575df 2026-07-27 auto-save: 2026-07-27T18:22:43 (15 files) — shopify/scripts/data/tk135/color-proposed.tsv DW-Programming/ShopifyCalendarNext/scripts/rescan-scheduled-posts.ts.backup-1785201549 DW-Programming/anna-french-shopify-push.js.backup-1785201549 DW-Programming/as-creation-shopify-push.js.backup-1785201549 DW-Programming/command54-shopify-push.js.backup-1785201549
  51. 818dd15e 2026-07-27 TK-00134 TaskC: make cleanWallpaper() brand-aware + derived-word-safe across all 12 helper copies (preserve 17 brands, skip wallpapered/wallpapering, case-preserving)
  52. d33e8553 2026-07-27 TK-135: gated apply script (metafield color_palette + color: tag, PG-first, dry-run default)
  53. 6853b03a 2026-07-27 TK-135: image-based hex+% palette extractor (bg-discount, HSV naming, $0); 200-test 4.7s/0err
  54. dae671df 2026-07-27 TK-135: free/local Color-slice derivation dry-run (5,612/11,259 matched, $0)
  55. 09ce4291 2026-07-27 TK-17: Batch B scale (793 Hollywood roll variants) + Batch A canary (20 quote-tags) live run-reports
  56. b7a4cdc5 2026-07-27 auto-save: 2026-07-27T17:22:24 (1 files) — shopify/scripts/cadence/data/activations-2026-07-27.jsonl
  57. 69f163b6 2026-07-27 auto-save: 2026-07-27T16:52:13 (2 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/data/tk17/
  58. 54898819 2026-07-27 TK-17: add reversible Batch A (quotes tag) + Batch B (Hollywood roll variant) execution scripts (dry-run default)
  59. 4a9a4727 2026-07-27 auto-save: 2026-07-27T14:21:14 (1 files) — mailers/cc-api/import-fm-clients.js
  60. 02da14bc 2026-07-27 auto-save: 2026-07-27T11:20:11 (1 files) — shopify/scripts/cadence/data/activations-2026-07-27.jsonl
  61. 7ca6b6ac 2026-07-27 auto-save: 2026-07-27T05:18:10 (1 files) — shopify/scripts/cadence/data/activations-2026-07-27.jsonl
  62. 05addfe0 2026-07-27 auto-save: 2026-07-27T03:17:36 (1 files) — DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260727T030004.json
  63. 2d00d5a9 2026-07-27 auto-save: 2026-07-27T02:47:28 (1 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json
  64. 0585c799 2026-07-27 auto-save: 2026-07-27T02:17:19 (1 files) — scripts/room-image-push/ledger.json
  65. 18ce7b51 2026-07-27 auto-save: 2026-07-27T01:47:10 (1 files) — shopify/scripts/data/bucketB/longtail-land-20260727T000104.json
  66. c104dbc7 2026-07-27 auto-save: 2026-07-27T00:46:55 (1 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl
  67. cd75732e 2026-07-26 auto-save: 2026-07-26T23:16:32 (1 files) — shopify/scripts/cadence/data/activations-2026-07-27.jsonl
  68. 700d29ec 2026-07-26 auto-save: 2026-07-26T20:45:50 (2 files) — shopify/package-lock.json shopify/package.json
  69. 0f70c3af 2026-07-26 auto-save: 2026-07-26T20:15:38 (3 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/vendors.js shopify/scripts/cadence/data/cadence-plan-am-2026-07-27.json
  70. 2da85281 2026-07-26 TK-31: pr-quote-only-tag fixes wrong tag (quotes->contact-for-price) + Kravet MAP exclusion
  71. 0c221aaf 2026-07-26 auto-save: 2026-07-26T17:14:46 (1 files) — shopify/scripts/cadence/data/activations-2026-07-26.jsonl
  72. cd089016 2026-07-26 auto-save: 2026-07-26T16:44:36 (1 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json
  73. bc605fca 2026-07-26 auto-save: 2026-07-26T15:44:17 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  74. 4f4bb495 2026-07-26 auto-save: 2026-07-26T14:44:02 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  75. d66a4442 2026-07-26 auto-save: 2026-07-26T13:43:45 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  76. 66d2b2cd 2026-07-26 auto-save: 2026-07-26T12:43:27 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  77. a9547e7d 2026-07-26 auto-save: 2026-07-26T11:43:10 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  78. 76c39f9f 2026-07-26 auto-save: 2026-07-26T11:13:01 (1 files) — shopify/scripts/cadence/data/activations-2026-07-26.jsonl
  79. 9f301970 2026-07-26 auto-save: 2026-07-26T10:42:53 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  80. 96f1f08d 2026-07-26 auto-save: 2026-07-26T09:42:34 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-26.jsonl
  81. 46f81baa 2026-07-26 auto-save: 2026-07-26T05:10:45 (1 files) — shopify/scripts/cadence/data/activations-2026-07-26.jsonl
  82. 63ad1b21 2026-07-26 auto-save: 2026-07-26T03:10:13 (1 files) — DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260726T030004.json
  83. ccc872ae 2026-07-26 auto-save: 2026-07-26T02:40:05 (2 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json scripts/room-image-push/ledger.json
  84. 10e8e885 2026-07-26 auto-save: 2026-07-26T01:39:48 (1 files) — shopify/scripts/data/bucketB/longtail-land-20260726T000104.json
  85. 1134c75f 2026-07-26 auto-save: 2026-07-26T01:09:40 (1 files) — shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  86. 14e12ac2 2026-07-25 auto-save: 2026-07-25T23:09:06 (1 files) — shopify/scripts/cadence/data/activations-2026-07-26.jsonl
  87. 105060a1 2026-07-25 auto-save: 2026-07-25T17:07:29 (1 files) — shopify/scripts/cadence/data/activations-2026-07-25.jsonl
  88. 74aee2c9 2026-07-25 auto-save: 2026-07-25T16:37:21 (1 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json
  89. 16b302e0 2026-07-25 auto-save: 2026-07-25T11:05:48 (1 files) — shopify/scripts/cadence/data/activations-2026-07-25.jsonl
  90. df8a7e48 2026-07-25 auto-save: 2026-07-25T05:03:47 (1 files) — shopify/scripts/cadence/data/activations-2026-07-25.jsonl
  91. 6065b5ca 2026-07-25 auto-save: 2026-07-25T03:03:06 (1 files) — DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260725T030004.json
  92. 665e5724 2026-07-25 auto-save: 2026-07-25T02:32:56 (2 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json scripts/room-image-push/ledger.json
  93. 10af2f8f 2026-07-25 auto-save: 2026-07-25T01:32:27 (1 files) — shopify/scripts/data/bucketB/longtail-land-20260725T000105.json
  94. 6cf8fac4 2026-07-25 auto-save: 2026-07-25T01:02:17 (2 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  95. fac2b709 2026-07-24 auto-save: 2026-07-24T23:00:12 (1 files) — shopify/scripts/cadence/data/activations-2026-07-25.jsonl
  96. 24798781 2026-07-24 auto-save: 2026-07-24T17:58:56 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-25.jsonl
  97. 8fc9be46 2026-07-24 auto-save: 2026-07-24T16:58:41 (3 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/cadence/data/activations-2026-07-24.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  98. d9adb554 2026-07-24 auto-save: 2026-07-24T15:58:29 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  99. b04ec892 2026-07-24 auto-save: 2026-07-24T14:58:16 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  100. 73dfaf12 2026-07-24 auto-save: 2026-07-24T13:58:01 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  101. 236e5f23 2026-07-24 auto-save: 2026-07-24T09:57:07 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  102. 9d2d4f97 2026-07-24 auto-save: 2026-07-24T08:56:52 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  103. 8c0d96b8 2026-07-24 auto-save: 2026-07-24T07:56:29 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  104. 0a75b08b 2026-07-24 auto-save: 2026-07-24T06:55:55 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  105. 062efe05 2026-07-24 auto-save: 2026-07-24T05:55:40 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  106. 1632a7b2 2026-07-24 auto-save: 2026-07-24T04:55:26 (2 files) — shopify/scripts/cadence/data/activations-2026-07-24.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  107. b708983d 2026-07-24 auto-save: 2026-07-24T03:55:12 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  108. 8a6c720c 2026-07-24 auto-save: 2026-07-24T03:25:06 (2 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260724T030004.json
  109. 10621959 2026-07-24 auto-save: 2026-07-24T02:54:59 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl shopify/scripts/data/bucketB/rebelwalls-land-20260724T000105.json shopify/scripts/data/bucketB/scalamandre-land-20260724T000105.json shopify/scripts/data/bucketB/schumacher-land-20260724T000105.json
  110. d10799bd 2026-07-24 auto-save: 2026-07-24T02:24:51 (2 files) — scripts/room-image-push/ledger.json shopify/scripts/data/bucketB/phillipromano-land-20260724T000105.json
  111. e29b8b67 2026-07-24 auto-save: 2026-07-24T01:54:44 (4 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl shopify/scripts/data/bucketB/longtail-land-20260724T000105.json shopify/scripts/data/bucketB/mindthegap-land-20260724T000105.json shopify/scripts/data/bucketB/nina-land-20260724T000105.json
  112. a36dda71 2026-07-24 auto-save: 2026-07-24T00:54:30 (4 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl shopify/scripts/data/bucketB/hollywood-land-20260724T000105.json
  113. c9eac73f 2026-07-24 auto-save: 2026-07-24T00:24:22 (4 files) — shopify/scripts/data/bucketB/annafrench-land-20260724T000105.json shopify/scripts/data/bucketB/coordonne-land-20260724T000105.json shopify/scripts/data/bucketB/grahambrown-land-20260724T000105.json shopify/scripts/data/bucketB/harlequin-land-20260724T000105.json
  114. 413c9570 2026-07-23 auto-save: 2026-07-23T22:54:00 (2 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl shopify/scripts/cadence/data/activations-2026-07-24.jsonl
  115. 9a87e273 2026-07-23 auto-save: 2026-07-23T21:53:45 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  116. 0a64f0c9 2026-07-23 auto-save: 2026-07-23T20:53:32 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  117. 5d192c8d 2026-07-23 auto-save: 2026-07-23T19:53:19 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  118. 65d66c23 2026-07-23 auto-save: 2026-07-23T18:53:06 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  119. 186f85ef 2026-07-23 auto-save: 2026-07-23T17:52:50 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-24.jsonl
  120. d5f14c76 2026-07-23 auto-save: 2026-07-23T16:52:38 (3 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/cadence/data/activations-2026-07-23.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  121. 9a242072 2026-07-23 auto-save: 2026-07-23T15:52:21 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  122. 11595f16 2026-07-23 Groundworks: assign 67 DWKK SKUs (158394-159054) mirror-side, draft-only + audit JSON
  123. 5ba9f98e 2026-07-23 auto-save: 2026-07-23T14:52:02 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  124. 11f1f037 2026-07-23 auto-save: 2026-07-23T13:51:43 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  125. ca83e4ab 2026-07-23 auto-save: 2026-07-23T12:51:13 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  126. 80d2a7e4 2026-07-23 auto-save: 2026-07-23T11:50:46 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  127. d9f89637 2026-07-23 auto-save: 2026-07-23T10:50:25 (2 files) — shopify/scripts/cadence/data/activations-2026-07-23.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  128. a8dab283 2026-07-23 auto-save: 2026-07-23T09:50:03 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  129. e34f1c3d 2026-07-23 auto-save: 2026-07-23T08:49:44 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  130. b184c7c6 2026-07-23 auto-save: 2026-07-23T07:49:27 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  131. 91ba0bda 2026-07-23 auto-save: 2026-07-23T06:49:07 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  132. bc358187 2026-07-23 auto-save: 2026-07-23T05:48:54 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  133. 78053a0d 2026-07-23 auto-save: 2026-07-23T05:18:46 (1 files) — shopify/scripts/cadence/data/activations-2026-07-23.jsonl
  134. a465426f 2026-07-23 auto-save: 2026-07-23T04:48:39 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  135. 56041cdb 2026-07-23 auto-save: 2026-07-23T03:48:26 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  136. e4fac2f8 2026-07-23 auto-save: 2026-07-23T03:18:19 (1 files) — DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260723T030005.json
  137. 968f5f55 2026-07-23 auto-save: 2026-07-23T02:48:12 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl shopify/scripts/data/bucketB/phillipromano-land-20260723T000105.json shopify/scripts/data/bucketB/rebelwalls-land-20260723T000105.json shopify/scripts/data/bucketB/scalamandre-land-20260723T000105.json
  138. f2a73148 2026-07-23 auto-save: 2026-07-23T02:18:05 (2 files) — scripts/room-image-push/ledger.json shopify/scripts/data/bucketB/nina-land-20260723T000105.json
  139. 10ffc20c 2026-07-23 auto-save: 2026-07-23T01:47:57 (3 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl shopify/scripts/data/bucketB/longtail-land-20260723T000105.json shopify/scripts/data/bucketB/mindthegap-land-20260723T000105.json
  140. 7fca3305 2026-07-23 auto-save: 2026-07-23T00:47:42 (3 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl shopify/scripts/data/bucketB/hollywood-land-20260723T000105.json
  141. 4614fffa 2026-07-23 auto-save: 2026-07-23T00:17:34 (3 files) — shopify/scripts/data/bucketB/coordonne-land-20260723T000105.json shopify/scripts/data/bucketB/grahambrown-land-20260723T000105.json shopify/scripts/data/bucketB/harlequin-land-20260723T000105.json
  142. 2e0bd608 2026-07-22 auto-save: 2026-07-22T23:17:18 (1 files) — shopify/scripts/cadence/data/activations-2026-07-23.jsonl
  143. d855477a 2026-07-22 auto-save: 2026-07-22T19:46:22 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  144. c62d8c42 2026-07-22 auto-save: 2026-07-22T18:46:04 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  145. a709141c 2026-07-22 auto-save: 2026-07-22T17:45:47 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-23.jsonl
  146. 687f2b17 2026-07-22 auto-save: 2026-07-22T17:15:39 (1 files) — shopify/scripts/cadence/data/activations-2026-07-22.jsonl
  147. 598bfbd6 2026-07-22 auto-save: 2026-07-22T16:45:31 (2 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  148. cdd781cd 2026-07-22 auto-save: 2026-07-22T15:45:17 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  149. 9b32e105 2026-07-22 auto-save: 2026-07-22T14:44:58 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  150. febebb8c 2026-07-22 chore: v1.2.6 (session close — Maharam cadence onboarding)
  151. d1e74c41 2026-07-22 auto-save: 2026-07-22T13:44:34 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  152. 265cb349 2026-07-22 auto-save: 2026-07-22T13:14:23 (1 files) — shopify/theme-LIVE-591/assets/dw-card-hover.js
  153. 8f5ec303 2026-07-22 New Arrivals mailer v4: Shop by Color moved directly below closing Shop All New Arrivals CTA
  154. 74aef002 2026-07-22 auto-save: 2026-07-22T12:44:11 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  155. 9e9fa555 2026-07-22 New Arrivals mailer v3: Shop by Color hue-strip section above footer linking /pages/shop-by-color; draft 54120ecf
  156. f5cc767f 2026-07-22 New Arrivals mailer: remove Temple of Beauty in-the-room section + Mural Source chip; recreate CC draft as v2 (a6b67687)
  157. 1100dbaa 2026-07-22 New Arrivals weekly campaign: 12-vendor mailer from live mirror + CC builder; draft created d1cb66d7
  158. 573fac58 2026-07-22 cc-api: survive Constant Contact refresh-token rotation (cache-first + persist to .env); PR Naturals builder now loads v10 mailer
  159. c84a6f8f 2026-07-22 auto-save: 2026-07-22T12:13:58 (1 files) — mailers/cc-api/build-pr-naturals-campaign.js
  160. 5b08a243 2026-07-22 auto-save: 2026-07-22T11:43:42 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  161. 2f416863 2026-07-22 auto-save: 2026-07-22T11:13:33 (2 files) — package-lock.json shopify/scripts/cadence/data/activations-2026-07-22.jsonl
  162. 520acf52 2026-07-22 chore: lint, refactor, v1.2.5 (Anthology session close)
  163. fb96a824 2026-07-22 auto-save: 2026-07-22T10:43:19 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  164. 1c2df63a 2026-07-22 auto-save: 2026-07-22T09:43:01 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  165. ea14706c 2026-07-22 cadence: arm Maharam onto shared rotation — vendors.js un-gate (amends prior commit that only caught the drip-script removal)
  166. 10141546 2026-07-22 cadence: ARM Maharam onto the shared live daily rotation (Steve go, DTD 5/5 A)
  167. 7440b0f2 2026-07-22 auto-save: 2026-07-22T09:12:53 (2 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-07-22.json shopify/scripts/cadence/data/upload-restore-2026-07-22.jsonl
  168. 2a58e23b 2026-07-22 Anthology import: UOM resolver + ready-to-push DRAFT creator (DRY-RUN default)
  169. 41e292c1 2026-07-22 cadence: add Maharam launch drip script (import+activate, metered; enabled only via MAHARAM_DRIP + its launchd job)
  170. 7d362d07 2026-07-22 auto-save: 2026-07-22T08:12:31 (2 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-22.json
  171. 5d76defb 2026-07-22 cadence: onboard Maharam as quote-only wallcovering vendor (own MAHARAM_DRIP gate)
  172. 35503bb0 2026-07-22 Anthology Phase-2 scrapers: SDG Trade Hub feed-first pull → anthology_catalog (48 staged)
  173. 770e4cf5 2026-07-22 no-image backfill: attach 18 verified vendor images (src + base64-retry for octet-stream/oversized CDNs) + Nantucket description
  174. 871d8d35 2026-07-22 auto-save: 2026-07-22T06:41:50 (1 files) — scripts/wallquest-refresh/harvest-wt-images.mjs
  175. 46021776 2026-07-22 auto-save: 2026-07-22T05:11:29 (1 files) — shopify/scripts/cadence/data/activations-2026-07-22.jsonl
  176. 41b1c46a 2026-07-22 auto-save: 2026-07-22T03:11:03 (2 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260722T030001.json
  177. 962ecfc8 2026-07-22 auto-save: 2026-07-22T02:40:56 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json scripts/room-image-push/ledger.json shopify/scripts/data/bucketB/phillipromano-land-20260722T000103.json shopify/scripts/data/bucketB/rebelwalls-land-20260722T000103.json shopify/scripts/data/bucketB/scalamandre-land-20260722T000103.json
  178. b0f818dd 2026-07-22 auto-save: 2026-07-22T02:10:50 (3 files) — shopify/scripts/data/bucketB/longtail-land-20260722T000103.json shopify/scripts/data/bucketB/mindthegap-land-20260722T000103.json shopify/scripts/data/bucketB/nina-land-20260722T000103.json
  179. 6e750e41 2026-07-22 auto-save: 2026-07-22T01:10:37 (2 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  180. 52bf3afb 2026-07-22 auto-save: 2026-07-22T00:40:31 (4 files) — shopify/scripts/data/bucketB/coordonne-land-20260722T000103.json shopify/scripts/data/bucketB/grahambrown-land-20260722T000103.json shopify/scripts/data/bucketB/harlequin-land-20260722T000103.json shopify/scripts/data/bucketB/hollywood-land-20260722T000103.json
  181. 68b2d0a4 2026-07-22 auto-save: 2026-07-22T00:10:24 (1 files) — shopify/scripts/data/bucketB/annafrench-land-20260722T000103.json
  182. 30710bd3 2026-07-21 auto-save: 2026-07-21T23:10:10 (1 files) — shopify/scripts/cadence/data/activations-2026-07-22.jsonl
  183. d3fe56ce 2026-07-21 auto-save: 2026-07-21T18:09:04 (2 files) — scripts/wallquest-refresh/data/backfill-0717-map.json scripts/wallquest-refresh/attach-17-noimage.cjs
  184. 63ffa88a 2026-07-21 wire activation gate into activate-publish-v2 + make sync --quick actually filter by updated_at
  185. f3d8f23f 2026-07-21 mirror sync now carries featuredImage into image_url (closes the batch-image blind spot found via Meilin Pebblestone)
  186. f6b3ebec 2026-07-21 auto-save: 2026-07-21T17:08:42 (1 files) — shopify/scripts/cadence/data/activations-2026-07-21.jsonl
  187. ff7e29af 2026-07-21 auto-save: 2026-07-21T16:38:33 (6 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/data/bucketB/phillipromano-land-20260719T000102.json shopify/scripts/data/bucketB/rebelwalls-land-20260719T000102.json shopify/scripts/data/bucketB/scalamandre-land-20260719T000102.json shopify/scripts/data/bucketB/schumacher-land-20260719T000102.json
  188. c3e10ba2 2026-07-21 auto-save: 2026-07-21T16:08:25 (1 files) — shopify/scripts/data/bucketB/nina-land-20260719T000102.json
  189. e2b9b7c0 2026-07-21 auto-save: 2026-07-21T15:38:16 (2 files) — shopify/scripts/data/bucketB/longtail-land-20260719T000102.json shopify/scripts/data/bucketB/mindthegap-land-20260719T000102.json
  190. 7ac09087 2026-07-21 chore: v1.2.4 (session close — dup-sku fix + drafts backfill)
  191. a67f4620 2026-07-21 fix-dup-skus-0717: reassign 29 colliding 7/17 PR SKUs to unique stride-10 numbers (Steve go)
  192. 45941f84 2026-07-21 backfill: --drafts flag; 40 PR 7/17 drafts backfilled (Steve go)
  193. 2495cb81 2026-07-21 chore: v1.2.3 — 0717 backfill map artifact + version bump (session close)
  194. afe590fb 2026-07-21 backfill: add daisy_bennett_v2_stage fallback + --unstamped resume; 136/136 done
  195. fe7c3722 2026-07-21 auto-save: 2026-07-21T13:37:45 (1 files) — scripts/wallquest-refresh/data/
  196. c65f2226 2026-07-21 backfill specs metafields + descriptions for 7/17 WallQuest naturals batch (136 products)
  197. 3632c282 2026-07-21 cadence: create DRAFT (drop --activate) so cost-vendors flow through the rotation activator, not direct-activate
  198. a903d53d 2026-07-21 auto-save: 2026-07-21T11:07:10 (1 files) — shopify/scripts/cadence/data/activations-2026-07-21.jsonl
  199. a24264cd 2026-07-21 auto-save: 2026-07-21T05:05:47 (1 files) — shopify/scripts/cadence/data/activations-2026-07-21.jsonl
  200. 85fbb763 2026-07-21 auto-save: 2026-07-21T03:05:24 (2 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260721T030000.json
  201. 13f4d950 2026-07-21 auto-save: 2026-07-21T02:35:18 (2 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json scripts/room-image-push/ledger.json
  202. 4c289d46 2026-07-21 auto-save: 2026-07-21T01:04:59 (1 files) — shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  203. 9e34bbee 2026-07-20 auto-save: 2026-07-20T23:04:35 (1 files) — shopify/scripts/cadence/data/activations-2026-07-21.jsonl
  204. 3788f629 2026-07-20 auto-save: 2026-07-20T17:03:17 (1 files) — shopify/scripts/cadence/data/activations-2026-07-20.jsonl
  205. 2a5fba61 2026-07-20 auto-save: 2026-07-20T11:01:36 (1 files) — shopify/scripts/cadence/data/activations-2026-07-20.jsonl
  206. a6e83f4d 2026-07-20 auto-save: 2026-07-20T04:59:59 (1 files) — shopify/scripts/cadence/data/activations-2026-07-20.jsonl
  207. f7b47ef7 2026-07-20 auto-save: 2026-07-20T03:29:38 (1 files) — DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260720T030005.json
  208. 41e8a88c 2026-07-20 auto-save: 2026-07-20T02:29:25 (2 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json scripts/room-image-push/ledger.json
  209. 8f11ae0e 2026-07-20 auto-save: 2026-07-20T00:59:05 (1 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl
  210. f3d133f5 2026-07-19 auto-save: 2026-07-19T22:58:36 (1 files) — shopify/scripts/cadence/data/activations-2026-07-20.jsonl
  211. 9d13a89e 2026-07-19 auto-save: 2026-07-19T16:57:14 (2 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/cadence/data/activations-2026-07-19.jsonl
  212. 2d449ba2 2026-07-19 auto-save: 2026-07-19T10:56:01 (1 files) — shopify/scripts/cadence/data/activations-2026-07-19.jsonl
  213. b86fb93d 2026-07-19 auto-save: 2026-07-19T08:55:38 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-19.jsonl
  214. 63871c08 2026-07-19 auto-save: 2026-07-19T07:55:24 (1 files) — shopify/scripts/cadence/data/upload-restore-2026-07-19.jsonl
  215. 8baff8f4 2026-07-19 auto-save: 2026-07-19T04:54:45 (1 files) — shopify/scripts/cadence/data/activations-2026-07-19.jsonl
  216. fbb7c2d0 2026-07-19 auto-save: 2026-07-19T03:24:25 (1 files) — DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260719T030002.json
  217. 9754e095 2026-07-19 auto-save: 2026-07-19T02:54:18 (1 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json
  218. 85f44f80 2026-07-19 auto-save: 2026-07-19T02:24:11 (1 files) — scripts/room-image-push/ledger.json
  219. d9d59e47 2026-07-19 auto-save: 2026-07-19T00:53:53 (2 files) — shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/data/bucketB/hollywood-land-20260719T000102.json
  220. 074748d9 2026-07-19 auto-save: 2026-07-19T00:23:46 (4 files) — shopify/scripts/data/bucketB/annafrench-land-20260719T000102.json shopify/scripts/data/bucketB/coordonne-land-20260719T000102.json shopify/scripts/data/bucketB/grahambrown-land-20260719T000102.json shopify/scripts/data/bucketB/harlequin-land-20260719T000102.json
  221. 8cbaf852 2026-07-18 auto-save: 2026-07-18T22:53:23 (1 files) — shopify/scripts/cadence/data/activations-2026-07-19.jsonl
  222. 7ad9e24c 2026-07-18 auto-save: 2026-07-18T16:52:08 (2 files) — shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/cadence/data/activations-2026-07-18.jsonl
  223. 0a2000a8 2026-07-18 snapshot: bump submodule pointer(s)
  224. 6adc1c30 2026-07-18 auto-save: 2026-07-18T10:50:58 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  225. 772194fe 2026-07-18 auto-save: 2026-07-18T09:50:45 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  226. d58da815 2026-07-18 auto-save: 2026-07-18T08:50:32 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  227. fabcbb7c 2026-07-18 auto-save: 2026-07-18T07:50:19 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  228. 03b9fb62 2026-07-18 Coraggio line onboard: vendor-scoped scraper + skill (98 SKUs staged, quote-only)
  229. 4f9d815a 2026-07-18 auto-save: 2026-07-18T06:50:05 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  230. b9fd4912 2026-07-18 auto-save: 2026-07-18T05:49:50 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  231. e79dda62 2026-07-18 auto-save: 2026-07-18T04:49:36 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-18.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  232. 2146f1b7 2026-07-18 auto-save: 2026-07-18T03:49:23 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  233. 15daea36 2026-07-18 auto-save: 2026-07-18T03:19:16 (5 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260718T030003.json
  234. 5c8d0067 2026-07-18 auto-save: 2026-07-18T02:49:10 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  235. ec23c855 2026-07-18 auto-save: 2026-07-18T02:19:03 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  236. a54549e7 2026-07-18 auto-save: 2026-07-18T01:48:57 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260718T000103.json
  237. 40cba946 2026-07-18 auto-save: 2026-07-18T00:48:43 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl
  238. a6d90d06 2026-07-18 auto-save: 2026-07-18T00:18:37 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260718T000103.json shopify/scripts/data/bucketB/coordonne-land-20260718T000103.json
  239. d48c32c5 2026-07-17 auto-save: 2026-07-17T23:48:30 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  240. 13b8e40a 2026-07-17 auto-save: 2026-07-17T22:48:14 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-18.jsonl
  241. 4baaac97 2026-07-17 auto-save: 2026-07-17T21:48:00 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  242. c584c39a 2026-07-17 auto-save: 2026-07-17T21:17:52 (5 files) — DW-Programming/ImportNewSkufromURL/lib/scrapers/armani-casa-new-products-scraper.ts pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/scripts/armani-recrawl-artifact.ts
  243. fc91adb7 2026-07-17 auto-save: 2026-07-17T20:47:45 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-18.jsonl vendor-scrapers/china-seas-refresh
  244. 0e13b87c 2026-07-17 auto-save: 2026-07-17T19:47:29 (351 files) — DW-Agents/dw-agents/ARCHITECTURAL-UPDATE-PROGRESS.md DW-Agents/dw-agents/DWLegalTeam/legal-agent.ts DW-Agents/dw-agents/NEW_CLIENT_SIGNUP_V1.0_CHANGELOG.md DW-Agents/dw-agents/accounting-agent.ts DW-Agents/dw-agents/accounting-agent.ts.backup-pre-theme
  245. 0478a4c3 2026-07-16 Strip hardcoded Shopify API tokens from source (env-first); no rotation/deploy — response to Shopify exposed-credentials notice
  246. afc033fa 2026-07-16 PR naturals v10 mailer: SISAL tile -> sisal search (page 1), from v9
  247. e87f61aa 2026-07-16 auto-save: 2026-07-16T08:42:12 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-16.jsonl vendor-scrapers/china-seas-refresh
  248. 719c0e6e 2026-07-16 auto-save: 2026-07-16T07:41:55 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-16.jsonl vendor-scrapers/china-seas-refresh
  249. 9ce2eb7e 2026-07-16 auto-save: 2026-07-16T07:11:48 (4 files) — DW-Programming/color-enrich-newskus.sh pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  250. df470f64 2026-07-16 auto-save: 2026-07-16T05:41:28 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/refresh-broken-images.js
  251. a35017db 2026-07-16 auto-save: 2026-07-16T05:11:21 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-16.jsonl vendor-scrapers/china-seas-refresh
  252. ac02ee8f 2026-07-16 auto-save: 2026-07-16T03:10:54 (5 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260716T030005.json
  253. 3c5c6f3f 2026-07-16 auto-save: 2026-07-16T02:40:48 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  254. d0562250 2026-07-16 auto-save: 2026-07-16T02:10:42 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260716T000105.json shopify/scripts/data/bucketB/mindthegap-land-20260716T000105.json
  255. c7452974 2026-07-16 auto-save: 2026-07-16T01:10:29 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl vendor-scrapers/china-seas-refresh
  256. 1e2e7ce4 2026-07-16 auto-save: 2026-07-16T00:40:23 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/coordonne-land-20260716T000105.json shopify/scripts/data/bucketB/grahambrown-land-20260716T000105.json
  257. 21d03c65 2026-07-16 auto-save: 2026-07-16T00:10:17 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260716T000105.json
  258. c7686573 2026-07-15 auto-save: 2026-07-15T23:10:04 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-16.jsonl
  259. d6b866c7 2026-07-15 auto-save: 2026-07-15T19:09:14 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-16.jsonl vendor-scrapers/china-seas-refresh
  260. 6e2ebf88 2026-07-15 auto-save: 2026-07-15T18:09:00 (6 files) — DW-Programming/color-enrich-newskus.sh DW-Programming/enrich-active-colors.js pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  261. a6ee3510 2026-07-15 auto-save: 2026-07-15T17:08:45 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-15.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  262. 134f9a71 2026-07-15 color enrichment: nightly new-SKU auto-run ($0 local palette → color_details + color_N metafields) + product_colors sync bridge for shop-by-color + launchd plist (install gated)
  263. d2557f10 2026-07-15 auto-save: 2026-07-15T16:38:37 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json vendor-scrapers/china-seas-refresh
  264. 4dbc1954 2026-07-15 auto-save: 2026-07-15T16:08:29 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  265. 44a1b075 2026-07-15 auto-save: 2026-07-15T15:08:15 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  266. acc6224a 2026-07-15 DWKK wrong-join defect: stop trusting corrupt mirror mfr_sku for Kravet pricing
  267. 899b35d4 2026-07-15 auto-save: 2026-07-15T14:07:06 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  268. 12b724ad 2026-07-15 v9 mailer: design-panel refinement (graphic-designer + ui-ux + contrarian gate) — resequenced flow, nav collapse, competitor strip removed, AA gold, dark-mode + images-off resilience
  269. 091657f5 2026-07-15 bamboo chip: phillipe-romano-naturals showed cork first (browser-verified) -> /collections/phillipe-romano/bamboo (9 true PR bamboo, verified PASS)
  270. 4f9ec5e5 2026-07-15 PR naturals mailer: every texture link -> vendor+category collection (PR-specific collections; Boost pf_v_brand filter on shared ones)
  271. fa493f7e 2026-07-15 auto-save: 2026-07-15T13:06:41 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  272. ff0b8562 2026-07-15 PR naturals mailer: fix 6 malformed collection URLs (& -> ?) + dead Schumacher handle -> vendors collection; all links verified 200
  273. 336a1b3e 2026-07-15 PR naturals mailer: hero → Cape May bamboo room (bad repeat on Diamond Back render); band → photographed Diamond Back install
  274. 066c5f9c 2026-07-15 PR naturals mailer: all links → collections (grasscloth/mica/sisal live handles, rest → phillipe-romano)
  275. db7d12ee 2026-07-15 pr-naturals mailer: top logo links to New Arrivals collection
  276. 48b383e0 2026-07-15 Phillipe Romano naturals mailer: texture-forward campaign reusing DW header/footer, 9/9 validation clean
  277. fade40aa 2026-07-15 auto-save: 2026-07-15T12:06:24 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  278. 9ce05814 2026-07-15 auto-save: 2026-07-15T11:06:03 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-15.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  279. fdb376a2 2026-07-15 auto-save: 2026-07-15T10:05:46 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  280. 2489c25a 2026-07-15 auto-save: 2026-07-15T09:05:32 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  281. 1cb8b823 2026-07-15 auto-save: 2026-07-15T08:35:26 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  282. 43d34922 2026-07-15 auto-save: 2026-07-15T08:05:18 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  283. 1bc31886 2026-07-15 auto-save: 2026-07-15T07:35:12 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  284. d1e56137 2026-07-15 auto-save: 2026-07-15T07:05:05 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  285. 3fff9f85 2026-07-15 auto-save: 2026-07-15T06:04:51 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  286. f942de60 2026-07-15 auto-save: 2026-07-15T05:04:38 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-15.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  287. c229b9f4 2026-07-15 auto-save: 2026-07-15T04:04:26 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  288. 10390175 2026-07-15 auto-save: 2026-07-15T03:04:14 (9 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  289. 7e751a87 2026-07-15 auto-save: 2026-07-15T02:34:08 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  290. 8f4612f5 2026-07-15 auto-save: 2026-07-15T02:04:02 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260715T000105.json
  291. dd8ac1d2 2026-07-15 auto-save: 2026-07-15T01:03:51 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  292. 65b57987 2026-07-15 auto-save: 2026-07-15T00:33:42 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/coordonne-land-20260715T000105.json shopify/scripts/data/bucketB/grahambrown-land-20260715T000105.json
  293. 2fad7616 2026-07-15 auto-save: 2026-07-15T00:03:37 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260715T000105.json
  294. 7c0693a0 2026-07-14 auto-save: 2026-07-14T23:03:25 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-15.jsonl
  295. 185558f3 2026-07-14 auto-save: 2026-07-14T22:03:13 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  296. 87636f88 2026-07-14 auto-save: 2026-07-14T21:02:55 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  297. 43bec515 2026-07-14 auto-save: 2026-07-14T20:02:42 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  298. 442e3eb3 2026-07-14 auto-save: 2026-07-14T19:02:30 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl vendor-scrapers/china-seas-refresh
  299. 3a090db9 2026-07-14 auto-save: 2026-07-14T18:02:18 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/upload-restore-2026-07-15.jsonl
  300. 23e72adb 2026-07-14 auto-save: 2026-07-14T17:32:12 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  301. ada9d081 2026-07-14 auto-save: 2026-07-14T17:02:06 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-14.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl
  302. c26c67ec 2026-07-14 auto-save: 2026-07-14T16:32:00 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json vendor-scrapers/china-seas-refresh
  303. 0f84f6cb 2026-07-14 auto-save: 2026-07-14T16:01:53 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  304. 75d045e9 2026-07-14 auto-save: 2026-07-14T15:31:47 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  305. 883ada1e 2026-07-14 auto-save: 2026-07-14T15:01:41 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  306. 4cfa71b5 2026-07-14 auto-save: 2026-07-14T14:31:35 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  307. 898ad700 2026-07-14 auto-save: 2026-07-14T14:01:28 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  308. 8c05ef7c 2026-07-14 auto-save: 2026-07-14T13:31:22 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  309. 4f9e2072 2026-07-14 auto-save: 2026-07-14T13:01:14 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  310. 784f159c 2026-07-14 auto-save: 2026-07-14T12:31:06 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  311. 7af408e6 2026-07-14 auto-save: 2026-07-14T12:00:58 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  312. d744ef38 2026-07-14 auto-save: 2026-07-14T11:30:48 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  313. 5a132743 2026-07-14 auto-save: 2026-07-14T11:00:40 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-14.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl
  314. bd69dbc2 2026-07-14 Activate 9 repaired Versace articles: verified AS-Creation images + specs + double-roll, live on Shopify
  315. f9f91dd1 2026-07-14 auto-save: 2026-07-14T10:30:32 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/attach-versace-nan-images.js
  316. 0996e036 2026-07-14 Versace cleanup: revert 11 Smart Art borders to single-roll + repair 9 DWVS-NaN SKUs to DWVS-<mfr> and DRAFT them
  317. f124efc4 2026-07-14 auto-save: 2026-07-14T10:00:24 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  318. 3839101f 2026-07-14 Set Versace line (111 SKUs: 11 VER- gaps + 100 DWVS-) to double-rolls-only on live Shopify + mirror
  319. deb759eb 2026-07-14 auto-save: 2026-07-14T09:30:17 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  320. 1658ef6b 2026-07-14 auto-save: 2026-07-14T09:00:07 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  321. f252172f 2026-07-14 auto-save: 2026-07-14T08:29:59 (16 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/wallquest-refresh/activate-daisy-bennett.cjs scripts/wallquest-refresh/interior-design-enrich.cjs
  322. af7aaa54 2026-07-14 auto-save: 2026-07-14T07:59:52 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  323. c296b9f8 2026-07-14 auto-save: 2026-07-14T06:59:38 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  324. 88ba1f3c 2026-07-14 auto-save: 2026-07-14T06:29:31 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  325. 99e3a80c 2026-07-14 auto-save: 2026-07-14T05:59:19 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  326. a7ad84bd 2026-07-14 auto-save: 2026-07-14T05:29:12 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  327. b21af2fc 2026-07-14 auto-save: 2026-07-14T04:59:06 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-14.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl
  328. 04a0e3bd 2026-07-14 auto-save: 2026-07-14T04:28:59 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  329. 8de09a71 2026-07-14 auto-save: 2026-07-14T03:58:52 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  330. d1ee4dfc 2026-07-14 auto-save: 2026-07-14T03:28:47 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260714T030002.json
  331. 15065c9f 2026-07-14 auto-save: 2026-07-14T02:58:41 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl
  332. c3c215e9 2026-07-14 auto-save: 2026-07-14T02:28:34 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  333. d9fed3bd 2026-07-14 auto-save: 2026-07-14T01:58:27 (8 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl vendor-scrapers/china-seas-refresh
  334. d0f48833 2026-07-14 auto-save: 2026-07-14T01:28:20 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  335. 956dc10f 2026-07-14 auto-save: 2026-07-14T00:58:14 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  336. b06f5e9f 2026-07-14 auto-save: 2026-07-14T00:28:06 (9 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260714T000105.json
  337. 77c58811 2026-07-13 auto-save: 2026-07-13T23:57:59 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  338. 01db0eb3 2026-07-13 auto-save: 2026-07-13T23:27:51 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  339. 7bcf5111 2026-07-13 auto-save: 2026-07-13T22:57:44 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-14.jsonl
  340. 4c01a3a9 2026-07-13 auto-save: 2026-07-13T22:27:32 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  341. 78f97451 2026-07-13 auto-save: 2026-07-13T21:57:26 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  342. a5b78da8 2026-07-13 auto-save: 2026-07-13T21:27:19 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  343. a7458f97 2026-07-13 auto-save: 2026-07-13T20:57:13 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  344. 7a8a248d 2026-07-13 auto-save: 2026-07-13T20:27:07 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  345. c838227d 2026-07-13 auto-save: 2026-07-13T19:57:00 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  346. 8fde9b05 2026-07-13 auto-save: 2026-07-13T19:26:53 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  347. c5bb8936 2026-07-13 auto-save: 2026-07-13T18:56:46 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  348. 7b3eac91 2026-07-13 auto-save: 2026-07-13T18:26:38 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  349. 10cccc65 2026-07-13 auto-save: 2026-07-13T17:56:31 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/upload-restore-2026-07-14.jsonl
  350. 5bb72f2c 2026-07-13 auto-save: 2026-07-13T17:26:24 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  351. 243a09c4 2026-07-13 auto-save: 2026-07-13T16:56:17 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json shopify/scripts/cadence/data/activations-2026-07-13.jsonl
  352. 22f6cb15 2026-07-13 auto-save: 2026-07-13T16:26:08 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  353. 040cc3a0 2026-07-13 auto-save: 2026-07-13T15:55:55 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  354. a5d6d9cb 2026-07-13 auto-save: 2026-07-13T15:25:47 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  355. dea3ddbd 2026-07-13 auto-save: 2026-07-13T14:55:38 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  356. 22210ed4 2026-07-13 auto-save: 2026-07-13T14:25:31 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  357. 36ed6bc3 2026-07-13 auto-save: 2026-07-13T13:55:23 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  358. 07d4fb62 2026-07-13 auto-save: 2026-07-13T13:25:16 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  359. c9853c04 2026-07-13 auto-save: 2026-07-13T12:55:05 (9 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json DW-Programming/ImportNewSkufromURL/scripts/run-all-vendor-scrapers.ts pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price
  360. 314eb729 2026-07-13 banned-word backstop extended to TAGS at the drain chokepoint (audit caught 'decor wallpaper' tag on a clean-titled draft); swept all 70 of today's drafts clean via API
  361. a56af202 2026-07-13 auto-save: 2026-07-13T12:24:56 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/scripts/run-all-vendor-scrapers.ts DW-Programming/ImportNewSkufromURL/scripts/scraper-healthcheck.ts pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price
  362. 5f5d633d 2026-07-13 auto-save: 2026-07-13T11:54:48 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  363. 362375db 2026-07-13 auto-save: 2026-07-13T11:24:39 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  364. e6245d8e 2026-07-13 auto-save: 2026-07-13T10:54:28 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-13.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl
  365. 5bbdd74e 2026-07-13 local-first extraction: richness gate (>=1 img, >=3 tags, sku) so valid-but-empty hermes3 output can't birth hollow drafts; num_ctx 8192->24576 (prompt overflow was truncating instructions -> empty extractions); log schema issues on invalid
  366. 2409e85d 2026-07-13 drain hardening: INT/TERM traps now exit (bare cleanup trap made drivers unkillable + lockless → two immortal drivers raced the queues); in-flight dedup rejections refund the attempt instead of terminal-failing
  367. e107ff3e 2026-07-13 fix: launchd bare-node PATH bug in two DW scheduled jobs
  368. b20f45ae 2026-07-13 extraction goes LOCAL-FIRST (EXTRACT_PREFER_LOCAL=1, hermes3:8b) — bulk drain no longer chews Max-plan quota; fix dead qwen2.5 fallback default (never installed); ensure-import-app heals browsers via symlink not install (install prunes cache dirs + memoized checks need app restart)
  369. d44bb4b1 2026-07-13 ensure-import-app: install browsers via APP-LOCAL playwright cli — npx resolved a different build (installed shell-1228 while app pins shell-1200), so the heal never healed
  370. 32393d92 2026-07-13 auto-save: 2026-07-13T09:54:06 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  371. 7e9160d7 2026-07-13 auto-save: 2026-07-13T08:53:46 (11 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/.drain-STOP DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/lib/scrapers/catchii-new-products-scraper.ts DW-Programming/ImportNewSkufromURL/package-lock.json DW-Programming/ImportNewSkufromURL/package.json
  372. 91304e05 2026-07-13 chore: session-close quality gate — hoist sleep/isSample to module scope, align API_VERSION fallback to 2024-10, version bump
  373. 615561a2 2026-07-13 drain self-heal round 2: missing playwright browsers treated as env failure (refund attempt, auto npx playwright install in ensure-import-app, resurrect pattern widened); app restarted onto playwright 1.57 binaries
  374. 84bb022a 2026-07-13 import drain self-heals: backend-down never burns item attempts (refund+heal via ensure-import-app.sh), driver resurrects infra-failed items each pass and never exits on drained, :9830 app now pm2-supervised; 1027 brewster items requeued
  375. d90232b2 2026-07-13 auto-save: 2026-07-13T08:23:39 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/scripts/ensure-import-app.sh
  376. 2e675372 2026-07-13 auto-save: 2026-07-13T07:53:32 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  377. de9f7760 2026-07-13 auto-save: 2026-07-13T06:53:18 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  378. a598a145 2026-07-13 auto-save: 2026-07-13T05:53:04 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  379. 9587f6ae 2026-07-13 auto-save: 2026-07-13T04:52:51 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-13.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  380. 41e7bc7b 2026-07-13 auto-save: 2026-07-13T03:52:38 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  381. c02d145d 2026-07-13 auto-save: 2026-07-13T03:22:32 (5 files) — DW-Programming/ImportNewSkufromURL/yw-results/latest.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260713T030001.json
  382. e18b0c93 2026-07-13 auto-save: 2026-07-13T02:52:26 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/phillipromano-land-20260713T000105.json
  383. 87598f1a 2026-07-13 auto-save: 2026-07-13T02:22:18 (8 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  384. 4b9ff773 2026-07-13 auto-save: 2026-07-13T01:52:00 (6 files) — DW-Programming/ImportNewSkufromURL/lib/scrapers/catchii-new-products-scraper.ts DW-Programming/ImportNewSkufromURL/scripts/drain-import-queues.sh pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl
  385. bb0ac571 2026-07-13 auto-save: 2026-07-13T00:51:43 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  386. 40bd9acc 2026-07-13 auto-save: 2026-07-13T00:21:34 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260713T000105.json shopify/scripts/data/bucketB/coordonne-land-20260713T000105.json
  387. f845ced4 2026-07-13 brands-grid: stage ÉLITIS mark as elitis-wallcoverings.png (collection-slug fallback)
  388. fa9fa2f2 2026-07-13 Wire mirrorWriteThrough into houston-mfr-fix + pr-quote-only-tag: future runs self-reconcile the mirror (retrofit, session close)
  389. 7f72958e 2026-07-12 auto-save: 2026-07-12T23:21:12 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/houston-mfr-fix.js scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  390. 2e744e46 2026-07-12 auto-save: 2026-07-12T22:51:02 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-13.jsonl
  391. 69cb7867 2026-07-12 auto-save: 2026-07-12T21:50:32 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  392. e8f796fd 2026-07-12 auto-save: 2026-07-12T20:50:13 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  393. 0babc7b6 2026-07-12 auto-save: 2026-07-12T19:49:54 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  394. 95f1b147 2026-07-12 Add mirrorWriteThrough() helper: sync local mirror at Shopify write-time (closes metafield-not-read-back gap; force-add past shopify/lib gitignore like validate-before-activate.js)
  395. 58428aa3 2026-07-12 auto-save: 2026-07-12T18:49:42 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl vendor-scrapers/china-seas-refresh
  396. 0998a73d 2026-07-12 auto-save: 2026-07-12T17:49:31 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/upload-restore-2026-07-13.jsonl
  397. 6cc14ada 2026-07-12 auto-save: 2026-07-12T16:49:19 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-12.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  398. 515184ca 2026-07-12 auto-save: 2026-07-12T15:49:08 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  399. f2072a14 2026-07-12 auto-save: 2026-07-12T14:48:51 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  400. 61ddb987 2026-07-12 auto-save: 2026-07-12T13:48:29 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  401. fe814194 2026-07-12 auto-save: 2026-07-12T12:48:16 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  402. a798cd48 2026-07-12 Fix fail-loud false-positive: page-1-empty guard only fires in FULL mode (quick mode 0-new is valid)
  403. 977a5291 2026-07-12 Harden mirror sync: dotenv self-load (no more token-less silent fail) + fail-loud on GraphQL error / page-1 empty (was exiting 0 on auth failure)
  404. 39fa428b 2026-07-12 auto-save: 2026-07-12T11:48:02 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  405. c132a2ee 2026-07-12 auto-save: 2026-07-12T10:47:45 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-12.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  406. 6d39087c 2026-07-12 Fix same silent-throttle bug in quote-only tagging: throttle/429/null-data detect + retry + failed.csv
  407. d1ffa01d 2026-07-12 auto-save: 2026-07-12T10:17:36 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 reports/mfr-houston/mfr-fix-manifest.csv reports/mfr-houston/needs-manual-mfr.csv scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  408. 0c1bf6d1 2026-07-12 Fix silent-throttle bug in mfr push: detect top-level errors/null-data/429, retry w/ backoff, adaptive pacing, honest accounting + failed.csv
  409. 60525f46 2026-07-12 PR quote-only tagging tool + manifest (DTD verdict C: quote-only now, cost-price later)
  410. 4c92058f 2026-07-12 auto-save: 2026-07-12T09:47:28 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 reports/mfr-houston/mfr-fix-manifest.csv reports/mfr-houston/needs-manual-mfr.csv scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl
  411. c7c7005a 2026-07-12 Houston mfr-fix: emit needs-manual-mfr list (contrarian fix — no silent drop of unresolvable placeholders)
  412. 179df971 2026-07-12 Houston mfr-fix: placeholder mfr_sku==dw_sku detector + cleaned dry-run manifest (7,044 fixable, 693 reactivation candidates)
  413. 5537c7d8 2026-07-12 auto-save: 2026-07-12T08:47:12 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  414. d5c83135 2026-07-12 PDP Design Coordinate fix: hide AI placeholder half (was ~50% dead href=# links); LIVE product.liquid + backup
  415. c0f70def 2026-07-12 auto-save: 2026-07-12T07:46:59 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  416. 53e499ba 2026-07-12 auto-save: 2026-07-12T06:46:47 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  417. 55bd9ef1 2026-07-12 auto-save: 2026-07-12T05:46:36 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  418. bc1fa620 2026-07-12 auto-save: 2026-07-12T04:46:24 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-12.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  419. fdff9914 2026-07-12 auto-save: 2026-07-12T03:46:14 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  420. 40904452 2026-07-12 auto-save: 2026-07-12T03:16:08 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260712T030000.json
  421. 7e7dfe69 2026-07-12 auto-save: 2026-07-12T02:46:03 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  422. 5f5d98b5 2026-07-12 auto-save: 2026-07-12T02:15:57 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/mindthegap-land-20260712T000105.json
  423. df68b44a 2026-07-12 auto-save: 2026-07-12T01:45:51 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260712T000105.json
  424. 4abc8ae6 2026-07-12 auto-save: 2026-07-12T00:45:38 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  425. 70e23891 2026-07-12 auto-save: 2026-07-12T00:15:33 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260712T000105.json shopify/scripts/data/bucketB/coordonne-land-20260712T000105.json
  426. ca535b8c 2026-07-11 auto-save: 2026-07-11T22:45:16 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-12.jsonl
  427. 78df0061 2026-07-11 auto-save: 2026-07-11T20:44:55 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  428. ec6077f3 2026-07-11 auto-save: 2026-07-11T19:44:45 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  429. b0e715e2 2026-07-11 auto-save: 2026-07-11T18:44:33 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl vendor-scrapers/china-seas-refresh
  430. 20437872 2026-07-11 auto-save: 2026-07-11T17:44:22 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/upload-restore-2026-07-12.jsonl
  431. 493c3d20 2026-07-11 auto-save: 2026-07-11T16:44:11 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-11.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  432. 493e9c02 2026-07-11 auto-save: 2026-07-11T15:43:59 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  433. ea47fa5d 2026-07-11 auto-save: 2026-07-11T14:43:48 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  434. 4d62bbcc 2026-07-11 auto-save: 2026-07-11T13:43:37 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  435. a856a778 2026-07-11 auto-save: 2026-07-11T12:43:24 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  436. 9ecc4207 2026-07-11 auto-save: 2026-07-11T11:43:10 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  437. 683fff36 2026-07-11 auto-save: 2026-07-11T10:42:59 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-11.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  438. 144dd04a 2026-07-11 auto-save: 2026-07-11T09:42:46 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  439. 441559e5 2026-07-11 auto-save: 2026-07-11T08:42:28 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  440. 15a03aac 2026-07-11 auto-save: 2026-07-11T07:42:17 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  441. b87f6966 2026-07-11 auto-save: 2026-07-11T06:42:06 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  442. 78fe0fe1 2026-07-11 auto-save: 2026-07-11T05:41:55 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  443. 97e91cfd 2026-07-11 auto-save: 2026-07-11T04:41:44 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-11.jsonl shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  444. 1207d388 2026-07-11 auto-save: 2026-07-11T03:41:33 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  445. e29cf41e 2026-07-11 auto-save: 2026-07-11T03:11:28 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260711T030002.json
  446. b2231507 2026-07-11 auto-save: 2026-07-11T02:41:22 (11 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl
  447. 6e4381c3 2026-07-11 auto-save: 2026-07-11T02:11:17 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260711T000105.json shopify/scripts/data/bucketB/mindthegap-land-20260711T000105.json
  448. ede75c99 2026-07-11 auto-save: 2026-07-11T01:41:12 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  449. 313fe51e 2026-07-11 auto-save: 2026-07-11T01:11:07 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-brewster-before.jsonl shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  450. 0ebcdbdb 2026-07-11 auto-save: 2026-07-11T00:41:01 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/grahambrown-land-20260711T000105.json
  451. c42dca46 2026-07-11 auto-save: 2026-07-11T00:10:56 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260711T000105.json shopify/scripts/data/bucketB/coordonne-land-20260711T000105.json
  452. 93ed3971 2026-07-10 auto-save: 2026-07-10T23:40:50 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  453. 97624595 2026-07-10 auto-save: 2026-07-10T23:10:45 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-11.jsonl shopify/scripts/cadence/vendors.js shopify/scripts/luxury-draft-import/import-luxury-drafts.js
  454. cad7004c 2026-07-10 auto-save: 2026-07-10T22:40:39 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-11.jsonl
  455. 3510746f 2026-07-10 auto-save: 2026-07-10T21:40:28 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/schu-pillow-strip-sample.js
  456. ecc70b50 2026-07-10 auto-save: 2026-07-10T20:40:18 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  457. a3baf7c3 2026-07-10 auto-save: 2026-07-10T20:10:12 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  458. 147e5619 2026-07-10 auto-save: 2026-07-10T19:40:07 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  459. a2c65112 2026-07-10 auto-save: 2026-07-10T19:10:01 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl vendor-scrapers/china-seas-refresh
  460. ec526c0b 2026-07-10 auto-save: 2026-07-10T18:09:50 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/upload-restore-2026-07-11.jsonl
  461. a28da72d 2026-07-10 Schumacher pillow reprice full batch report: 349 repriced, 119 archived, 3 flagged, 0 errors
  462. f208ebe6 2026-07-10 Schumacher pillow reprice script + verified live pilot (3 pillows: DWPIL-5054/2054/2064 -> priced Pillow variant, sample dropped, mfr_sku fixed)
  463. 0259e13a 2026-07-10 auto-save: 2026-07-10T17:09:33 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  464. eaa4f1fb 2026-07-10 auto-save: 2026-07-10T16:39:26 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  465. f3f6ce3d 2026-07-10 auto-save: 2026-07-10T16:09:20 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  466. 94758019 2026-07-10 auto-save: 2026-07-10T15:09:07 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  467. 1f2a3a61 2026-07-10 auto-save: 2026-07-10T14:39:00 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/schu-api-recrawl.js vendor-scrapers/china-seas-refresh
  468. 65a5023e 2026-07-10 auto-save: 2026-07-10T14:08:52 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  469. a68ab1ce 2026-07-10 auto-save: 2026-07-10T13:08:29 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  470. 0b3ab024 2026-07-10 auto-save: 2026-07-10T12:38:21 (4 files) — _dw-login-record.mjs pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh
  471. 45d52c93 2026-07-10 auto-save: 2026-07-10T12:08:12 (6 files) — DW-Programming/schu_pillow_apisniff.mjs pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  472. 4bfcd4e0 2026-07-10 auto-save: 2026-07-10T11:38:04 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/schu-refresh-harvest.mjs DW-Programming/schu_pillow_apisniff.mjs
  473. f8c34683 2026-07-10 auto-save: 2026-07-10T11:07:57 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-brewster-before.jsonl shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl
  474. c5d1d1af 2026-07-10 auto-save: 2026-07-10T10:37:42 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/wallquest-refresh/lillian-august-onboard-viewer/compare.html vendor-scrapers/china-seas-refresh
  475. 9200cba4 2026-07-10 auto-save: 2026-07-10T09:14:58 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/wallquest-refresh/lillian-august-onboard-viewer/compare.html shopify/package-lock.json shopify/package.json
  476. 76fdfd3b 2026-07-10 New-books 3-engine room compare: comparative VLM judge + auto-apply winner
  477. e1e0b9dd 2026-07-10 auto-save: 2026-07-10T08:44:50 (6 files) — DW-Programming/ImportNewSkufromURL/yw-overnight-run.sh pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/wallquest-refresh/lillian-august-onboard-viewer/compare.html shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  478. 57eb7ed7 2026-07-10 auto-save: 2026-07-10T08:14:41 (11 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/yw-costcheck.js DW-Programming/ImportNewSkufromURL/yw-overnight-run.sh DW-Programming/ImportNewSkufromURL/yw-results/437-RD336-20260710T030005.json DW-Programming/ImportNewSkufromURL/yw-results/latest.json
  479. bec3d768 2026-07-10 auto-save: 2026-07-10T07:44:35 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-10.json
  480. a43dc36e 2026-07-10 PR real-textile cadence DRIP (leak-safe): push --limit + drip runner + launchd draft
  481. bff72e45 2026-07-10 auto-save: 2026-07-10T06:44:22 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  482. e5973eca 2026-07-10 auto-save: 2026-07-10T05:44:08 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  483. 9bb6c7db 2026-07-10 auto-save: 2026-07-10T05:14:01 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/activations-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  484. 52af1e32 2026-07-10 auto-save: 2026-07-10T04:43:55 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  485. db799bc2 2026-07-10 auto-save: 2026-07-10T03:43:43 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  486. 81b4d894 2026-07-10 auto-save: 2026-07-10T03:13:36 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-results/
  487. 899603a3 2026-07-10 auto-save: 2026-07-10T02:43:29 (13 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price scripts/room-image-push/ledger.json shopify/scripts/cadence/data/cadence-cursor.json
  488. 4990fac8 2026-07-10 auto-save: 2026-07-10T02:13:23 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260710T000105.json shopify/scripts/data/bucketB/mindthegap-land-20260710T000105.json
  489. be64f185 2026-07-10 auto-save: 2026-07-10T01:43:16 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  490. f7a1df8b 2026-07-10 auto-save: 2026-07-10T00:43:01 (11 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/pr-contact-for-price shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl shopify/scripts/cadence/data/cadence-cursor.json
  491. e468b2fd 2026-07-10 auto-save: 2026-07-10T00:12:54 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh scripts/pr-contact-for-price/ shopify/scripts/data/bucketB/annafrench-land-20260710T000105.json shopify/scripts/data/bucketB/coordonne-land-20260710T000105.json
  492. 9d2b6d26 2026-07-09 stage yorkwall trade-portal cost/stock scraper + overnight one-shot runner
  493. a4a39262 2026-07-09 auto-save: 2026-07-09T23:42:48 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/set-doubleroll-lengths.py vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yw-costcheck.js
  494. d4b939ce 2026-07-09 WallQuest onboard: gated Phillipe Romano draft-push (per-yard, settlement-filtered)
  495. 3252281c 2026-07-09 catalog-push: HARDEN sync bucket to missing/empty tables ONLY — never --clean an existing populated table (that doubled wolf_gordon 5469→10952 when a dependency blocked its DROP and mac3's rows appended). Existing-with-data divergence in either direction → REVIEW only.
  496. 9aa0dfb9 2026-07-09 auto-save: 2026-07-09T23:12:38 (10 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/yorkwall-costcheck-probe.js
  497. 65004b34 2026-07-09 catalog-push: diff-based redesign w/ two-bucket safety (sync only mac3-fuller/missing; flag Kamatera-fuller for review). Prevents the data-loss the blanket --clean would cause — 32/42 divergent tables are FULLER on Kamatera (spoonflower 125850 vs 573, osborne 14107 vs 787). +mkdir lock, --inserts, superuser source, re-grant, exclude vendor_catalog
  498. 8de32f95 2026-07-09 WallQuest onboard: swatch DL + local qwen2.5vl enrich + rooms + settlement gate
  499. 3483fed8 2026-07-09 WallQuest real-textile onboard pipeline: normalize + load + beach-city naming
  500. e7041981 2026-07-09 auto-save: 2026-07-09T22:42:31 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/config/README-internal-lines.md
  501. 6c61a816 2026-07-09 auto-save: 2026-07-09T22:12:24 (10 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/active-2026-and-all-channels.js shopify/scripts/cadence/activate-gated.js shopify/scripts/cadence/cadence-import.js
  502. 743dc059 2026-07-09 chore: v1.2.1 — node-fetch→globalThis codemod (session close)
  503. 2d06b02a 2026-07-09 chore: test-koroseal-sample.ts node-fetch require → globalThis.fetch (Node 26)
  504. 7d1e0a32 2026-07-09 chore: codemod 46 DW scripts node-fetch require → globalThis.fetch (Node 26)
  505. 1566feb7 2026-07-09 auto-save: 2026-07-09T20:42:07 (53 files) — DW-Programming/ImportNewSkufromURL/find-recent-sancar.js DW-Programming/ImportNewSkufromURL/remove-sancar-name.js DW-Programming/ImportNewSkufromURL/test-api-response.js DW-Programming/maya-romanoff-updater/fix-dwjs-titles.js DW-Programming/maya-romanoff-updater/maya-romanoff-updater.js
  506. 1b495493 2026-07-09 fix luxury importer: nextNumber reads staging max (no SKU reuse) + mirror-repair destructure + boolean coercion
  507. 217795cb 2026-07-09 add luxury-line DRAFT importer (Fromental/Gracie/Zuber, quote-only, settlement-held)
  508. 42ffdd9a 2026-07-09 auto-save: 2026-07-09T19:41:55 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  509. 564caf21 2026-07-09 WallQuest scraper: harden login vs NEW Cloudflare challenge (+reCAPTCHA)
  510. c2c68ac6 2026-07-09 auto-save: 2026-07-09T18:41:42 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl vendor-scrapers/china-seas-refresh
  511. 6e27c66c 2026-07-09 Fix 2: drive per-yard-fabric min from Kravet master sheet (137->1, leave genuine 6@2 + 1@2.77)
  512. 8414f280 2026-07-09 Add Fix 2 (gated, dry-run): set v_prods_quantity_order_min=1 on per-yard fabrics; MOQ decision required
  513. 72f9c4d3 2026-07-09 auto-save: 2026-07-09T18:11:36 (3 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  514. 4cbe776d 2026-07-09 chore: v1.2.0 — QH width classifier + sync fetch fix (session close)
  515. 1e1e5215 2026-07-09 auto-save: 2026-07-09T17:41:31 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-07-10.json shopify/scripts/cadence/data/upload-restore-2026-07-10.jsonl
  516. 689940cd 2026-07-09 auto-save: 2026-07-09T17:11:25 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/activations-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  517. 2a0914ce 2026-07-09 auto-save: 2026-07-09T16:41:19 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  518. bbea54be 2026-07-09 Retarget roll-on-fabric detector to real cause: theme srEnhance mislabels per-yard UFAC=2 goods
  519. 964e0b6d 2026-07-09 Ship color-palette REFINE (DEDUP_DE + dwCiReveal + slider un-hide) to LIVE theme 144076931123; mark refine DONE
  520. 0f3780cd 2026-07-09 Add roll-on-fabric detector (bucket1 genuine-fabric-on-roll vs bucket2 mistyped-wallpaper)
  521. ed16c8e2 2026-07-09 auto-save: 2026-07-09T16:11:12 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh scripts/wallquest-refresh/cp-harness.html scripts/wallquest-refresh/cp-refine-shots/after-01-rest.png scripts/wallquest-refresh/cp-refine-shots/after-02-low.png
  522. 7fa268bf 2026-07-09 Refine PDP color-palette: fix invisible density slider, dedup near-duplicate dots, premium slider + color-index grid chrome
  523. 5718e91a 2026-07-09 fix(sync): use global fetch in sync-shopify-products — daily mirror sync dead since 07-07
  524. 7905bd62 2026-07-09 auto-save: 2026-07-09T15:41:06 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  525. de820d48 2026-07-09 auto-save: 2026-07-09T15:11:01 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl
  526. 9c542163 2026-07-09 auto-save: 2026-07-09T14:40:55 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl shopify/theme-LIVE-591-freshpull-20260709/snippets/color-palette.liquid vendor-scrapers/china-seas-refresh
  527. dc01631b 2026-07-09 color-palette: density-slider push script + pending-approval memo; retire stale 20-cap memo+script (Steve 2026-07-09d)
  528. be3bcbd1 2026-07-09 color-palette: density slider anchor — dots become user-adjustable (default 20, range 6-64, localStorage dw_palette_dot_count). NOTE: snippet content landed in f72482f6 (auto-save cadence swept the working tree first); this anchor documents the change. Steve 2026-07-09d
  529. f72482f6 2026-07-09 cadence: QH real-width classifier — 54in→Fabric, 27in→Wallcovering (Steve 2026-07-09)
  530. 83701d75 2026-07-09 stage: 20-dot color-palette cap — LIVE push script + pending-approval memo (gated)
  531. e3b55716 2026-07-09 cadence: Quadrille-house 54-inch rule → Fabric (Steve 2026-07-09)
  532. 9a0496ce 2026-07-09 auto-save: 2026-07-09T13:40:43 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  533. c210a1c2 2026-07-09 auto-save: 2026-07-09T13:10:36 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  534. def1103e 2026-07-09 auto-save: 2026-07-09T12:40:29 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  535. fc812085 2026-07-09 auto-save: 2026-07-09T12:10:23 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  536. bacbf70a 2026-07-09 auto-save: 2026-07-09T11:40:18 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  537. c18bea36 2026-07-09 auto-save: 2026-07-09T11:10:13 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/activations-2026-07-09.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl
  538. 6bdee1d9 2026-07-09 auto-save: 2026-07-09T10:40:07 (2 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  539. 3816d8b2 2026-07-09 auto-save: 2026-07-09T10:10:01 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  540. f4e6d315 2026-07-09 auto-save: 2026-07-09T09:39:56 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 pending-approval/color-dot-index-10pct-tolerance-2026-07-09/MEMO.md pending-approval/color-dot-index-10pct-tolerance-2026-07-09/push-to-live.sh shopify/theme-LIVE-591/snippets/color-palette.liquid vendor-scrapers/china-seas-refresh
  541. 0da7a73d 2026-07-09 ship: color-dot 10% CIELAB tolerance grid — STEP 1 (dwphoto /apps/color-index live) + STEP 2 (theme snippet live #144076931123); memo → DONE
  542. 3baf80b0 2026-07-09 pending-approval: color-dot index-of-many 10% tolerance memo + push script (2026-07-09)
  543. c7633ec4 2026-07-09 auto-save: 2026-07-09T09:09:49 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/theme-LIVE-591-freshpull-20260709/snippets/color-palette.liquid vendor-scrapers/china-seas-refresh
  544. 78f9bfbe 2026-07-09 cadence: sample-only importer titles/describes Fabric lines as Fabric, not Wallcoverings
  545. 0d7f32d8 2026-07-09 Alan Campbell: re-sweep 103 new-arrival products wallcovering->fabric (title/tags/desc)
  546. 8a467c31 2026-07-09 color-dot deep-link SHIPPED to live theme #144076931123; memo → DONE-
  547. 6a1dfb5e 2026-07-09 pending-approval: color-dot specific-product deeplink memo + staged push script (2026-07-09)
  548. 6c3ffae7 2026-07-09 auto-save: 2026-07-09T08:09:34 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl
  549. bbf71b11 2026-07-09 shop-by-color: client-side href fix for 6 dead color-tab handles
  550. a58a0782 2026-07-09 auto-save: 2026-07-09T07:39:29 (3 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  551. b9f7c85d 2026-07-09 auto-save: 2026-07-09T07:09:24 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  552. 811288c2 2026-07-09 auto-save: 2026-07-09T06:09:13 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  553. a1719fc8 2026-07-09 auto-save: 2026-07-09T05:09:02 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/activations-2026-07-09.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl
  554. bfa1a84d 2026-07-09 auto-save: 2026-07-09T04:08:49 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  555. 635fe57d 2026-07-09 auto-save: 2026-07-09T03:08:39 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  556. 6fee3b5e 2026-07-09 auto-save: 2026-07-09T02:38:33 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/phillipromano-land-20260709T000104.json
  557. f947a312 2026-07-09 auto-save: 2026-07-09T02:08:28 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  558. 8c1cde7b 2026-07-09 auto-save: 2026-07-09T01:08:17 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl
  559. 34f0d3a1 2026-07-09 auto-save: 2026-07-09T00:38:11 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/coordonne-land-20260709T000104.json shopify/scripts/data/bucketB/grahambrown-land-20260709T000104.json shopify/scripts/data/bucketB/harlequin-land-20260709T000104.json
  560. 06bacc65 2026-07-09 auto-save: 2026-07-09T00:08:06 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260709T000104.json
  561. 80c2f9e1 2026-07-08 auto-save: 2026-07-08T23:07:56 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/activations-2026-07-09.jsonl
  562. f7f37b82 2026-07-08 auto-save: 2026-07-08T21:07:34 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  563. e1cf88dd 2026-07-08 auto-save: 2026-07-08T20:07:23 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  564. f5a863a2 2026-07-08 auto-save: 2026-07-08T19:07:13 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl vendor-scrapers/china-seas-refresh
  565. 694c1582 2026-07-08 auto-save: 2026-07-08T18:07:01 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-07-09.json shopify/scripts/cadence/data/upload-restore-2026-07-09.jsonl
  566. 15356b1a 2026-07-08 auto-save: 2026-07-08T17:06:50 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/activations-2026-07-08.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl
  567. c3e9a9f1 2026-07-08 auto-save: 2026-07-08T16:06:38 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  568. fd035f27 2026-07-08 GMC re-gate: exclude Google & YouTube publication from all product-publish chokepoints (Steve policy 2026-07-08)
  569. 79f6183d 2026-07-08 auto-save: 2026-07-08T15:06:23 (8 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl
  570. 3046c493 2026-07-08 color tabs: fix dead collection handles (blue-wallpaper, grey-silver) + interpolated even-row PDP palette
  571. fa453341 2026-07-08 auto-save: 2026-07-08T14:36:14 (3 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  572. aa8cff6a 2026-07-08 auto-save: 2026-07-08T14:06:04 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  573. 36a54f98 2026-07-08 auto-save: 2026-07-08T13:05:49 (10 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl shopify/scripts/catalog-push-to-kamatera.sh
  574. 8db74464 2026-07-08 auto-save: 2026-07-08T12:35:41 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/catalog-push-to-kamatera.sh vendor-scrapers/china-seas-refresh shopify/scripts/audits/harmonize-wallquest-units-before.jsonl shopify/scripts/harmonize-wallquest-length-units.py
  575. 59d5c2f8 2026-07-08 standing mac3->Kamatera catalog push: additive nightly sync of all *_catalog tables (keeps Kamatera grid enrichment — mfr-SKU search, stock — current; closes the cross-host staging-table gap)
  576. 881cc056 2026-07-08 auto-save: 2026-07-08T12:05:34 (11 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/audits/doubleroll-lengths-brewster-before.jsonl shopify/scripts/audits/doubleroll-lengths-thibaut-before.jsonl shopify/scripts/audits/doubleroll-lengths-wallquest-before.jsonl shopify/scripts/cadence/data/cadence-cursor.json
  577. 2983280e 2026-07-08 auto-save: 2026-07-08T11:05:21 (13 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/audits/dwtt-doubleroll-before-state.jsonl shopify/scripts/cadence/data/activations-2026-07-08.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json
  578. 7f189ae9 2026-07-08 Double-roll S/R+D/R lengths: new sqft-classified script (single vs bolt per product) + theme renders explicit single/double_roll_length rows (fixes Thibaut halving mismatch); Thibaut live 2198 mf
  579. 14e4dd9e 2026-07-08 auto-save: 2026-07-08T10:35:15 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/audits/dwtt-doubleroll-before-state.jsonl vendor-scrapers/china-seas-refresh
  580. 6dc6439c 2026-07-08 PDP color palette: shrink swatches to ~1/3 (84->28px) + link each color to storefront search for all published SKUs of that color (live theme 144076931123)
  581. 7decbc76 2026-07-08 Thibaut double-roll: automate — importer stamps min/step=2 at birth (add Thibaut to DOUBLE_ROLL_VENDORS) + once-daily dims/copy/length backfill in cadence runner
  582. 1f5f1ce7 2026-07-08 auto-save: 2026-07-08T10:05:08 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  583. 63f5466d 2026-07-08 DWTT double-roll: live re-run w/ --fill-catalog — 576 metafields, 100% min/step=2, Rimba Cornflower + tail fixed
  584. 41a07484 2026-07-08 auto-save: 2026-07-08T09:04:55 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  585. 8d7fc91f 2026-07-08 auto-save: 2026-07-08T08:04:43 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl
  586. c47d7da6 2026-07-08 auto-save: 2026-07-08T07:34:38 (3 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  587. e4938f41 2026-07-08 auto-save: 2026-07-08T07:04:32 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  588. 10f99fab 2026-07-08 auto-save: 2026-07-08T06:04:21 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  589. 13bb3091 2026-07-08 auto-save: 2026-07-08T05:04:10 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/activations-2026-07-08.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl
  590. 9f874172 2026-07-08 auto-save: 2026-07-08T04:04:00 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  591. ac744534 2026-07-08 auto-save: 2026-07-08T03:03:50 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  592. 7de16299 2026-07-08 auto-save: 2026-07-08T02:33:44 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/phillipromano-land-20260708T000105.json
  593. ed940868 2026-07-08 auto-save: 2026-07-08T02:03:39 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  594. 296dbb8c 2026-07-08 auto-save: 2026-07-08T01:03:28 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-07-08.json
  595. 1458e475 2026-07-08 auto-save: 2026-07-08T00:33:23 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/coordonne-land-20260708T000105.json shopify/scripts/data/bucketB/grahambrown-land-20260708T000105.json shopify/scripts/data/bucketB/harlequin-land-20260708T000105.json
  596. 263bd304 2026-07-08 auto-save: 2026-07-08T00:03:17 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260708T000105.json
  597. 5a317c17 2026-07-07 auto-save: 2026-07-07T23:03:07 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl vendor-scrapers/china-seas-refresh
  598. 8f5b4f8a 2026-07-07 auto-save: 2026-07-07T22:33:01 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  599. c9382f4d 2026-07-07 auto-save: 2026-07-07T22:02:56 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-failures.jsonl shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json
  600. 3dedabb0 2026-07-07 auto-save: 2026-07-07T21:32:51 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  601. 117fca10 2026-07-07 auto-save: 2026-07-07T21:02:45 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json shopify/scripts/cadence/data/upload-restore-2026-07-08.jsonl
  602. 09afa34a 2026-07-07 auto-save: 2026-07-07T20:32:33 (4 files) — DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-scrape.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  603. 5f7bf8f8 2026-07-07 auto-save: 2026-07-07T20:02:25 (7 files) — DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-scrape.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json
  604. 62e088fe 2026-07-07 auto-save: 2026-07-07T19:32:17 (4 files) — DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-scrape.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  605. 6e1b8073 2026-07-07 auto-save: 2026-07-07T19:02:10 (9 files) — DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-listing.json DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-scrape.jsonl DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-scrape.mjs pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl
  606. fe73a5c1 2026-07-07 auto-save: 2026-07-07T18:32:03 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  607. f221954f 2026-07-07 auto-save: 2026-07-07T18:01:57 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-07-08.json
  608. 17df523b 2026-07-07 auto-save: 2026-07-07T17:31:51 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  609. 0993328a 2026-07-07 auto-save: 2026-07-07T17:01:44 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/activations-2026-07-07.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-07.json
  610. c966731e 2026-07-07 auto-save: 2026-07-07T16:31:38 (4 files) — DW-Programming/ImportNewSkufromURL/pierre-frey-fabric-scrape.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  611. dfd74c4b 2026-07-07 auto-save: 2026-07-07T16:01:30 (13 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-07.json shopify/scripts/cadence/data/upload-restore-2026-07-07.jsonl
  612. 6bb35ae0 2026-07-07 auto-save: 2026-07-07T15:31:24 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/activations-2026-07-07.jsonl vendor-scrapers/china-seas-refresh
  613. f7a2cfba 2026-07-07 auto-save: 2026-07-07T15:01:17 (9 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/pierre-frey-enrich.mjs pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json
  614. 89a20838 2026-07-07 pierre-frey import: deLabel strips leading Wallcovering prefix too (undo sibling sweep's replace-not-strip noise on re-runs)
  615. b10f1ac8 2026-07-07 Pierre Frey LAUNCH via cadence: vendors.js sampleOnly entry + activate-gated quote-only bypass (quotes tag -> activate w/ null price) + dedicated drip wrapper; first 15 promoted live (ACTIVE 3->18)
  616. c428c621 2026-07-07 auto-save: 2026-07-07T14:31:09 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl DW-Programming/ImportNewSkufromURL/pierre-frey-enrich.mjs DW-Programming/ImportNewSkufromURL/pierre-frey-shopify-draft.mjs pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl
  617. db98edc0 2026-07-07 auto-save: 2026-07-07T14:01:00 (8 files) — DW-Programming/ImportNewSkufromURL/pierre-frey-enrich.mjs DW-Programming/ImportNewSkufromURL/pierre-frey-shopify-draft.mjs pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json
  618. 68b03a86 2026-07-07 chore: v1.1.10 -> v1.1.11 (session close)
  619. f1af873a 2026-07-07 chore: refactor session migration scripts (qh-fabric simplify), session close
  620. 5cc0714b 2026-07-07 auto-save: 2026-07-07T13:30:45 (15 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/package-lock.json shopify/package.json shopify/scripts/enrich-color-details-local.py
  621. 24ea6876 2026-07-07 dedup v3: ID-based, 5xx-retry, resumable
  622. 5579a5c4 2026-07-07 dedup v2: no-redirect mode, keeper adopts shortest-clean handle
  623. 3e87194c 2026-07-07 add collection dedup script (backup+delete+301 redirect+retitle)
  624. 904dc48f 2026-07-07 add color/motif Wallcovering-collection rename script (DTD verdict A)
  625. 5cdb9b92 2026-07-07 auto-save: 2026-07-07T13:00:27 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-07.json shopify/scripts/cadence/data/upload-restore-2026-07-07.jsonl
  626. 7fa64131 2026-07-07 deploy Thibaut srLen garble fix (890 pages) + provenance
  627. b46225ab 2026-07-07 add generalized QH fabric reclass script (vendor-parameterized)
  628. 51a09038 2026-07-07 cadence: QH fabric brands (Quadrille/Home Couture/Charles Burger/Cloth and Paper/Plains) fallback Wallcovering->Fabric
  629. 5d0a3818 2026-07-07 Fix engOf label: recognize -real rooms (cosmetic; correct files already pushed)
  630. ae1c8df7 2026-07-07 auto-save: 2026-07-07T12:30:21 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  631. 94c4f0d1 2026-07-07 auto-save: 2026-07-07T12:00:16 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-07.json shopify/scripts/cadence/data/upload-restore-2026-07-07.jsonl
  632. faf49e94 2026-07-07 auto-save: 2026-07-07T11:30:11 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enrich-marketed-mismatch.jsonl vendor-scrapers/china-seas-refresh
  633. 1b0b9a6b 2026-07-07 auto-save: 2026-07-07T11:00:06 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-07.json shopify/scripts/cadence/data/upload-restore-2026-07-07.jsonl vendor-scrapers/china-seas-refresh
  634. 49c7f068 2026-07-07 enrich: near-solid products trust merchant color name (deep 'Red' oxblood reads Red, not blocked); hue/lightness-tolerant thresholds; mismatch log only on genuine conflicts
  635. d8edd9bf 2026-07-07 contrarian pass 2 fixes: neutral cool-grey lexicon (Mist/Fog/Zinc/Putty) kills Celadon-on-grey; durable enrich-failures.jsonl; marketed-vs-image mismatch review log; drop center-crop (hurt full-bleed swatches)
  636. d43915e2 2026-07-07 auto-save: 2026-07-07T10:30:01 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/enrich-color-details-local.py vendor-scrapers/china-seas-refresh
  637. f1fea763 2026-07-07 cadence: Alan Campbell productType fallback Wallcovering->Fabric (root-cause, mirrors Suncloth fix)
  638. b21d7edb 2026-07-07 contrarian fixes: (1) read color_details BEFORE legacy color_dots_json (no shadowing); (2) anchor marketed color to dominant swatch on near-solid products (Gold foil no longer 'Walnut'), canonical lexicon names
  639. 75188a05 2026-07-07 enrich: replace LLM naming with deterministic ~115-color interior-design lookup table (DTD verdict A) — reliable+consistent+instant; redmean nearest-match, dark-red family added, --force re-enrich
  640. 55858e64 2026-07-07 Alan Campbell: reclassify wallcovering->fabric (type/title/tags/desc)
  641. e4711d86 2026-07-07 Parameterize room push (CATALOG/VIEW) — serves Carl Robinson + Daisy Bennett
  642. 1d7baf73 2026-07-07 Parameterize real-sample composite (CATALOG/VIEW/OUTDIR) + run Daisy Bennett
  643. ad315325 2026-07-07 Real-sample room composites via patch-quilting (the winning method)
  644. 660a9307 2026-07-07 material envelope fix: unwrap 523 + Ultrasuede + live-theme guard + canary
  645. cbd55ff1 2026-07-07 enrich: overwrite legacy 'percentage'-schema color_details (QA found hallucinated hexes — burgundy product showed tan); skip only this pass's 'pct' schema
  646. b8804ebf 2026-07-07 enrich: add resumable --all-published batch mode (cursor paginate, skip already-enriched, progress logging)
  647. 71defcf6 2026-07-07 color-palette: fix double-json encode of data-colors (broke Tier1 enriched read); add hybrid local color enrichment (PIL pixels + qwen2.5vl naming)
  648. f168a645 2026-07-07 auto-save: 2026-07-07T09:29:44 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/enrich-color-details-local.js shopify/scripts/enrich-color-details-local.py
  649. 279d3995 2026-07-07 color-palette: demote single-hex below canvas; renderMeta fallback so un-enriched products show multi-color+% not a lone 'Color' card
  650. fb621f98 2026-07-07 gitignore daisy-bennett-viewer img/ + rooms-local/ (keep swatches/renders out of git)
  651. 51842e8e 2026-07-07 gitignore rooms-local/ PNGs (keep 200MB of renders out of history)
  652. a2719adf 2026-07-07 PDP: add color-palette (big swatch cards + %) between product images and Other Colorways; replaces color-dots strip (live theme 5.9.1 pull)
  653. bb62c10f 2026-07-07 Gated Shopify room push + judge label-normalize fix
  654. 7ffe7cc1 2026-07-07 auto-save: 2026-07-07T08:59:35 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/theme-LIVE-591/snippets/product-gallery.liquid vendor-scrapers/china-seas-refresh scripts/wallquest-refresh/carl-robinson-viewer/rooms-local/GRS-100020-kontext.png scripts/wallquest-refresh/carl-robinson-viewer/rooms-local/NET-100042-sdxl.png
  655. 10cc4fda 2026-07-07 auto-save: 2026-07-07T08:56:34 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-07.json shopify/scripts/cadence/data/upload-restore-2026-07-07.jsonl
  656. e194baa0 2026-07-07 Multi-book local-room queue: prep swatches + sequential render
  657. 16b10021 2026-07-07 Reusable local room-render pipeline (any DW catalog)
  658. 8df04ff8 2026-07-07 Local VLM auto-judge + finalize for room bake-off
  659. 0302bcad 2026-07-07 Local room-engine bake-off: FLUX Kontext + SDXL/IP-Adapter + PIL
  660. e968f838 2026-07-07 Carl Robinson viewer: wire to local images + persist out of /tmp
  661. 4298ac97 2026-07-07 fix Slack webhook crash (inline-fetch variant): 3 unwrapped push/import scripts short-circuit-guarded; fleet unwrapped-crashers now 0
  662. 98dd515a 2026-07-07 fix Slack webhook crash: 66 DW scripts had literal '${SLACK_WEBHOOK_URL}' -> env var + guard (no-op when unset); syntax-verified, Thibaut repeat-scraper live-verified no post-write crash
  663. 30ee316b 2026-07-07 thibaut-refresh: use repeat-scraper (standalone refresher) — live-verified writes to local dw_unified, 0 scrape errors; run.sh tolerates the pre-existing Slack-webhook non-fatal exit
  664. df78838a 2026-07-06 thibaut-refresh: reference vendor refresh wiring for the recrawl dispatcher (scrape->local dw_unified->price-finder, no publish)
  665. 51edfffd 2026-07-06 backfill-malibu-mfr: recover real SKU+mfr+vendor for 61 held Malibu orphans from wallquest_catalog (61/61 written)
  666. c6296c08 2026-07-06 hold-orphan-438: reversible unpublish->draft for go-live-gate orphans (438 held, 0 failed)
  667. 7ff102ab 2026-07-06 chore: v1.1.10 (session close — bucketB TSV env override)
  668. 9ccf10e3 2026-07-06 bucketB: allow BUCKETB_TSV env override for scoped one-shot roll cohorts
  669. ce4e87f8 2026-07-06 chore: v1.1.9 (session close — GRS width fix + command54 retirement)
  670. 3ca302f9 2026-07-06 Mark command54-shopify-push.js RETIRED (dormant, kept for reconcile + GRS guard)
  671. ec3bf17e 2026-07-06 Guard GRS grasscloth width to 36" in command54 push (never inherit upstream vinyl 52/54")
  672. d183fe68 2026-07-06 Normalize all 1422 GRS grasscloth widths to 36" (kill 52/54" vinyl default)
  673. 783b84d8 2026-07-06 chore: version bump (session close) — WallQuest→PR naturals live + Abruzzo collection
  674. 874f3387 2026-07-06 chore: v1.1.6 → v1.1.7 (session close: WallQuest onboard + PR cleanup ops tooling)
  675. b0437400 2026-07-06 Strip raw Lillian August color codes from 13 draft LN pattern names
  676. f1d58be7 2026-07-06 fix #3: material-SKU scheme downstream — VENDOR_RANGES entries for GRS/PWV/RAF/etc + isDwFamilySku() so GRS- naturals aren't misclassified as mfr SKUs by !startsWith('DW') filters
  677. 6478f4b1 2026-07-06 chore: v1.1.6 (session close — Daisy Bennett onboard + contrarian fixes + WallQuest non-vinyl interior-design enrich)
  678. de1e2564 2026-07-06 Backfill images for 92 imageless Lillian August veneers (Browserbase, wallquest.com/<mfr>), 89/89 scraped 0 miss
  679. cd7214e5 2026-07-06 Create Phillipe Romano 'Abruzzo Natural Collection' (368 WallQuest->PR natural textiles)
  680. 63611c9a 2026-07-06 LN colorway decollapse tool (image-hex → distinct names)
  681. d1369ad4 2026-07-06 WallQuest->PR: Lillian August 140 live (material titles) + Paper & Ink 15 clean textiles live; 65 prints/vinyl filtered; generic scraper, robust title-fix, exact-SKU activate
  682. 9c4de69d 2026-07-06 wallquest import rule: no price on a loaded page = discontinued (excludes transient nav/scrape failures)
  683. 87ba5cdc 2026-07-06 Daisy contrarian fixes: strip coordinate-image contamination, GRS-10109 color, settlement->DB, repeat/match metafields; + interior-design style/color enrich for veneers+CR
  684. 91e639ed 2026-07-06 WallQuest title material-append + renumber planners
  685. a0933e5b 2026-07-06 wallquest→PR: Lillian August onboard + per-yard/8yd model + canonical increment fix
  686. 3c20ad3b 2026-07-06 Daisy Bennett: room-QA sweep (Gemini vision) — 62/62 rooms, 0 people/distortion; soft flags are patterned/metallic naturals (not defects)
  687. 52637906 2026-07-06 wallquest crawl: priced-first ordering + full-catalog (every SKU) run — active prices secured first, discontinued sweep last; resumable
  688. 98abb531 2026-07-06 Luxuria retitle dry-run tool — color:tag path proven lossy/colliding
  689. cb2e90b9 2026-07-06 wallquest write.cjs: also persist Roll Length (per-item unit basis: 8yd bolt vs 11yd roll), discontinued flag, price_updated_at. Full active refresh running via cracked login.
  690. ee576edf 2026-07-06 Daisy Bennett: room-setting images (62 generated on Kamatera, attached to live PDPs at last position, room_setting tag)
  691. 080ee652 2026-07-06 Kravet-under-PR re-vendor tool (dry-run default; --apply/--archive gated)
  692. a109ccd5 2026-07-06 Carl Robinson increments: add global.Sold-Per/Minimum to full canonical set + committed value-asserting verifier (67/67 pass)
  693. 21c4a09b 2026-07-06 DWTT double-roll PHASE 2 live: 3105 metafields, 0 errors (catalog-backfilled dims)
  694. 1e1c3b22 2026-07-06 Add --fill-catalog: backfill single-roll W/L from thibaut_catalog by dw_sku
  695. 0d777f6f 2026-07-06 Carl Robinson: add 'Wallcovering' type descriptor to titles + live Shopify title-update script
  696. f5ba693d 2026-07-06 PR rescope: brand-leak detection (found 11 Kravet mis-vendored under PR)
  697. 3d5ae387 2026-07-06 Carl Robinson: enforce 8-yard increments on all 67 live SKUs + mirror sync
  698. 921c8ce3 2026-07-06 PR re-scope audit (prefix→line) + sellable/sample breakdown in dedup audit
  699. 6cad6ab6 2026-07-06 Add DWTT double-roll min/step + dims metafield writer (dry-run verified, live gated)
  700. 47004a53 2026-07-06 Daisy Bennett + Sag Harbor: enforce 8-yard order increments (min=8/step=8, unit=Per Yard, display_variant tag)
  701. ece3218f 2026-07-06 Daisy Bennett: reconcile SKUs to GRS- (no DW); retitle all 63 as Pattern+Material+Color (dedup material, fix Antika-Antika/Morrocan/ampersands)
  702. d6339904 2026-07-06 Add --reslug mode (34 clean handles) + read-only PR dedup audit
  703. c3082e42 2026-07-06 WallQuest→PR grasscloth pusher + retitle mode; fix 34 collapsed live titles
  704. 7c206ae0 2026-07-06 wallquest login: check Remember-me → persistent session (one solve covers the whole run, no per-20min re-login). Enables truly-free full refresh.
  705. 5a738537 2026-07-06 wallquest real-chrome scraper: discontinued-detection + honest realPriced metric + active-only filter + free-mode (no-2captcha, reuse cached session) + resumable. Pilots: active 20/20 priced, tiers verified (102.38/60.64/45.92).
  706. 68d732b0 2026-07-06 sangetsu dossier: record Goodrich sole/exclusive distributor + distributor field plan
  707. 1167f239 2026-07-06 Brand admin micro-site template: Amazon-style collapsed facets, density slider 1-12, grid/list toggle, brand-parameterized (DaisyBennett+CarlRobinson live)
  708. 874d744e 2026-07-06 5x: report — favicon 404 fixed (M3 clean x2); B6/click-through are harness/phantom, not build defects
  709. c16dd080 2026-07-06 5x sweep 1: suppress favicon 404 (inline empty favicon) in both viewers
  710. 3b2621b4 2026-07-06 Daisy Bennett Vol 2 live-store fixes: strip related-carousel images (355 removed), drop-DW SKU rename (GRS-/SIS-/etc, unique), 8yd-bolt packaged metafield
  711. bd1c4cee 2026-07-06 Localize Carl Robinson viewer (:64761): local images + real-textiles filter
  712. 7efced75 2026-07-06 wallquest login CRACKED: real Chrome (channel:chrome persistent profile) + 2captcha reCAPTCHA solve → logs in + prices sy21843=$83.16 (spike proven). Root cause was login reCAPTCHA, not creds/fingerprint.
  713. a48458ac 2026-07-06 Daisy Bennett viewer: local images (bypass WallQuest hotlink 403) + real-textiles filter (drop cork/mica)
  714. 3e22b8c9 2026-07-06 Daisy Bennett Vol 2 -> LIVE: 65 products pushed+activated (Phillipe Romano), sold per-yard 8-yd increments; settlement override on 4 bird SKUs
  715. 04409a10 2026-07-06 Daisy Bennett GO LIVE: 63 products active on Shopify (Phillipe Romano), settlement all-OK, images rehosted
  716. 5d6aa242 2026-07-06 Carl Robinson: push material-inclusive titles (City Material Color | Phillipe Romano) to live products
  717. 2347c1e6 2026-07-06 Carl Robinson: fix publish-channels to anchor on carl_robinson_catalog (registry re-keyed off DWCR-)
  718. 2faa01a5 2026-07-06 Carl Robinson: harden Shopify SKU update — key on product-id+variant-role, live duplicate-guard, idempotent (prevents GRS/MIC number dupes)
  719. 366e5801 2026-07-06 Carl Robinson: unique running 6-digit SKU numbers across book (no per-series repeat)
  720. 1df17882 2026-07-06 wallquest refresh: port login fix into scrape.cjs (.login-button submit + 14s price-AJAX wait + loginVerified skip-unpriced-chunk + CHUNK≤15 + WQ_LIMIT test hook) — per memory wallquest-login-price-fix
  721. eaec8222 2026-07-06 Carl Robinson: SKU numbers start above 100000 (GRS-100001…)
  722. cf7d3da2 2026-07-06 Carl Robinson: 6-digit sequential SKU numbers (GRS-000001…)
  723. e6d41099 2026-07-06 Carl Robinson: DW-less sequential SKU series (GRS-001, PWV-001, CORK-001…), map from live DWCR- for one-shot Shopify update
  724. 83f25e3d 2026-07-06 Daisy Bennett: adjudicate flagged families — Diamond Back Weave→DWRAF (Gemini descriptions confirm raffia)
  725. 41f0ede8 2026-07-06 wallquest grasscloth/veneers: login fix + Phillipe Romano relabel
  726. bccb98f8 2026-07-06 Carl Robinson: material-based SKU prefixes (DWGRS/PWV/CORK/MIC…) matching Daisy Bennett; DB+drafts remapped, Shopify variant-SKU updater
  727. 4511065a 2026-07-06 Daisy Bennett: material-based SKU prefixes (DWGRS/PWV/RAF/SIS/LIN/CORK/ABA), family-consistent majority-vote
  728. ad9acbf8 2026-07-06 Add Daisy Bennett Vol 2 internal staging viewer (sort+density, settlement badges, basic auth)
  729. 0862568a 2026-07-06 Daisy Bennett: review viewer + Shopify draft payloads (63 products, draft-only, leak+gate PASS)
  730. 95ef94b5 2026-07-06 Onboard Daisy Bennett Naturals Vol 2 (WallQuest→Phillipe Romano): scrape 65 SKUs, stage to daisy_bennett_catalog (DWAY-40xxx), settlement-flag bird chinoiserie
  731. 532c47be 2026-07-06 Onboard Daisy Bennett Natural Wallcoverings (WallQuest→Phillipe Romano, 63 SKUs, isolated daisy_bennett_catalog)
  732. 0eddd307 2026-07-06 Carl Robinson: Shopify push (draft) + activate/publish-all-channels scripts (env-only creds)
  733. 60fb5850 2026-07-06 Carl Robinson E20 → Phillipe Romano onboard pipeline (scrape→enrich→rooms→drafts, DWCR-, beach-city naming)
  734. 95e17fd7 2026-07-06 wallquest: onboard specialty grasscloths & veneers (87 SKUs staged DWQW-61453..61539)
  735. bd1f7ba7 2026-07-03 chore: macstudio3 migration — reconcile from mac2 + repoint paths (stevestudio2→macstudio3, node/npm/npx→/opt/homebrew)
  736. 59caa41f 2026-07-03 auto-save: 2026-07-03T04:54:58 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl vendor-scrapers/china-seas-refresh
  737. c4e2594d 2026-07-03 auto-save: 2026-07-03T03:54:40 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl vendor-scrapers/china-seas-refresh
  738. 5cfdbe4e 2026-07-03 auto-save: 2026-07-03T02:54:22 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl vendor-scrapers/china-seas-refresh
  739. c8ebed82 2026-07-03 auto-save: 2026-07-03T02:24:13 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/phillipromano-land-20260703T000102.json
  740. 631b2292 2026-07-03 auto-save: 2026-07-03T01:54:05 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl vendor-scrapers/china-seas-refresh
  741. 9cacf47d 2026-07-03 auto-save: 2026-07-03T00:53:43 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-07-03.json
  742. edc16c20 2026-07-03 discontinued-sweep COMPLETE: 380 candidates / 378 eligible; fix GID double-prefix + NULL dw_sku resolver bug; title results in report
  743. c9448c2e 2026-07-03 auto-save: 2026-07-03T00:23:33 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh scripts/discontinued-sweep/data/thibaut-title-results.jsonl shopify/scripts/data/bucketB/annafrench-land-20260703T000102.json
  744. db2f1914 2026-07-02 auto-save: 2026-07-02T23:53:24 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  745. b0e5a29c 2026-07-02 auto-save: 2026-07-02T23:23:15 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  746. 961ed424 2026-07-02 auto-save: 2026-07-02T22:53:06 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  747. 5135c06b 2026-07-02 auto-save: 2026-07-02T22:22:57 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  748. f10b22ba 2026-07-02 auto-save: 2026-07-02T21:52:48 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  749. e59f4e1e 2026-07-02 auto-save: 2026-07-02T21:22:37 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  750. b28aca7d 2026-07-02 auto-save: 2026-07-02T20:52:28 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl
  751. b57390fe 2026-07-02 auto-save: 2026-07-02T20:22:15 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  752. 092a3b8e 2026-07-02 auto-save: 2026-07-02T19:52:05 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl
  753. ff137bc5 2026-07-02 auto-save: 2026-07-02T19:21:56 (4 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  754. 5656a8fc 2026-07-02 chore: lint, refactor (makedirs guard), v1.1.5 (session close)
  755. 6ded6eae 2026-07-02 auto-save: 2026-07-02T18:51:47 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-03.json shopify/scripts/cadence/data/upload-restore-2026-07-03.jsonl
  756. c4aed1be 2026-07-02 auto-save: 2026-07-02T18:21:38 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl vendor-scrapers/china-seas-refresh
  757. 2f24a2ee 2026-07-02 auto-save: 2026-07-02T17:51:29 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-catalog-refresh.jsonl shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-07-03.json
  758. 4d58b2a4 2026-07-02 fix the 2 DWTT wave-1 conflict SKUs (AT57882, T41013): PDP-confirmed single-roll dims + uom copy
  759. 9bd50424 2026-07-02 discontinued-sweep: fix pgrep self-match deadlock in chained jobs; emit mfr_sku backfill proposal (115 rows)
  760. 93ffaede 2026-07-02 auto-save: 2026-07-02T17:19:40 (3 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  761. 66f903cb 2026-07-02 chore: lint pass + v1.1.4 (session close — dwtt conflict-2 fix script staged)
  762. 371e9ec6 2026-07-02 chore: session-close lint pass (all clean), v1.1.3
  763. e01ac95d 2026-07-02 auto-save: 2026-07-02T16:49:31 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  764. 0974ca4c 2026-07-02 auto-save: 2026-07-02T15:48:57 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl
  765. d9c14f3f 2026-07-02 auto-save: 2026-07-02T15:18:48 (3 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  766. f682f27e 2026-07-02 auto-save: 2026-07-02T14:48:40 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl
  767. 1543d7ff 2026-07-02 auto-save: 2026-07-02T14:18:33 (3 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  768. 5b532286 2026-07-02 chore: lint (exec bit) + comment clarity on theme-push scripts, version bump (session close)
  769. e34e6b7a 2026-07-02 auto-save: 2026-07-02T13:48:24 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  770. 7a3e32cb 2026-07-02 auto-save: 2026-07-02T13:18:16 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 tmp-measure.mjs vendor-scrapers/china-seas-refresh
  771. c180cdfd 2026-07-02 auto-save: 2026-07-02T12:48:04 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  772. 2f00d11c 2026-07-02 limited-stock badge: fix dead-branch insertion (China-block {% if dw_is_blocked %} has its own </head>; insert before LAST </head>) + own-line CSS under qty-inline flex row
  773. 631ae2c3 2026-07-02 PDP qty-inline: move quantity stepper to the right of the price (staged on dev theme, live gated)
  774. 7568c2fa 2026-07-02 auto-save: 2026-07-02T11:47:40 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  775. a6251257 2026-07-02 discontinued-sweep FINAL: thibaut 299 discontinued (285 dual-source confirmed), combined 356 archive-eligible; executor accepts both positive-signal classes
  776. 17aa1d50 2026-07-02 discontinued-sweep: title-match resolver recovers 115/416 orphan thibaut rows (SID-keyed); executor resolves SID rows by shopify_id
  777. 927c2fd8 2026-07-02 auto-save: 2026-07-02T11:17:30 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-results.jsonl vendor-scrapers/china-seas-refresh audits/at57882-media-before.json shopify/scripts/audit-stale-room-renders.py
  778. 6c70b553 2026-07-02 discontinued-sweep: document york excluded-739 follow-up path (nopCommerce search caveat)
  779. 3e476029 2026-07-02 discontinued-sweep: sitemap gate is signal-aware — explicit-text flags (live page w/ vendor discontinued note) are not skipped
  780. 4182db24 2026-07-02 discontinued-sweep: archive executor (snapshot-first, fail-closed resolution, thibaut sitemap gate) + weekly plist draft
  781. 0f8eb1f0 2026-07-02 auto-save: 2026-07-02T10:47:21 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/discontinued-sweep/data/thibaut-results.jsonl shopify/scripts/audits/dwtt-af-spec-audit.json shopify/scripts/audits/dwtt-single-roll-dimensions-wave1.json shopify/scripts/cadence/data/cadence-cursor.json
  782. 015b437f 2026-07-02 min2/step2 top-up runner for 74 post-0630 roll products; wave-1 dims push + Kamatera write-back executed (Steve-approved)
  783. 7c27f65f 2026-07-02 discontinued-sweep: contrarian gate addendum — SAMPLE-sku clarification, sitemap cross-check, no-op metafield caveat
  784. 6f9c53e2 2026-07-02 discontinued-sweep: York sweep complete — 66 discontinued candidates (all explicit vendor markers) of 941 probed; report + candidates CSV
  785. 8ab92c6c 2026-07-02 DWTT dims wave-1 contrarian fixes: uom copy gated on confirmed single-roll length (AT57882/T41013 now withheld), full 1,654-product before-state capture to audits/dwtt-dims-before-state.jsonl; dry-run re-run 3,111 writes / 1,652 products
  786. dba6088b 2026-07-02 auto-save: 2026-07-02T10:17:10 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh onboarding/sangetsu-lilycolor/scripts/sangetsu-spec-fold.py onboarding/sangetsu-lilycolor/scripts/sangetsu-spec-scrape.mjs scripts/discontinued-sweep/data/thibaut-results.jsonl
  787. e382b648 2026-07-02 Thibaut wave-2 backfill FULL RUN complete: 894/1341 PDP-confirmed lengths into local mirror (0 fetch errors, 24 disco-redirect, 423 no-length, 182 conflicts logged); wave-1 dry-run refreshed to 3,113 writes / 1,654 live products
  788. fdd0045b 2026-07-02 Read-only cross-brand single-roll min/step audit: 15,034 variants/62 vendors — 2,048 active missing min, 584 min!=2, 7 realized odd-qty orders 60d; DWJS #32512 leak is enforcement-layer not data
  789. 7590d2f5 2026-07-02 sangetsu: full per-colorway build — 19,463 staged records (Steve: colorway=product), brand=Architectural Wallcoverings, Goodrich scrubbed (0 leaks), 0 banned/Unknown, DWGO, all gated draft (cost+settlement pending); 428 licensed-collection flagged, 99 settlement-risk triaged, 4,218 no-image drafted
  790. 0e30504b 2026-07-02 discontinued-sweep: report generator + README; limited-stock badge (dev theme push script, global.limited_stock metafield writer dry-run-default)
  791. 3f3883ed 2026-07-02 discontinued-sweep: verify-list builder + positive-signal probe runner (York public-site + Thibaut redirect detection, collision-guarded York-sourced list)
  792. d10d9eba 2026-07-02 auto-save: 2026-07-02T09:46:55 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  793. 1fc5c567 2026-07-02 Thibaut/AF wave-2 scrape backfill: PDP SingleRollLength -> local mirror with source_url+timestamp, discontinued-redirect + conflict exception logging (pilot 14/15 ok)
  794. 68d42e53 2026-07-02 DWTT/AF single-roll dimensions: read-only spec audit + wave-1 guarded metafield push script (dry-run validated, 1472 writes queued, 2 exceptions logged)
  795. 859140fc 2026-07-02 lily: strip AI-vision material descriptor from fallback titles (was hallucinating 'Grasscloth' etc into 1,556 customer titles with no pricebook backing) — title = '<Collection> <SKU> | Lilycolor'; material stays in design.material for tags
  796. e4e9e5f4 2026-07-02 auto-save: 2026-07-02T08:46:35 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl
  797. c364cf3f 2026-07-02 lily: upgrade fallback titles to real collection names (Will/Light/V-Wall/Materials from pricebook source_catalog) — 1,556 SKUs now 'Light LL6002 Grasscloth | Lilycolor'; headless-proven public search has 0 hits for these codes
  798. b3ca297d 2026-07-02 auto-save: 2026-07-02T08:16:24 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh onboarding/sangetsu-lilycolor/scripts/sangetsu-colorway-recover.py
  799. 48b151f8 2026-07-02 sangetsu: add swap-guarded per-pattern enrichment runner + autonomous download->enrich pipeline (session close)
  800. 5e8d6afa 2026-07-02 sangetsu: case-insensitive banned-word guard in overview extractor (fix 53 lowercase 'wallpaper' leaks)
  801. 8592e890 2026-07-02 audit: readiness re-run post-Sangetsu-storeapi-enrich (descriptions 0->614)
  802. ee401ffe 2026-07-02 auto-save: 2026-07-02T07:46:12 (8 files) — DW-MCP/daily-sales-summary.js DW-MCP/monitor-new-orders.js DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json
  803. 1f7a0643 2026-07-02 sangetsu: store-api detail enrich — descriptions 4->614 patterns + specs backfill (623/623)
  804. d613c488 2026-07-02 sangetsu: parse 5 pricebook PDFs -> 1,007 domestic-SKU specs (width/repeat/fire/price/functions)
  805. 005e77b9 2026-07-02 auto-save: 2026-07-02T06:41:33 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  806. 46bfc170 2026-07-02 snapshot before restart: Lilycolor enrichment complete (2634/2634) + readiness 320→2543 + full Sangetsu scrape (623 patterns, 13358 SKUs)
  807. 0dadf149 2026-07-02 audit: readiness re-run post-enrichment-complete (Lilycolor enriched 806→2634)
  808. a406aeb8 2026-07-02 mirror repair-justindavid-relative-urls.js (98 relative-path image URLs fixed on Kamatera, verify-200 + backup TSV)
  809. b9244f4b 2026-07-02 auto-save: 2026-07-02T05:41:14 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  810. 2b853518 2026-07-02 auto-save: 2026-07-02T05:11:05 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  811. 38ce5af4 2026-07-02 auto-save: 2026-07-02T04:40:57 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  812. edae30d3 2026-07-02 auto-save: 2026-07-02T04:10:49 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  813. 9c5a310e 2026-07-02 auto-save: 2026-07-02T03:40:40 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  814. 85e73713 2026-07-02 auto-save: 2026-07-02T03:10:31 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  815. 8ce9d177 2026-07-02 auto-save: 2026-07-02T02:40:23 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  816. e21cae32 2026-07-02 auto-save: 2026-07-02T02:10:14 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  817. fee5250d 2026-07-02 auto-save: 2026-07-02T01:40:05 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  818. 2a3ba35f 2026-07-02 auto-save: 2026-07-02T01:09:57 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-07-02.json
  819. 78552321 2026-07-02 auto-save: 2026-07-02T00:39:49 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/coordonne-land-20260702T000104.json shopify/scripts/data/bucketB/grahambrown-land-20260702T000104.json shopify/scripts/data/bucketB/harlequin-land-20260702T000104.json
  820. e6552873 2026-07-02 auto-save: 2026-07-02T00:09:40 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  821. cc8f2688 2026-07-01 auto-save: 2026-07-01T23:09:23 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  822. efee5838 2026-07-01 auto-save: 2026-07-01T22:09:06 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  823. eacf5d08 2026-07-01 auto-save: 2026-07-01T21:08:49 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  824. 7c4aa313 2026-07-01 auto-save: 2026-07-01T20:08:32 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  825. 34fe7a43 2026-07-01 auto-save: 2026-07-01T19:08:14 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl vendor-scrapers/china-seas-refresh
  826. c4010939 2026-07-01 auto-save: 2026-07-01T18:07:58 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-07-02.json shopify/scripts/cadence/data/upload-restore-2026-07-02.jsonl
  827. 551e2c48 2026-07-01 auto-save: 2026-07-01T17:07:40 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  828. bb98f74e 2026-07-01 auto-save: 2026-07-01T16:07:22 (6 files) — onboarding/sangetsu-lilycolor/scripts/mac2-guarded.sh pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl
  829. b57b199a 2026-07-01 auto-save: 2026-07-01T15:37:13 (4 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh onboarding/sangetsu-lilycolor/scripts/mac2-guarded.sh
  830. dcd602fb 2026-07-01 phase-3 image repair scripts: as_creation, bnwalls, missoni (verify-then-update, backup TSV first)
  831. 8da7b499 2026-07-01 auto-save: 2026-07-01T15:07:02 (7 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl onboarding/sangetsu-lilycolor/scripts/local-recover.sh pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json
  832. 151d386d 2026-07-01 merge-staging: fold DTD-A fallback titles into merged set (title 37->100%); gate-readiness: word-boundary fix for BAD_TITLE_TOKENS (LW1404 '404' false-match). Gates untouched: cost 0, activation_ready 0.
  833. f1960768 2026-07-01 title-fallback.py: synthesize compliant titles for 1580 title-less Lily SKUs (MFR-SKU fallback + Morris LIS map, settlement-flagged, needs-pattern-name reviewable)
  834. 2eb75f4c 2026-07-01 merge-staging: read canonical enrichment-full-063026A.final.jsonl (local-cache runner's remerged output), fall back to .jsonl
  835. e830c243 2026-07-01 enrich-full.py: lock-guard exits 75 (busy) not 0, so supervise.sh retries instead of false-concluding completion when a sibling holds the lock
  836. 8beec0f6 2026-07-01 recover: single supervised local-cache Lily enrichment (Henry chokes under sustained I/O)
  837. d76076d1 2026-07-01 gate-readiness.py: check error-tokens only in pattern-name segment (was false-matching '404' in SKU ranges LL6404/LV2404)
  838. fedfa292 2026-07-01 gate-readiness.py: read-only Activation-Gate pre-flight over merged Lilycolor records — quantifies publish-readiness per dimension (surfaced 1580 title-less SKUs as the main non-cost blocker)
  839. b7c30130 2026-07-01 auto-save: 2026-07-01T14:36:50 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/reconcile/brewster-import-queue.jsonl onboarding/sangetsu-lilycolor/.gitignore pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh onboarding/sangetsu-lilycolor/scripts/local-reenrich.sh
  840. f3581a99 2026-07-01 harden local-recover: completeness guard so a dead driver can't premature-merge final or falsely signal DONE
  841. bc93546c 2026-07-01 supervise.sh: auto-relaunch wrapper for resumable local-LLM jobs — survives Mac2 memory-pressure jetsam kills (rc==0 + no-new-rows = complete)
  842. fff3bcbc 2026-07-01 phase3 orphan recovery: $0 ai_tags derivation backfill (18,351 rows) + tiered image recovery orchestrator (approved memo 2026-07-01)
  843. fd27b7e1 2026-07-01 cost-sheet: catalog-level Lilycolor net-cost skeleton (5 rows, list-yen ranges prefilled, 6 cost cols blank) to clear the Activation Gate
  844. d7dea0f1 2026-07-01 audit: Sangetsu spec/desc gap is source-data (not merge) — Lilycolor is the near-term publish path
  845. 324313fd 2026-07-01 recover: enrich Lily swatches from local copy (Henry USB unmounts mid-run)
  846. dcd19e57 2026-07-01 enrich-full.py: treat mid-run Henry unmount as transient (VolumeUnavailable -> retry/defer) instead of burning SKUs as permanent image_not_found stubs (a memory-pressure I/O stall burned 1992 this way)
  847. db33be40 2026-07-01 enrich-full.py: retry-with-backoff on transient ollama outages instead of writing fail-stubs (a stub marked the SKU done and burned it forever; an ollama flap corrupted 2066 SKUs this way)
  848. ec40684a 2026-07-01 auto-save: 2026-07-01T13:44:23 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  849. 205ca41f 2026-07-01 auto-save: 2026-07-01T12:42:45 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  850. a7285b37 2026-07-01 audit: Sangetsu+Lilycolor Activation-Gate readiness manifest (063026A)
  851. 325fa91a 2026-07-01 DWGO approved for Sangetsu/Goodrich: lock prefix in publish-prep + stamp vendor_prefix onto staging (numeric assignment stays gated to registerSku)
  852. e1dcbbd9 2026-07-01 auto-save: 2026-07-01T11:42:20 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  853. b489cfc0 2026-07-01 merge-staging: idempotent join of unified specs + local enrichment + EN titles into publish-ready records (gates untouched)
  854. 2cc69d31 2026-07-01 chore: enrichment finisher + retry-errors self-heal scripts, v1.1.1 (session close)
  855. d55bd8f6 2026-07-01 auto-save: 2026-07-01T11:11:52 (8 files) — DW-Programming/ImportNewSkufromURL/Skills/morris-and-co/catalog.skill.ts DW-Programming/ImportNewSkufromURL/Skills/ralph-lauren/catalog.skill.ts DW-Programming/ImportNewSkufromURL/lib/scrapers/arbor-wood-new-products-scraper.ts DW-Programming/ImportNewSkufromURL/lib/scrapers/arc-com-digital-solutions-new-products-scraper.ts DW-Programming/ImportNewSkufromURL/scripts/scraper-healthcheck.ts
  856. 92c43de8 2026-07-01 enrich-full.py: per-output-file flock guard to prevent stacked duplicate workers (Mac2 near-freeze 2026-07-01)
  857. 7c09908d 2026-07-01 auto-save: 2026-07-01T10:41:35 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  858. d475afbe 2026-07-01 auto-save: 2026-07-01T10:11:20 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh onboarding/sangetsu-lilycolor/scripts/finish-enrich.sh
  859. 8d6d263d 2026-07-01 ImportNewSkufromURL: fix rwltd-gemini-cron key (literal-placeholder secret-strip regression → env-first + guard)
  860. 07466aaa 2026-07-01 chore: lint (drop unused import) + env-gated enrich sharding (session close)
  861. 0cffa706 2026-07-01 auto-save: 2026-07-01T09:41:09 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  862. 70ad589d 2026-07-01 translate-titles: resumable local JA->EN Lilycolor title translator (qwen2.5vl)
  863. f92f9182 2026-07-01 enrich-full: resumable local vision enrichment scaled from pilot
  864. 8ab9ae24 2026-07-01 sangetsu-lilycolor: decision-ready prefix + activation-gate prep draft (063026A)
  865. 59b215e9 2026-07-01 auto-save: 2026-07-01T07:46:40 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  866. 45887d53 2026-07-01 DWTT qty stepper: theme.liquid min-qty-guard backup (ORIGINAL + PATCHED) — live fix revert point
  867. bbcfe620 2026-07-01 snapshot before restart: session work (C&D onboard, CRCP FHA, DWTT qty fix)
  868. bef551cd 2026-07-01 auto-save: 2026-07-01T05:45:57 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  869. 4bc7d292 2026-07-01 auto-save: 2026-07-01T04:45:36 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  870. ff67c823 2026-07-01 auto-save: 2026-07-01T03:45:17 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  871. de101d38 2026-07-01 auto-save: 2026-07-01T02:45:00 (12 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json
  872. 1517cbbf 2026-07-01 auto-save: 2026-07-01T02:14:51 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/mindthegap-land-20260701T000103.json shopify/scripts/data/bucketB/nina-land-20260701T000103.json
  873. 40fea721 2026-07-01 auto-save: 2026-07-01T01:44:40 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  874. 974efb4d 2026-07-01 auto-save: 2026-07-01T00:44:22 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-07-01.json
  875. 489629c0 2026-07-01 auto-save: 2026-07-01T00:14:13 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260701T000103.json shopify/scripts/data/bucketB/coordonne-land-20260701T000103.json shopify/scripts/data/bucketB/grahambrown-land-20260701T000103.json
  876. dad0c346 2026-06-30 auto-save: 2026-06-30T22:43:48 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  877. e664e29c 2026-06-30 auto-save: 2026-06-30T21:43:31 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  878. ce69ce72 2026-06-30 auto-save: 2026-06-30T20:43:13 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  879. 08928754 2026-06-30 DWTT qty stepper: add combined diffs, clean harness proof + screenshot, verification scripts
  880. b77fe370 2026-06-30 DWTT qty stepper fix: repair +/- increment/decrement in custom.js + pristine data-order-* in product-form-content.liquid (dev theme 144105013299)
  881. 67ffd784 2026-06-30 auto-save: 2026-06-30T20:13:04 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/theme-fixes/custom-js-qty-2026-06-30/
  882. a1e11baf 2026-06-30 Theme fix: color-dots makeDot 'c is not defined' scoping bug (aborts init → breaks MOQ qty enforcement); staged on dev theme 144105013299
  883. 87ce255a 2026-06-30 auto-save: 2026-06-30T19:42:55 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  884. e04ff385 2026-06-30 Fix DWTT/AF qty stuck-at-1: set theme with-s global.v_prods_quantity_order_min=2 (10 products had min on ignored no-s key)
  885. a73611a1 2026-06-30 auto-save: 2026-06-30T18:42:37 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl vendor-scrapers/china-seas-refresh
  886. 31dea805 2026-06-30 auto-save: 2026-06-30T18:12:29 (7 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh mailers/room-croco.png mailers/room-fauxlinen.png
  887. 6fa4f036 2026-06-30 chore: v1.1.0 (session close — PJ 10/day DWPJ draft drip)
  888. 54400040 2026-06-30 Hollywood email: 3 approved scale-corrected room-setting heroes + Shopify Files uploader
  889. 77e1c281 2026-06-30 auto-save: 2026-06-30T17:42:20 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-07-01.json shopify/scripts/cadence/data/upload-restore-2026-07-01.jsonl
  890. 38a5c6b2 2026-06-30 auto-save: 2026-06-30T17:12:11 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json vendor-scrapers/china-seas-refresh mailers/hollywood-room-hero-gen.png
  891. e1981b2e 2026-06-30 cadence(PJ): switch net-new prefix DWJP->DWPJ (Steve, registry-canonical) + re-enable drip
  892. eebde7f6 2026-06-30 cadence: temporarily hold PJ drip while reassigning prefix DWJP->DWPJ (Steve)
  893. ddf81074 2026-06-30 cadence: ENABLE Phillip Jeffries 10/day DRAFT drip (PJ_DRAFT_DRIP=1) — Steve approve-all 2026-06-30
  894. 11b2896f 2026-06-30 auto-save: 2026-06-30T16:41:53 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl
  895. 289f3d9a 2026-06-30 Wire Phillip Jeffries into cadence as gated 10/day DRAFT-only drip
  896. 859470c8 2026-06-30 auto-save: 2026-06-30T15:41:34 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl shopify/scripts/cadence/run-cadence-hourly.sh
  897. 73d6e54b 2026-06-30 auto-save: 2026-06-30T14:41:08 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  898. 2652f499 2026-06-30 auto-save: 2026-06-30T14:10:58 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  899. 354f9479 2026-06-30 auto-save: 2026-06-30T13:40:46 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  900. ee125e3d 2026-06-30 auto-save: 2026-06-30T13:10:36 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  901. 78833f4e 2026-06-30 Hollywood Wallcoverings CC campaign — China Seas clone (validated 9/9, draft-create ready)
  902. aeec0950 2026-06-30 auto-save: 2026-06-30T12:40:24 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  903. 7d393bdd 2026-06-30 auto-save: 2026-06-30T12:10:12 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  904. 3499334f 2026-06-30 Add local swatch-enrichment pilot (50 Lilycolor swatches, $0 local qwen2.5vl + Pillow + lexicon colorway map); stages only
  905. 6319ed46 2026-06-30 chore: product_type casing normalize scripts (Wolf Gordon 483 + canonical 842) — session close
  906. 6736e88a 2026-06-30 auto-save: 2026-06-30T11:09:49 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  907. ce63fbf3 2026-06-30 auto-save: 2026-06-30T10:09:30 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  908. 15339851 2026-06-30 auto-save: 2026-06-30T09:39:21 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shot.mjs
  909. 4af735f6 2026-06-30 China Seas reconcile (DTD-A): source china_seas_catalog 106 Commercial Wallcovering -> Wallcovering; local mirror 24 small-line -> Fabric; backups + rollback
  910. a324b3e2 2026-06-30 Quadrille family reclassification: 3 Alan Campbell + 24 small-line lines -> Fabric; China Seas kept residential Wallcovering (reverted catalog Commercial-WC flag per Steve)
  911. 747a6821 2026-06-30 auto-save: 2026-06-30T09:09:13 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  912. d8d20340 2026-06-30 RESUME-063026A: add local design-enrichment task (interior-designer skill -> style/colors/hex via local vision model; llm-stats.com only if needed)
  913. b2cba336 2026-06-30 auto-save: 2026-06-30T07:59:18 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  914. ef98de0c 2026-06-30 RESUME-063026A: add debug task — terminal keeps losing prompt line
  915. 0f8c885d 2026-06-30 Adopt dated restart-code convention (MMDDYY+letter): abc123A -> 063026A
  916. 873527ec 2026-06-30 auto-save: 2026-06-30T07:29:10 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/_elitis-retry.mjs
  917. 391d1145 2026-06-30 Session wrap: RESUME-abc123A handoff + run-viewer.sh relauncher (resume code abc123A)
  918. e92745b3 2026-06-30 Lily+Sangetsu read-only dedup pass: 0 true dups, 12,806 net-new (164 matches all cross-vendor SKU-string collisions); reproducible dedup.sql
  919. fc112db4 2026-06-30 auto-save: 2026-06-30T06:59:02 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  920. fc41898a 2026-06-30 auto-save: 2026-06-30T05:58:45 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  921. 698dfc9d 2026-06-30 Lily: selective ZIP-range swatch fetcher -> Henry + viewer serves local pattern swatches (/img/lily/:sku), live-reload as they land
  922. 700c3531 2026-06-30 auto-save: 2026-06-30T05:28:32 (4 files) — onboarding/sangetsu-lilycolor/lily-merge.cjs pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/staged/free-samples-banner/apply-banner-to-live.sh
  923. 0af646f8 2026-06-30 free-samples phase 3: stage Shopify discount Function (trade unlimited / non-trade first-3-per-order / anon none, 8 tests pass), update banner CTA to 'Sign up to get your 3 free samples', regen+verify port patch
  924. fef16d47 2026-06-30 auto-save: 2026-06-30T04:58:21 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  925. 1ae37d28 2026-06-30 Lilycolor trade-catalog import: pricebook parser (2,543 SKUs, full specs+price), image manifest (6,825 imgs via zip-range trick), unified merge, viewer wired to unified data
  926. 0bacae1f 2026-06-30 note existing store discount codes in free-samples approval doc
  927. d477dbc9 2026-06-30 free-samples phase 2: verified live-main theme role, staged port patch, corrected discount mechanism (Option B, no money objects on prod)
  928. f8cd79bc 2026-06-30 Add offline web viewer for staged Sangetsu + Lilycolor SKUs (sort+density+infinite-scroll, single-writer restage)
  929. a2399f8e 2026-06-30 stage free-samples banner on dedicated dev theme [Dev] free-samples-banner (144088858675); discounts drafted to pending-approval
  930. 71c990ae 2026-06-30 auto-save: 2026-06-30T03:57:50 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  931. d32a22a3 2026-06-30 auto-save: 2026-06-30T02:57:33 (10 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl
  932. 38299cb3 2026-06-30 auto-save: 2026-06-30T02:27:25 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/phillipromano-land-20260630T000103.json
  933. c13b6c54 2026-06-30 auto-save: 2026-06-30T01:57:11 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  934. e8cf49f7 2026-06-30 auto-save: 2026-06-30T00:56:54 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-06-30.json
  935. 407468de 2026-06-30 auto-save: 2026-06-30T00:26:45 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260630T000103.json shopify/scripts/data/bucketB/coordonne-land-20260630T000103.json shopify/scripts/data/bucketB/grahambrown-land-20260630T000103.json
  936. da236c8e 2026-06-29 auto-save: 2026-06-29T22:56:22 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  937. 351495ce 2026-06-29 auto-save: 2026-06-29T21:56:05 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  938. b3ef01bd 2026-06-29 auto-save: 2026-06-29T20:55:50 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  939. eabc9cac 2026-06-29 auto-save: 2026-06-29T19:55:33 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  940. b62a066f 2026-06-29 auto-save: 2026-06-29T18:55:18 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl vendor-scrapers/china-seas-refresh
  941. 646de077 2026-06-29 auto-save: 2026-06-29T17:55:02 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-06-30.json shopify/scripts/cadence/data/upload-restore-2026-06-30.jsonl
  942. 79b1b848 2026-06-29 Stage restrained hero 'Book an Appointment' secondary CTA on dev theme 144076931123 (DTD verdict C)
  943. 9773acef 2026-06-29 auto-save: 2026-06-29T16:54:45 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  944. 7ba76ce7 2026-06-29 Quadrille-house cadence: type-by-row from staging table (most are Fabric, not Wallcovering)
  945. 61aa048a 2026-06-29 Suncloth title cleanup: drop 'Wallcoverings' from 119 fabric titles (Steve approved)
  946. a7ce3afe 2026-06-29 auto-save: 2026-06-29T16:24:37 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/_run-elitis.mts
  947. 670bf751 2026-06-29 Suncloth retro-flip: 119 live products Wallcovering->Fabric (PG-staged, GraphQL batched)
  948. 4547b440 2026-06-29 Andrew: final consolidated 36in letter drafted (Woven Grass #1 + Ambience + 2 Lilycolor naturals Straw Weave/Crushed Metallic Washi); skipped EOL LW294
  949. ccdd68da 2026-06-29 Suncloth is Fabric not Wallcovering: stop cadence overriding staging classification
  950. cda0849d 2026-06-29 Sangetsu parser: image-filename SKU harvest (covers swatch+numeric), backing/width fixes, hunt cmd; refocus Andrew on 36in grasscloth (Woven Grass/Ambience), corrected George draft
  951. be5f5549 2026-06-29 Sangetsu: parsePage proven (plain fetch, no Browserbase) — 15 patterns/238 SKUs; documented swatch+numeric-SKU refinement via variations JSON
  952. d29bf809 2026-06-29 auto-save: 2026-06-29T15:54:24 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  953. 3206484f 2026-06-29 appointments: GO-LIVE — theme 5.9.0 published, page live + in nav
  954. 5ac4e209 2026-06-29 Sangetsu: sitemap discovery (879 wallpaper pattern pages, regional .co.th seed) + dossier session progress
  955. 110f255d 2026-06-29 Lilycolor: feed-first scraper staged 3,107 products offline (no Shopify); Andrew reply drafted via George
  956. 0db1c131 2026-06-29 appointments: export freeBusy alias for calendar busy() (freebusy.query) — verified e2e: temp busy event subtracts slot, removal restores it
  957. 23762b6b 2026-06-29 appointments: OAuth connected — calendar live (connected:true, oauth_configured:true)
  958. 6171cced 2026-06-29 Onboard (staged/offline) Sangetsu + Lilycolor: registry entries, catalog dossier, Lilycolor feed-first recon, customer Disco shortlist
  959. 80f9541f 2026-06-29 auto-save: 2026-06-29T15:24:16 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh onboarding/
  960. fdeaccb1 2026-06-29 auto-save: 2026-06-29T14:53:15 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  961. 6fa68e9e 2026-06-29 auto-save: 2026-06-29T13:49:26 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  962. c97a60da 2026-06-29 appointments: RESUME-HERE checkpoint (one step left = OAuth secret + consent) [no real secret; gitleaks false positive on project number]
  963. ff9d3483 2026-06-29 auto-save: 2026-06-29T12:49:09 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  964. 29132a2f 2026-06-29 deploy: insert before the LAST </body> (theme.liquid has an earlier dead one) + ALLOW_LIVE gate for live pushes
  965. 02af8f98 2026-06-29 product min-qty: recurring re-assert beats theme's variant-change widget rebuild (Wallcovering now holds min=10)
  966. 4f37afe2 2026-06-29 auto-save: 2026-06-29T11:48:48 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  967. 31e6eaee 2026-06-29 deploy: push-min-qty-to-dev-theme.py — inject per-variant min-qty into a dev theme's theme.liquid (product-gated, backup, idempotent, THEME_ID override)
  968. 9fcc5ff8 2026-06-29 product min-qty: target real mm_ quantity widget + single-option-selector; verified on live DOM (Sample=1, PerYard=5, Wallcovering=10, clamp+step1)
  969. abe1470c 2026-06-29 appointments LIVE at api.designerwallcoverings.com: migration re-owns appt_ to dw_admin; vhost corrected to IP-specific :443 (SNI fix). Backend deployed + verified e2e over HTTPS.
  970. 66541e4e 2026-06-29 product min-qty: step=1 — minimum is a floor, above it order any qty in increments of 1
  971. a2ad63bc 2026-06-29 appointments: Google OAuth setup guide (Cloud Console + secrets-on-box + consent click)
  972. ab77a98e 2026-06-29 product: per-variant min quantity (Sold Per Yard=5, Wallcovering=10, Sample=1) + clamp so qty can't go below min
  973. 9a74adab 2026-06-29 appointments: FINISH-on-kamatera one-paste (mount+reload, vhost+certbot) — agent did DNS/rsync/pg/env/migration, prod entrypoint edit reserved for Steve
  974. bbe051b7 2026-06-29 auto-save: 2026-06-29T10:48:32 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  975. f5cca320 2026-06-29 appointments deploy artifacts: api. nginx vhost + certbot + FINAL keep-in-dev runbook (Option A; DNS A-record live in Cloudflare)
  976. 04f34147 2026-06-29 Fix sku-inquiry + koroseal-quote 404s: point at api.designerwallcoverings.com (same Option-A routing as appointments)
  977. 52917463 2026-06-29 appointments: target api.designerwallcoverings.com (Option A edge routing) for API base, public base + OAuth redirect
  978. 11042a14 2026-06-29 appointments: deploy prep — runbook + nginx snippet (edge-routing blocker documented)
  979. 991e88d0 2026-06-29 appointments: omit blank api_base default (Shopify schema requires non-blank or absent)
  980. d4a84f3f 2026-06-29 appointments: same-origin relative API base (matches /api/koroseal-quote proxy) + Sherman Oaks showroom address
  981. cae107be 2026-06-29 auto-save: 2026-06-29T09:48:16 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  982. 5a2739b3 2026-06-29 Add appointment booking (phone/in-person) — engine + Shopify section staged on dev theme 5.9.0
  983. c1d34c95 2026-06-29 auto-save: 2026-06-29T08:47:49 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  984. eb362120 2026-06-29 auto-save: 2026-06-29T07:47:19 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  985. 32e8f488 2026-06-29 sku-inquiry handler: George /api/send + basic-auth (delivers to info@; verified 200 on Kamatera)
  986. bf10591a 2026-06-29 auto-save: 2026-06-29T06:49:18 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  987. 1f93510f 2026-06-29 auto-save: 2026-06-29T05:49:04 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  988. c59c23aa 2026-06-29 auto-save: 2026-06-29T04:48:49 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  989. 0156997d 2026-06-29 auto-save: 2026-06-29T03:48:35 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  990. 67620c43 2026-06-29 auto-save: 2026-06-29T03:18:28 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  991. be5f24de 2026-06-29 auto-save: 2026-06-29T02:48:21 (11 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl
  992. 9801204e 2026-06-29 auto-save: 2026-06-29T02:18:13 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/nina-land-20260629T000104.json
  993. 05c42358 2026-06-29 auto-save: 2026-06-29T01:48:05 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  994. d03f2c3b 2026-06-29 auto-save: 2026-06-29T00:47:51 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-06-29.json
  995. f9f9d6bb 2026-06-29 auto-save: 2026-06-29T00:17:43 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260629T000104.json shopify/scripts/data/bucketB/coordonne-land-20260629T000104.json shopify/scripts/data/bucketB/grahambrown-land-20260629T000104.json
  996. 575cd11a 2026-06-28 auto-save: 2026-06-28T22:47:20 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  997. 3db2687b 2026-06-28 auto-save: 2026-06-28T21:47:06 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  998. 82d33587 2026-06-28 auto-save: 2026-06-28T20:46:43 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  999. c8d5a148 2026-06-28 auto-save: 2026-06-28T19:46:29 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  1000. 83ce4a5f 2026-06-28 auto-save: 2026-06-28T18:46:15 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl vendor-scrapers/china-seas-refresh
  1001. de8cb52e 2026-06-28 auto-save: 2026-06-28T17:45:58 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-06-29.json shopify/scripts/cadence/data/upload-restore-2026-06-29.jsonl
  1002. d5394af9 2026-06-28 auto-save: 2026-06-28T16:45:39 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1003. 068cdf32 2026-06-28 auto-save: 2026-06-28T15:45:20 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1004. ef8e327b 2026-06-28 auto-save: 2026-06-28T14:45:07 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1005. 182588b0 2026-06-28 auto-save: 2026-06-28T13:44:54 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1006. 9729f26d 2026-06-28 auto-save: 2026-06-28T12:44:41 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-pm-2026-06-28.json
  1007. 94a55d31 2026-06-28 auto-save: 2026-06-28T11:44:26 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1008. 78485ba4 2026-06-28 auto-save: 2026-06-28T10:44:13 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1009. d4f6280e 2026-06-28 auto-save: 2026-06-28T09:43:58 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1010. 06471a7a 2026-06-28 auto-save: 2026-06-28T08:43:43 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1011. 3a309b06 2026-06-28 auto-save: 2026-06-28T07:43:27 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1012. c23f4798 2026-06-28 auto-save: 2026-06-28T06:43:12 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1013. b9fc5eb4 2026-06-28 auto-save: 2026-06-28T06:13:03 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh vendor-scrapers/quadrille-onboard/data/
  1014. 4d3765d5 2026-06-28 auto-save: 2026-06-28T05:42:57 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1015. 610be622 2026-06-28 auto-save: 2026-06-28T04:42:43 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1016. 42efa17c 2026-06-28 auto-save: 2026-06-28T03:42:30 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1017. 9561ea21 2026-06-28 auto-save: 2026-06-28T03:12:23 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json vendor-scrapers/china-seas-refresh
  1018. 19a1dec4 2026-06-28 auto-save: 2026-06-28T02:42:17 (11 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl
  1019. 349fdbed 2026-06-28 auto-save: 2026-06-28T02:12:10 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/longtail-land-20260628T000102.json shopify/scripts/data/bucketB/mindthegap-land-20260628T000102.json shopify/scripts/data/bucketB/nina-land-20260628T000102.json
  1020. 251baa1f 2026-06-28 auto-save: 2026-06-28T01:42:03 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl vendor-scrapers/china-seas-refresh
  1021. 53c13fcf 2026-06-28 auto-save: 2026-06-28T00:41:48 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-06-28.json shopify/scripts/cadence/data/upload-restore-2026-06-28.jsonl
  1022. 64f3be69 2026-06-28 auto-save: 2026-06-28T00:11:41 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260628T000102.json
  1023. cc98d168 2026-06-27 auto-save: 2026-06-27T17:10:09 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 pw_shot.mjs vendor-scrapers/china-seas-refresh
  1024. 4fec4207 2026-06-27 dw-boost-overrides: fix re-mount target check — append to visible toolbar-inner instead of contains()-rejecting it (slider was lifted out of hidden --3_1)
  1025. 0f8a6b79 2026-06-27 dw-boost-overrides: re-mount density slider+filter toggle+ptype bar into visible Boost toolbar when anchored variant is display:none (FIX 2)
  1026. fb378bce 2026-06-27 auto-save: 2026-06-27T16:40:02 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh pw_shot.mjs
  1027. 14dd204f 2026-06-27 auto-save: 2026-06-27T12:09:05 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1028. 1b3c9bfd 2026-06-27 Remove temporary inspection scripts
  1029. 8f532c58 2026-06-27 Hue sort: fix Light->Dark direction (lightest first) + unreadable cards sink to end
  1030. 8146806b 2026-06-27 Hue sort: 3-tier mount (slider-adjacent / visible toolbar-content fallback / late slider) so the pill always lands in the shown toolbar
  1031. fa276075 2026-06-27 Hue sort: anchor mount to grid-density slider (inherits correct visible toolbar)
  1032. a8e8208a 2026-06-27 auto-save: 2026-06-27T11:08:52 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1033. 9b14ef65 2026-06-27 Hue sort: mount into VISIBLE Boost toolbar (skip display:none variant) + select min-width
  1034. f68c7287 2026-06-27 Collection grid UX: hue/color sort modes + compact pill under image + Design Coordinate dw_sku->handle fix
  1035. 8a2aa39f 2026-06-27 auto-save: 2026-06-27T10:08:38 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1036. 4af3c33f 2026-06-27 auto-save: 2026-06-27T09:08:24 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1037. f6c8c6ce 2026-06-27 auto-save: 2026-06-27T08:08:11 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1038. 0b4139bf 2026-06-27 auto-save: 2026-06-27T07:07:58 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1039. fbc05e7e 2026-06-27 auto-save: 2026-06-27T06:07:45 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1040. 4f81a0fb 2026-06-27 auto-save: 2026-06-27T05:07:32 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1041. b07eaeb9 2026-06-27 auto-save: 2026-06-27T04:07:19 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1042. 190d27d4 2026-06-27 auto-save: 2026-06-27T03:07:07 (11 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl
  1043. bc2130e1 2026-06-27 auto-save: 2026-06-27T02:37:00 (3 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh
  1044. c2bf650f 2026-06-27 auto-save: 2026-06-27T02:06:53 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json shopify/scripts/cadence/data/upload-restore-2026-06-27.jsonl vendor-scrapers/china-seas-refresh
  1045. df04e65f 2026-06-27 auto-save: 2026-06-27T01:06:38 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/data/fix-91-memo-samples.ledger.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-06-27.json
  1046. 8b3be675 2026-06-27 auto-save: 2026-06-27T00:36:29 (9 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/data/tag-contact-for-price.ledger.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/coordonne-land-20260627T000102.json shopify/scripts/data/bucketB/grahambrown-land-20260627T000102.json
  1047. 8a734295 2026-06-27 Dev-theme push script for contact-for-price block (tag-gated, stub-guard, THEME_ID override)
  1048. 3e354e5e 2026-06-27 SKU-inquiry backend (George-routed, fail-open) + throttle on apply scripts; 41 samples added + 431 tagged on live store
  1049. d497aec8 2026-06-27 auto-save: 2026-06-27T00:06:21 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/fix-active-lastweek-samples.js shopify/scripts/tag-contact-for-price.js vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260627T000102.json
  1050. 0b2efa54 2026-06-26 Add contact-for-price PDP section + additive tagging script for 431 sample-only SKUs
  1051. fb914813 2026-06-26 Add dry-run-first fix scripts for active-last-week 2-variant review (41 missing-sample + 434 only-sample)
  1052. 2afc375b 2026-06-26 auto-save: 2026-06-26T17:04:47 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enhancements/infinite-scroll-observer.js vendor-scrapers/china-seas-refresh
  1053. ca8adbdf 2026-06-26 auto-save: 2026-06-26T16:04:29 (16 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/enhancements/ARCHITECTURE.md shopify/enhancements/COLLECTION-LIQUID-INTEGRATION.liquid shopify/enhancements/INFINITE-SCROLL-IMPLEMENTATION.md shopify/enhancements/QUICK-REFERENCE.txt
  1054. d0429e1a 2026-06-26 auto-save: 2026-06-26T15:34:21 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/_cwGRID/sections/pattern-page.liquid shopify/_cwGRID/sections/similar-designs.liquid shopify/scripts/anna-french-repair-inplace.mjs vendor-scrapers/china-seas-refresh
  1055. d1277e57 2026-06-26 cadence/activate-gated: publish DRAFT->ACTIVE promotes to Online Store channel
  1056. 08e99376 2026-06-26 snapshot before git gc
  1057. 18fa34c8 2026-06-26 Designtex UOM followup: 3-SKU flip driver + verify (drift trickle after 77-fix; source already fixed in vendors.js 974c7dd0)
  1058. 97406872 2026-06-26 auto-save: 2026-06-26T12:33:24 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh audits/designtex-uom-fix/designtex-live-gap-2026-06-26.json
  1059. a3007ac5 2026-06-26 Designtex UOM 77-SKU task: live verify shows drift already 0 (no-op), PLAN documents verified state
  1060. 669dc5bb 2026-06-26 auto-save: 2026-06-26T11:45:25 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/room-image-push/ledger.json shopify/package-lock.json shopify/package.json shopify/scripts/cadence/data/cadence-cursor.json
  1061. 9279cbe4 2026-06-26 auto-save: 2026-06-26T11:15:12 (7 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh audits/designtex-uom-fix/220216-live-AFTER-boltsize-2026-06-26.png audits/designtex-uom-fix/220216-spec-boltsize-LIVE.png shopify/_cwGRID/deployed/
  1062. 68820077 2026-06-26 chore: lint + refactor newwall remap/scrub scripts, token guard, version-up (session close)
  1063. 974c7dd0 2026-06-26 auto-save: 2026-06-26T10:45:01 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/cadence-import.js shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl
  1064. 7a711a9e 2026-06-26 Fleet room-image push: one-shot FLEET COMPLETE alert (CNCP win + George email) on zero remaining
  1065. 01415495 2026-06-26 Fix metafield-scrub delete to use metafieldsDelete (collection_name now removed on all 74)
  1066. b1cc8522 2026-06-26 Designtex: Sold Per Yard variant relabel + Bolt size (spec-table relabel staged on dev 5.6.0 theme)
  1067. c0339729 2026-06-26 Scrub residual Newwall leak from metafields: global.Brand->real brand + delete junk custom.collection_name letter (74 products)
  1068. 277d0d98 2026-06-26 auto-save: 2026-06-26T10:14:48 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh scripts/room-image-push/ledger.json scripts/room-image-push/workset.json
  1069. b75de15f 2026-06-26 Fleet room-image push: idempotent paced daily cadence job (top-3 credited room shots/SKU, <=900 adds/day)
  1070. 14755f27 2026-06-26 auto-save: 2026-06-26T09:44:31 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl vendor-scrapers/china-seas-refresh
  1071. 9a06a6a0 2026-06-26 Remap reseller vendor 'Newwall' -> real brand per-SKU (Coordonné 46 / Tres Tintas 28), scrub leak from vendor+title+description on 74 products
  1072. 9e5acb6f 2026-06-26 auto-save: 2026-06-26T08:43:59 (38 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl vendor-scrapers/china-seas-deheader/STATUS.md
  1073. b0a47465 2026-06-26 Quadrille room-settings: S3 full-size probe + brand-prefix match + attach CSV (final reversible artifacts)
  1074. e3a5d53f 2026-06-26 Quadrille/China Seas editorial room-setting → SKU matcher + credit parser (reversible build; CSVs + summary)
  1075. 62dcf086 2026-06-26 PDP refresh: filter internal/ops tags out of KEYWORDS (leak fix) + mute styling + move Design Coordinate pill under product image
  1076. cdaabdc2 2026-06-26 PDP: shrink Design Coordinate CTA to a compact pill (was full-width bar)
  1077. ec248194 2026-06-26 grouped grid: two-tier drill-down chips (Color/Style/Sort → value sub-row) + feed hue/style filters
  1078. 4544b52b 2026-06-26 grouped grid: sort as visible chips/tabs (default Most Colors) + preserve preview_theme_id on pattern links
  1079. 003b6f72 2026-06-26 China Seas image-corruption repair: authoritative re-scrape + re-match (194 fixed, 164 blanked, gated)
  1080. 67c25a46 2026-06-26 pattern page: self-heal colorway images from live product.js
  1081. 24ecdb0b 2026-06-26 auto-save: 2026-06-26T07:43:29 (9 files) — package-lock.json pending-approval/boost-filter-consolidation-2026-06-25 shopify/_cwGRID/sections/pattern-page.liquid shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json
  1082. 8d9628b5 2026-06-26 chore: lint clean (drop unused rr) + v1.0.1 (session close — ERE/EUR reimage executors)
  1083. c70c7779 2026-06-26 grouped grid: self-heal stale images from live product.js + hide truly-dead imgs (no broken icons)
  1084. dd2798d1 2026-06-26 grouped grid: pass collection_handle for brand-family scoping
  1085. 1819c605 2026-06-26 grouped grid: Hue+Style sorts, controls show on load (dev 5.6.0)
  1086. b28de43c 2026-06-26 auto-save: 2026-06-26T06:43:07 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl vendor-scrapers/china-seas-refresh
  1087. 03bdc292 2026-06-26 auto-save: 2026-06-26T06:12:56 (6 files) — DW-Programming/__pycache__/color-batch-cleaner.cpython-314.pyc DW-Programming/__pycache__/generate-room-settings.cpython-314.pyc DW-Programming/room-setting-app/__pycache__/generate-rooms-DWTT-80352.cpython-314.pyc pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl
  1088. 0bce1240 2026-06-26 auto-save: 2026-06-26T04:09:16 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl vendor-scrapers/china-seas-refresh
  1089. f63047b6 2026-06-26 auto-save: 2026-06-26T03:39:04 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl vendor-scrapers/china-seas-refresh
  1090. 4a73f66a 2026-06-26 auto-save: 2026-06-26T02:08:48 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl vendor-scrapers/china-seas-refresh
  1091. 85eae7f7 2026-06-26 auto-save: 2026-06-26T01:08:32 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-26.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/upload-restore-2026-06-26.jsonl
  1092. dd04a9c5 2026-06-26 auto-save: 2026-06-26T00:38:23 (8 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh post_ere_eur.js post_ere_eur_v2.js shopify/scripts/data/bucketB/coordonne-land-20260626T000103.json
  1093. 6d1e37bd 2026-06-26 WS-2 grouped collection grid (owns render, overrides Boost) + WS-3 pattern page + similar-designs section (staged, not pushed)
  1094. 5dac2a20 2026-06-26 auto-save: 2026-06-26T00:08:14 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh pending-approval/ere-eur-mfr-photo-reimage-and-archive.md pending-approval/eur-manual-mfr-fix-worklist.csv shopify/scripts/data/bucketB/annafrench-land-20260626T000103.json
  1095. 4cea806f 2026-06-25 JS reconcile COMPLETE: 491/491 DWJS-91xxx resolved via live yorkwall.com (454 active, 37 disco); resume-mode harness + post-scrape reconcile + audit
  1096. 910e61d5 2026-06-25 auto-save: 2026-06-25T19:06:46 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 scripts/jeffrey-stevens-reconcile/js-scrape-audit.jsonl vendor-scrapers/china-seas-refresh
  1097. c945123f 2026-06-25 auto-save: 2026-06-25T18:36:37 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh scripts/jeffrey-stevens-reconcile/backfill-pattern-from-shopify.sql scripts/jeffrey-stevens-reconcile/js-scrape-audit.jsonl
  1098. d52584b4 2026-06-25 JS reconcile: newline-agnostic title regex + post-scrape 91xxx resolution SQL
  1099. 4d1ec978 2026-06-25 Jeffrey Stevens reconcile: openclaw-driven authed yorkwall.com per-SKU scraper (current/disco + MAP + specs -> york_catalog)
  1100. 205a826b 2026-06-25 auto-save: 2026-06-25T18:06:20 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh scripts/jeffrey-stevens-reconcile/master-june16.csv scripts/jeffrey-stevens-reconcile/york-master-june16.xlsx
  1101. 01c6646f 2026-06-25 cadence: arm Anna French (lift DENY_VENDORS after link-and-skip) + type-aware title/intro for mixed-type vendors (fabric rows no longer titled 'Wallcoverings')
  1102. 79b4034f 2026-06-25 Jeffrey Stevens disco reconciliation: staged York scrape runbook + reconcile SQL (DTD-C, read-only)
  1103. e85ad64a 2026-06-25 auto-save: 2026-06-25T17:36:07 (3 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/cadence-import.js vendor-scrapers/china-seas-refresh
  1104. 96401581 2026-06-25 Disable stage-winfield-thybony.py — keyed off stale/collided April DW SKUs; ~1,776 Winfield already exist as archived PR/Hollywood shells (dedup by mfr_sku). Corrected Track A/B flow supersedes
  1105. 202fdad2 2026-06-25 cadence: unit-aware soldBy for Kravet family (soldByUnit) — yard-priced goods (Winfield Thybony foils) label 'Yard'/'Priced Per Yard' not 'Single Roll'; additive, non-opt-in vendors unchanged
  1106. 8bb3a5cd 2026-06-25 docs(filter-topbar): record Material=Contents data finding + live Material default
  1107. f35e902f 2026-06-25 feat(filter-topbar): Material is the headline data-backed default (global.Contents → pf_t_material)
  1108. dd45cbf0 2026-06-25 auto-save: 2026-06-25T17:05:58 (13 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/anna-french/anna-french-staging-fix-audit-2026-06-25.json vendor-scrapers/china-seas-refresh shopify/scripts/anna-french-priceout-2026-06-25/04-recover-prices.js shopify/scripts/anna-french-priceout-2026-06-25/05-add-yard-variants.js
  1109. aaf83b42 2026-06-25 Stage full Winfield Thybony line (2,613 SKUs) into kravet_catalog for cadence — yard-priced foils recovered at MAP; WDW2310 incl
  1110. 59dba9ea 2026-06-25 docs(filter-topbar): G3 LIVE publish done — surgical push to theme 143976136755 + rollback path
  1111. a826bdec 2026-06-25 docs(filter-topbar): session update memo — ship-what-works, G1 Contents turnkey + data finding
  1112. 9ec87169 2026-06-25 feat(filter-topbar): ship-what-works — defaults to data-backed fields (color/style/brand/contents/price), customer-safe empty copy
  1113. 821c6a88 2026-06-25 Fix kravet-master-loader: keep YARD-priced wallcoverings (Winfield Thybony foils), not just ROLL — track unit_of_measure
  1114. 3a1c86b6 2026-06-25 Scrub hardcoded Shopify theme token from 4 DW-Agents scripts; load from env via dotenv
  1115. 35fa31e0 2026-06-25 cadence: ENABLE DW_DOUBLE_ROLL_MOQ=1 — new York/Brewster roll SKUs auto-stamp double-roll MOQ (explicit-mural + roll-unit guard per Steve)
  1116. f7e9dde1 2026-06-25 feat(filter-topbar): replace Boost native toolbar — port product-type tabs + live count into topbar, hide boost-sd__toolbar
  1117. 3d5bb06c 2026-06-25 auto-save: 2026-06-25T16:35:16 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/anna-french-priceout-2026-06-25/data/run-report.json vendor-scrapers/china-seas-refresh pending-approval/anna-french-anomaly-resolution-2026-06-25.md shopify/scripts/cadence/data/anna-french/af-fabric-fix-commit-2026-06-25.json
  1118. 9983383c 2026-06-25 AF repair: add --only-mfr scoped filter (enables targeted collision re-runs without full 27-min pass)
  1119. 887f840a 2026-06-25 fix(stage script): add curl -g so bracketed ?asset[key]= GET doesn't glob-fail (exit 3)
  1120. fca4c404 2026-06-25 fix(filter-topbar): split 199-char schema header into header+paragraph (Shopify 50-char header cap)
  1121. 85a7206d 2026-06-25 v5.6.0 DEPLOYED (PDP light tidy live); Anna French 146 prices written to dw_unified, Shopify variants staged (roll budget=0 today)
  1122. 4573b89e 2026-06-25 Stage gated G1/G2/G3 memo + DEV-theme staging script for Boost filter topbar
  1123. 3ebc8cd9 2026-06-25 Add field->Boost mapping + data-layer spec README for dw-boost-filter-topbar
  1124. a5a75bec 2026-06-25 Add dw-boost-filter-topbar section: horizontal dropdown filter toolbar (DTD verdict B) driving Boost pf_* params, per-field ON/OFF toggle, ported new-import-viewer UX
  1125. b360daed 2026-06-25 auto-save: 2026-06-25T16:05:06 (8 files) — DW-Agents/vendor-command-center/run-local.sh pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl
  1126. c56edd4d 2026-06-25 cadence-import: gated double-roll MOQ for York/Brewster roll SKUs (inert until DW_DOUBLE_ROLL_MOQ=1)
  1127. f7aa3d46 2026-06-25 v5.6.0 staged: PDP info-column light tidy (equal-width aligned action buttons + even rhythm)
  1128. 21644ea1 2026-06-25 v5.5.2: PDP black size pills live (5.5.0 staged, 5.5.1 script placement, 5.5.2 hide native dropdown) + tear-sheet hidden; changelog with Δ-per-version
  1129. 98ab5eeb 2026-06-25 auto-save: 2026-06-25T15:34:57 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 pending-approval/pdp-size-pills-2026-06-25/theme.liquid.STAGED vendor-scrapers/china-seas-refresh shopify/push-unhide-grid-prices-to-dev-theme.sh
  1130. 1c51fda5 2026-06-25 v5.5.0 staged: PDP size pills + tear-sheet hide; add versioned THEME-CHANGELOG (Δ-from-last on each version)
  1131. d2b54197 2026-06-25 auto-save: 2026-06-25T15:04:49 (6 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1132. 2583a0d6 2026-06-25 cadence: activate DWBR->Malibu Wallpaper remap (DWBR_HOUSE_LINE_REMAP=1) after canonical dw_unified flip
  1133. 64a76eb9 2026-06-25 AF repair: implement sample-fix/leak-scrub/archive-ghost apply paths (in-place leak scrub, type-safe metafieldsSet, manufacturer_sku allowlist preserved)
  1134. 56b85c3c 2026-06-25 auto-save: 2026-06-25T14:04:32 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1135. ce9df9ca 2026-06-25 auto-save: 2026-06-25T13:04:17 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json vendor-scrapers/china-seas-refresh
  1136. 713cd776 2026-06-25 auto-save: 2026-06-25T12:04:02 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1137. bd605d24 2026-06-25 auto-save: 2026-06-25T11:33:53 (5 files) — pending-approval/boost-filter-consolidation-2026-06-25 vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/anna-french/anna-french-repair-plan-2026-06-25-postfix.json shopify/scripts/cadence/data/anna-french/anna-french-staging-fix-audit-2026-06-25.json shopify/scripts/cadence/data/anna-french/anna-french-staging-presnapshot-2026-06-25.csv
  1138. 91749a79 2026-06-25 AF staging fixer: route mfr_sku UNIQUE collisions (phantom AT dups of existing AF rows) to anomalies instead of erroring
  1139. 449e1cc6 2026-06-25 Add Anna French staging anomaly fixer (AT<->AF type/prefix/dw_sku correction from live truth)
  1140. 72746d81 2026-06-25 Add Anna French in-place repair tool (dry-run); 489 matched / 144 anomalies / 112 new
  1141. 3ba83190 2026-06-25 auto-save: 2026-06-25T11:03:45 (4 files) — pending-approval/boost-filter-consolidation-2026-06-25 shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json vendor-scrapers/china-seas-refresh
  1142. c1902e87 2026-06-25 Stage infinite-scroll hardening patch (DTD verdict B: live already works, hold for post-mailer)
  1143. e4435faa 2026-06-25 cadence: add Anna French config with per-row product type (AT→Wallcovering/roll, AF→Fabric/yard); HELD in DENY_VENDORS pending gated re-prefix/handle-flip repair tool
  1144. 115f2e5b 2026-06-25 cadence: DWBR per-product house-line emission (Malibu Wallpaper/LA Walls), gated OFF by default
  1145. 163fa1fb 2026-06-25 Anna French Phase 1: install 789 dormant 301 redirects on live store (789 created, 0 failed)
  1146. b10eebc1 2026-06-25 auto-save: 2026-06-25T10:33:35 (6 files) — vendor-scrapers/china-seas-refresh _incr.mjs pending-approval/boost-filter-consolidation-2026-06-25/ shopify/scripts/cadence/data/anna-french/anna-french-phase0-assign-2026-06-25T170825Z.json shopify/scripts/cadence/data/anna-french/anna-french-phase0-assign-2026-06-25T170839Z.json
  1147. 2cd03b9d 2026-06-25 China Seas mailer: inline all pill styles (client-proof rendering; CC editor + Outlook ignore <style> block)
  1148. df33ff46 2026-06-25 Anna French Phase 0: staging-only dw_sku assignment (591 DWTA->DWAT, 143 NULL fabrics->DWAF reusing live DWTT numeric per DTD verdict A)
  1149. b135b9f7 2026-06-25 China Seas mailer: Naturals pill → /collections/grasscloth (Natural Grasscloth, holds GRS-/MAD- SKUs); re-synced to CC draft
  1150. ff353ac2 2026-06-25 auto-save: 2026-06-25T10:03:24 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json vendor-scrapers/china-seas-refresh DW-Programming/ImportNewSkufromURL/dryrun-2026-06-25/
  1151. 9a95b5b4 2026-06-25 China Seas mailer: repoint Design Idea Spotlight pills — Naturals→grasscloth-natural-fiber, Prints→thibaut, Geometric→geometric, Color of the Day→red-wallcoverings; re-synced to CC draft
  1152. b1b593b1 2026-06-25 cadence-import: GUARD-ONLY denylist holds banned front-facing Brand (Brewster/York) before publish
  1153. 39f8c8fe 2026-06-25 China Seas mailer: 'Shop by Theme' → 'Design Idea Spotlight' pills (Naturals/Prints/Geometric/Color of the Day), Color of the Day pill = Chinese red #C8102E; synced to CC draft
  1154. 749b4c5d 2026-06-25 Anna French: build 301 redirect map (789 rows, 0 collisions, 0 self-redirects) for the 382 handle-changers + legacy dups
  1155. 5efac5ec 2026-06-25 cadence-import: scrubBanned() guard on vendor+collection at body_html intro writers
  1156. b4dccb49 2026-06-25 Anna French gate+diff audit artifact (734 pass, 239 discontinued, diff classification)
  1157. 6f6cf54e 2026-06-25 Scrub parent-vendor leak (Thibaut/York) from Anna French customer-facing descriptions; re-attribute to Anna French
  1158. 4bfeada6 2026-06-25 china-seas mailer: drop Material + Account nav links so header fits on one line
  1159. 3866a1e5 2026-06-25 auto-save: 2026-06-25T09:03:03 (3 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json vendor-scrapers/china-seas-refresh
  1160. 30bafd58 2026-06-25 Anna French STEP4+5: onboarding gate (validateBeforeActivate) + diff-vs-live audit (read-only)
  1161. 785b0977 2026-06-25 Anna French STEP2+3: local Full-Monte enrichment + interior-designer lexicon normalizer (staging-only, $0 local)
  1162. 64278b92 2026-06-25 Scrub residual Brewster/York from 44 product descriptions (body_html leak vector)
  1163. c3b4e551 2026-06-25 Anna French scraper: full-page capture (all specs+cost+care+real description+all-images), no York/cost leak
  1164. 3085a5ef 2026-06-25 auto-save: 2026-06-25T08:02:44 (3 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json vendor-scrapers/china-seas-refresh
  1165. 9e18ec7f 2026-06-25 Add dedicated Anna French scraper (AT/AF -> DWAT/DWAF, staging-only, vendor-scoped)
  1166. b142d6f5 2026-06-25 Fix front-facing Brewster/York leak: 26 products retitled+revendored to Malibu Wallpaper, 65 tag-scrubbed, 4 leak collections deleted
  1167. 57e17efc 2026-06-25 harden roll-builder gqlR + longtail refund-on-abort net (close phantom-drain path)
  1168. b05f19a0 2026-06-25 auto-save: 2026-06-25T07:02:28 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1169. 9bf6e491 2026-06-25 auto-save: 2026-06-25T06:02:12 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1170. 43234b32 2026-06-25 auto-save: 2026-06-25T05:01:58 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1171. e3e70397 2026-06-25 auto-save: 2026-06-25T04:01:43 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1172. b7a69f82 2026-06-25 auto-save: 2026-06-25T03:01:29 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1173. 9ec71d45 2026-06-25 auto-save: 2026-06-25T02:31:14 (2 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json vendor-scrapers/china-seas-refresh
  1174. 0d7f1829 2026-06-25 auto-save: 2026-06-25T02:01:05 (9 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/phillipromano-land-20260625T000105.json
  1175. 2ad44ac7 2026-06-25 auto-save: 2026-06-25T01:30:57 (3 files) — vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/mindthegap-land-20260625T000105.json shopify/scripts/data/bucketB/nina-land-20260625T000105.json
  1176. 32386749 2026-06-25 auto-save: 2026-06-25T01:00:48 (5 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-06-25.json shopify/scripts/data/bucketB/hollywood-land-20260625T000105.json
  1177. 6ff225aa 2026-06-25 auto-save: 2026-06-25T00:30:33 (5 files) — vendor-scrapers/china-seas-refresh shopify/scripts/data/bucketB/annafrench-land-20260625T000105.json shopify/scripts/data/bucketB/coordonne-land-20260625T000105.json shopify/scripts/data/bucketB/grahambrown-land-20260625T000105.json shopify/scripts/data/bucketB/harlequin-land-20260625T000105.json
  1178. 05e4a3e0 2026-06-25 auto-save: 2026-06-25T00:00:22 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1179. 05af0f7e 2026-06-24 auto-save: 2026-06-24T23:00:08 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1180. 2df028da 2026-06-24 auto-save: 2026-06-24T21:59:52 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1181. bbb2020a 2026-06-24 auto-save: 2026-06-24T20:59:37 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1182. c9576fc9 2026-06-24 auto-save: 2026-06-24T19:59:19 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1183. 76363d10 2026-06-24 auto-save: 2026-06-24T18:59:00 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl vendor-scrapers/china-seas-refresh
  1184. f860f5cf 2026-06-24 auto-save: 2026-06-24T17:58:43 (5 files) — shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh DW-Agents/vendor-command-center/deploy-mfval-guard.sh shopify/scripts/cadence/data/cadence-plan-pm-2026-06-25.json shopify/scripts/cadence/data/upload-restore-2026-06-25.jsonl
  1185. 81d5afae 2026-06-24 China Seas mailer: replace nav with 8 main-site tabs (New Arrivals/Brands/Collections/Styles/Commercial/Color/Material/Account) — fixes 2 prior 404 nav links; all 26 links click-through verified
  1186. d5a0e264 2026-06-24 auto-save: 2026-06-24T16:58:22 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1187. cef2bf1c 2026-06-24 China Seas mailer: add 3 more product photos (Arbre de Matisse, Club Cane, Cherry Branch) — featured patterns now 2x3, each linking to its product page
  1188. e4ee0772 2026-06-24 Repair tool: collapse newlines for single-line metafield types (fixes 25 multi-line composition values Shopify rejected)
  1189. ef5c99cb 2026-06-24 Guard cadence-import against {type,value} blob: unwrap row.material at parse so live importer can't leak JSON into custom.material + product description
  1190. 98eea4a6 2026-06-24 Harden backfill-to-catalog extractFromMetafields: unwrap {type,value} at the true origin so catalog spec columns never store the blob
  1191. 1d619822 2026-06-24 China Seas mailer: move Shop-by-Theme band to bottom on white bg; add .pill-theme (solid dark pills for light section)
  1192. 0088367c 2026-06-24 China Seas mailer: 9 houses in 3x3 grid (add Lee Jofa, Brunschwig & Fils, GP & J Baker) + crisp Big Caslon China Seas wordmark at bottom; fix mislabeled Brunschwig (was Kravet family lockup)
  1193. 3bf61e37 2026-06-24 auto-save: 2026-06-24T15:58:04 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1194. bcebc432 2026-06-24 Add fix-double-encoded-metafields.js: dry-run-safe repair for {type,value} blob leak in PDP specs
  1195. b25933f1 2026-06-24 Fix double-encoded metafield leak: unwrap {type,value} blobs before writing custom.material / dwc.contents
  1196. 005ffea3 2026-06-24 patcher: make .value regex non-backtracking ((?!\\w)) so re-runs are truly idempotent
  1197. 75e798ac 2026-06-24 Add reusable Shopify theme duplication script (asset-copy + 429 backoff)
  1198. cb3bd9c1 2026-06-24 auto-save: 2026-06-24T15:27:54 (2 files) — vendor-scrapers/china-seas-refresh shopify/duplicate-theme.py
  1199. 008d22cf 2026-06-24 patcher: avoid slash in LIVE label so backup path is valid
  1200. 246d40e9 2026-06-24 cc-api: add sync-china-seas.js — re-PUT mailer HTML to draft, preserving from/subject/address + trade list
  1201. 33c3f530 2026-06-24 China Seas mailer: make all CTA buttons pill-shaped (border-radius 26px on .cta-btn + inline)
  1202. e21ad3ee 2026-06-24 Add drift-proof patcher to push the PDP spec .value fix to dev/live theme
  1203. aa0b60a0 2026-06-24 Fix PDP spec rows rendering raw metafield envelope: read .value
  1204. 6be93c15 2026-06-24 China Seas mailer: pink hero v2 — TV removed (wallpaper patch), framed art + floor lamp, logo centered
  1205. 1ee9aa14 2026-06-24 TWIL grasscloth: apply Jerry Boyas email pricing (cost*0.75/yd) to sheet + 47 Shopify variants; activate 12 leak-free, retitle 26, archive 11 dups (scripts read token from .env, no hardcoded secret)
  1206. e9f90aa9 2026-06-24 China Seas mailer: pink Clementine room hero (logo centered); move 5 theme pills to bottom band
  1207. 4fe043e3 2026-06-24 collection hero (dev theme): semi-opaque contrasting text panel + hide duplicate Boost lower banner
  1208. 29700f1b 2026-06-24 China Seas mailer: DW banner restored at top, China Seas logo composited dead-center in room hero
  1209. 19239652 2026-06-24 mailers: add George test-send helper with CC-token fallback (clean self-test previews, CC source untouched)
  1210. 1bd894df 2026-06-24 China Seas mailer: China Seas logo at top + bottom, room-setting hero (Lyford Trellis), tagline into pills band
  1211. 244f7d7b 2026-06-24 Remove dead Show-24 per-page selector from theme-files mirror (consistency with live)
  1212. d0dddc8f 2026-06-24 Remove Show-24 per-page selector from collection toolbar; match product-type pill height to FILTERS pill
  1213. e6cedea9 2026-06-24 China Seas mailer: move heritage-house logos to a single strip across the bottom
  1214. 70d82e0e 2026-06-24 CC client: add updateCampaignActivity + getCampaignActivity; pushed Figma-matched HTML to live China Seas draft
  1215. ce5c0772 2026-06-24 China Seas mailer: match Figma — overlaid wordmark on darkened hero + dark chip for China Seas logo
  1216. 78722c8e 2026-06-24 DIG @gpt-corrupt SKU follow-up sweep: 25 found, bucket A empty (DTD B 3/0), 11 manual + 14 archived untouched, leak-redacted
  1217. dfd19842 2026-06-24 CC OAuth: add contact_data scope (list read/set) + dotenv auto-load in oauth-setup
  1218. bb5316e3 2026-06-24 auto-save: 2026-06-24T12:57:01 (3 files) — mailers/cc-api/oauth-setup.js shopify/display-variant-backfill/progress.json vendor-scrapers/china-seas-refresh
  1219. 8aa32e71 2026-06-24 CC API: auto-load creds from gitignored .env (dotenv); China Seas campaign created as CC draft
  1220. e8a577a4 2026-06-24 Add Constant Contact OAuth setup helper (authorize URL + code->token exchange)
  1221. 4c4f363f 2026-06-24 China Seas mailer: confirmed DW postal address + phone in footer & CC payload
  1222. ec18eb1c 2026-06-24 Host China Seas mailer vendor logos on Shopify CDN; swap 6 img src to permanent cdn.shopify.com URLs (unblocks logo-hosting check)
  1223. dbcd3125 2026-06-24 Add Constant Contact v3 API scaffold for China Seas mailer (double-gated, dry-run validated)
  1224. 09b3f565 2026-06-24 Add China Seas launch email mailer (6 theme pills + 6 heritage-house logos)
  1225. d898edc1 2026-06-24 auto-save: 2026-06-24T12:26:52 (2 files) — shopify/scripts/dig-sample-12/apply-dig-sample-12.mjs vendor-scrapers/china-seas-refresh
  1226. 0cc3018f 2026-06-24 Add display_variant tag to new-product import template (storefront variant-display rule)
  1227. 6287bc0d 2026-06-24 Tres Tintas: diagnose missing display_variant tag (no buy button) + stage gated tag-add fix
  1228. 06f0b0bb 2026-06-24 Ship iconized Download-PDF button to LIVE 5.2 (143955820595)
  1229. a708122d 2026-06-24 auto-save: 2026-06-24T11:56:44 (5 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl shopify/specsheet-pdf-port-5.2/spec-sheet-button.liquid vendor-scrapers/china-seas-refresh
  1230. 6ba8c81a 2026-06-24 Stage DIG- concept-sample -> real $12 sample bulk-write plan (DTD Option B, not run)
  1231. be3f4300 2026-06-24 auto-save: 2026-06-24T11:26:36 (3 files) — shopify/stage-pdp-variant-deeplink-fix.sh vendor-scrapers/china-seas-refresh shopify/specsheet-pdf-port-5.2/
  1232. 88d88f38 2026-06-24 auto-save: 2026-06-24T10:56:28 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1233. 4d8d4b83 2026-06-24 cadence: draft INERT Fentucci vendor entry (TWIL grasscloth prep)
  1234. 2f5131a9 2026-06-24 auto-save: 2026-06-24T10:26:20 (2 files) — vendor-scrapers/china-seas-refresh shopify/scripts/archive-skn.js
  1235. 5b044ca7 2026-06-24 burst: option name must be 'Size' + Roll-first variant (DW theme price-picker convention); fixed live on 42 TWIL products
  1236. f41456c0 2026-06-24 cadence: tag new ACTIVE products 'New Arrival' inline so feed appears within the hour
  1237. 34951aa4 2026-06-24 auto-save: 2026-06-24T09:56:09 (5 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh pending-approval/burst_twil_naturals.py
  1238. 784bf419 2026-06-24 auto-save: 2026-06-24T08:55:52 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1239. b5a9363b 2026-06-24 Add fill_sheet.py: batch-write Image1/2/Alt/Desc to Fentucci sheet (G:J); sheet ID is public, not a secret
  1240. 2cbf5664 2026-06-24 auto-save: 2026-06-24T08:25:44 (2 files) — shopify/theme-infinite-scroll-142250278963/layout/theme.liquid vendor-scrapers/china-seas-refresh
  1241. 63cc17b9 2026-06-24 Add reusable dry-run-gated refresh-product-image.sh + hi-res BA452 (Oatmeal) for memo-sample blur fix
  1242. f917d990 2026-06-24 Add ALLOW_LIVE-gated live push script for Boost infinite override
  1243. fafab4ef 2026-06-24 Boost infinite-scroll override: force boostSDAppConfig paginationType=infinite_scroll via inline head snippet; verified append on dev theme 143956443187 (desktop 24->264, mobile 24->264)
  1244. d436f9a2 2026-06-24 Coastal Mist live fix APPLIED + verified: real image, oil filter removed, Red/Needs-Image stripped; script hardened (no-eval, idempotent, token-masked)
  1245. e0e417a2 2026-06-24 fix script: mask admin token in dry-run echoes + BSD-safe mktemp
  1246. e7a46161 2026-06-24 auto-save: 2026-06-24T07:55:37 (8 files) — pending-approval/fix-coastal-mist-BA469.sh shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1247. 670fae3f 2026-06-24 quadrille-house: enrichment 1937/1942 done; 5 Enchanted Bamboo Grasscloth blocked on dead image_url (website host vs S3) — need re-scrape, stay HELD
  1248. 97c99a3d 2026-06-24 Coastal Mist: full-res 960x1200 BA469 image + our-info alt text; base64-attachment upload in fix script
  1249. b91d293d 2026-06-24 pending-approval: found genuine BA469 image + ready-to-run live fix script (gated)
  1250. 3b51069d 2026-06-24 pending-approval: draft live Coastal Mist oil-filter image fix (DTD-A)
  1251. 9ca4e85a 2026-06-24 VCC: fix DB fallback connection string (dw_admin@127.0.0.1, not socket→root)
  1252. fa89fca7 2026-06-24 auto-save: 2026-06-24T07:25:27 (2 files) — vendor-scrapers/china-seas-refresh DW-Agents/vendor-command-center/server.js.backup-20260624-072033
  1253. 08e84a2c 2026-06-24 Fix vendor_registry total_products rollup: filter shared catalog tables per-vendor
  1254. b973b625 2026-06-24 auto-save: 2026-06-24T06:55:19 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1255. 1c14f1e9 2026-06-24 auto-save: 2026-06-24T05:54:18 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh
  1256. a0fd572c 2026-06-23 auto-save: 2026-06-23T18:54:15 (7 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl vendor-scrapers/china-seas-refresh shopify/remap-brewster-york-to-house-lines.py
  1257. f2ef0687 2026-06-23 Stage P2 press-band move-up on dev clone of 5.2 (theme 143956443187): reorder index.json hero->press->products; fix social-icons font copy
  1258. 712b86ae 2026-06-23 Front-page sprint PUBLISHED LIVE as Steves Version 5.2 (143955820595); 5.1 kept as rollback. Memo -> done.
  1259. 04106ead 2026-06-23 auto-save: 2026-06-23T18:23:51 (2 files) — DW-Agents/vendor-command-center/build-vendor-inquiry-pages.py vendor-scrapers/china-seas-refresh
  1260. ad18e182 2026-06-23 Front-page four-horsemen review memo: verdict + staged dev-theme sprint results + preview links
  1261. ec7c74e8 2026-06-23 Stage front-page sprint (P0+P1) on dev theme clone of live 5.1: footer apostrophe, trade bar, hero scrim, mobile hero overlay — verified in preview
  1262. 2dd34d8f 2026-06-23 brand-router: canonicalize China Seas collection handle china-seas-wallpaper -> china-seas (avoid 301 hop)
  1263. aaa4f371 2026-06-23 snapshot incidental tree state before gemini-key history scrub
  1264. 310e37f1 2026-06-23 brand-router: neutralize deleted hardcoded page 79444574259 — make page-push opt-in via BRAND_ROUTER_PAGE_ID, skip (not 404/clobber) when unset
  1265. 72905e93 2026-06-23 auto-save: 2026-06-23T17:53:42 (20 files) — shopify/_cwGRID/assets/theme.css.liquid shopify/_cwGRID/sections/collection.liquid shopify/_cwGRID/snippets/product-form-content.liquid shopify/_cwGRID/snippets/spec-sheet-button.liquid shopify/_cwGRID/templates/page.spec-sheet.liquid
  1266. 6ea722b2 2026-06-23 brand-router: repoint Quadrille to live smart collection /collections/quadrille-wallcoverings (id 301717520435)
  1267. 13432044 2026-06-23 Remove leaked DWSecure2024! fallback from tecnografica-viewer.js
  1268. f858ddd0 2026-06-23 brand-router: add Quadrille brand entry (vendor-filtered, between Pierre Frey and Ralph Lauren)
  1269. b21ae65b 2026-06-23 security: record vp-security progress on Gemini key rotation (boardroom scrubbed, actions 1+3 drafted)
  1270. 1a1a388c 2026-06-23 cadence: ENABLE Quadrille-house sample-only drip in hourly runner (export QUADRILLE_SAMPLEONLY_DRIP=1)
  1271. bdcb9ec1 2026-06-23 cadence: roman-numeral title guard (II/III/IV…) + suppress false Needs-Image on sample-only products
  1272. d90a2d43 2026-06-23 auto-save: 2026-06-23T17:23:17 (5 files) — shopify/scripts/cadence/cadence-import.js shopify/scripts/cadence/data/cadence-cursor.json vendor-scrapers/china-seas-refresh shopify/scripts/cadence/data/cadence-plan-am-2026-06-24.json shopify/scripts/cadence/data/upload-restore-2026-06-24.jsonl
  1273. e38bffd8 2026-06-23 cadence: harden sample-only desc query against newline/tab corruption (SQL regexp_replace)
  1274. 9ec5d21e 2026-06-23 cadence: gate Quadrille-house sample-only drip OFF by default (QUADRILLE_SAMPLEONLY_DRIP / --sampleonly); manual --only test bypasses
  1275. eb9c513f 2026-06-23 cadence: fix ACTIVE/DRAFT summary count for sample-only products (activatedCount)
  1276. 6a487a9d 2026-06-23 cadence: add sampleOnly vendor mode for Quadrille-house $4.25 sample-only lines (no cost, additive)
  1277. 0070a06b 2026-06-23 Backfill dw_unified mirror metafields from live Shopify for 311 Designtex (closes mirror UOM gap)
  1278. 6e0add2e 2026-06-23 Record Gemini key hygiene progress: 4/6 files env-ified, 2 held, revoke still Steve-only
  1279. 407a1762 2026-06-23 auto-save: 2026-06-23T16:53:06 (9 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-23.json shopify/scripts/cadence/data/upload-restore-2026-06-23.jsonl vendor-scrapers/china-seas-refresh audits/designtex-uom-fix/backfill-mirror-metafields.mjs
  1280. fff4983c 2026-06-23 Add gated publish-5.1-to-live script (Steve runs to swap live theme)
  1281. b91b417b 2026-06-23 Env-ify 3 DW vendor-command-center files: remove leaked Gemini literal, use master key
  1282. c1f4f758 2026-06-23 Recommendations: 3-up+text on mobile, 4-up image-only on desktop (dev theme 5.1)
  1283. 7d735cce 2026-06-23 Fix 12 broken (404) images on /pages/designer-wallpaper-styles live + add error guard
  1284. 04639652 2026-06-23 Close 5 collection-page memos + reconciliation (pushed live, verified)
  1285. a603726e 2026-06-23 Collection theme consolidated push LIVE (Steve-approved): 5 memos merged, 10/10 verified, assets backed up
  1286. 008e67ab 2026-06-23 Serve DW style guide standalone via pm2 (dw-style-guide, :9972)
  1287. 2744dd36 2026-06-23 Add DW design-language style guide: tokens.css + servable /style-guide page
  1288. a08ffaa0 2026-06-23 Close dedup-specs audit: 0.17% duplication (5/3000) — catalog clean, no cleanup needed
  1289. c9b7c05e 2026-06-23 Fix collection rotating-hero hydration race: re-home rotator into Boost header
  1290. 8eb976d7 2026-06-23 fix(theme): unhide DW density/grid slider on collection pages (DEV theme)
  1291. 1cd2c5df 2026-06-23 Stage You-May-Also-Like mobile 2-up grid fix on dev theme 5.1
  1292. c85040c5 2026-06-23 Add reconciled single-path memo for the 5 collection fixes: ONE dev theme verified, ONE live push held on Steve's authenticated Preview
  1293. 82166919 2026-06-23 Mark Designtex fill-in/UOM/archive memo DONE with execution stamp (all 4 steps verified)
  1294. 4107be7f 2026-06-23 Designtex Step 3 COMPLETE: spec metafields + 'single roll'->'per yard' prose on all 302 live DWDX (102 written this resume + 200 prior, 0 failed; DWAH Rocket excluded). Verified live: 6/6 specs where repeat applies, body prose corrected.
  1295. 11c5de3a 2026-06-23 auto-save: 2026-06-23T16:22:58 (13 files) — audits/designtex-uom-fix/body-html-backup.json audits/designtex-uom-fix/fill-specs-ledger.json shopify/collection-hero-fix/backups/assets_custom.css.dev-143947038771.pushbak shopify/collection-hero-fix/backups/assets_custom.css.live-142250278963.pushbak shopify/collection-hero-fix/backups/config_settings_schema.json.dev-143947038771.pushbak
  1296. 9ae1ee0e 2026-06-23 Add consolidated single-pass LIVE push for all 5 collection memos (gated on Steve's dev-Preview verify)
  1297. f9adefec 2026-06-23 Reconcile 5 collection memos: merge sections/collection.liquid (hero render + toolbar cleanup) and consolidate ALL fixes onto single dev theme 143947038771 (DTD Option-A)
  1298. 8726db5e 2026-06-23 Designtex fill-in Step 3 COMPLETE: spec metafields (global.* + specs.*, DTD-C) + prose fix on 302 live DWDX from canonical. Verified 302/302 specs set, 0 'single roll' prose. body_html backed up. DWAH untouched.
  1299. 20c44252 2026-06-23 Designtex fill-in Step 4 COMPLETE: verified 0/130 discontinued colorways present on Shopify (none live). Discontinued flagged in dw_unified Step 1; no archive action needed.
  1300. b813d7d8 2026-06-23 Designtex fill-in Step 2 COMPLETE: UOM flip verified 0 'Priced Per Single Roll' live (77 prior + 25 tag residue + 3 Pebble metafield). Relabel-only, price untouched.
  1301. 4b710456 2026-06-23 Close 2 stale Tres Tintas pending-approval memos (work completed this session)
  1302. baf668a0 2026-06-23 Re-vendor 15 mis-vendored Rebel Walls products (Steve-approved)
  1303. 1b6b5dc8 2026-06-23 auto-save: 2026-06-23T15:52:50 (6 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-23.json shopify/scripts/cadence/data/upload-restore-2026-06-23.jsonl vendor-scrapers/china-seas-refresh audits/designtex-uom-fix/clean-roll-tag-residue.mjs
  1304. e58e4e17 2026-06-23 Stage rotating hero on dev + pending-approval memo + verified screenshots
  1305. 7227f977 2026-06-23 Add Tres Tintas live-PDP click-through QA + reverify; draft Rebel Walls re-vendor task
  1306. 1a27c781 2026-06-23 Rotating new-arrivals collection hero (DTD source=A/curation=C-hybrid) + F3 specificity fix
  1307. b357a962 2026-06-23 Designtex Step 1: canonical dw_unified fill-in loaded (2701 FILL + 130 discontinued)
  1308. 94a3c718 2026-06-23 auto-save: 2026-06-23T15:22:30 (4 files) — probe-collection-defects.js shopify/.gitignore vendor-scrapers/china-seas-refresh verify-collection-hero-fix.js
  1309. 957660c8 2026-06-23 Tres Tintas rooms regenerated at corrected repeat-driven scale (full ledger)
  1310. a3d6742a 2026-06-23 Draft gated live-push memo + before/after screenshots for collection hero/dup-title/mobile-header fixes (DTD F1=B/F2=A/F3=A)
  1311. fff83e00 2026-06-23 Collection hero fix: harden image/no-image switch via body.dw-collection-has-hero; F3 mobile gap verified (branding 118->74px); confirm JS errors owned by companion grid.js memo
  1312. 06ab4e14 2026-06-23 Designtex: comprehensive gated memo + live-77 UOM flip script
  1313. 7cb4cc6e 2026-06-23 enrich-local: add 503-overload-break (transient Gemini high-demand) + clean resume path; RESUME-ENRICH.md; Gemini recovered, resuming full run
  1314. 8d9e17ae 2026-06-23 Designtex: live gap audit + fill-in plan from BigCommerce crawl
  1315. d286727d 2026-06-23 Collection-page fixes: hero band (F1=B), dup-title kill (F2=A), mobile-header gap (F3=A) — local build + live/dev backups + probe
  1316. 5df32f5e 2026-06-23 RESUME: record CS step 3 no-op finding + steps 3d N/A
  1317. a509ba7a 2026-06-23 Add Designtex BigCommerce plain-HTTP enrichment scraper (no puppeteer, no login)
  1318. dfed2390 2026-06-23 RESUME: add mid-flight resume instructions + CS live-write/rollback runbook
  1319. a3179cd0 2026-06-23 Step 5: 1,942 net-new dw_sku assigned (0 collision); HELD structurally enforced (not in vendors.js + cost=0 -> cadence skips); update execution-resume with both DTD verdicts
  1320. 1ad6d3c1 2026-06-23 China Seas Step 4: DTD verdict A — 26 confirmed-absent net-new patterns (101 records) flagged NET_NEW_HELD_NO_COST; no cost/price source exists (line is sample-only), held as business dependency, NOT created
  1321. b37beef7 2026-06-23 Quadrille House: assign DW SKUs to 1,942 net-new + register held in dw_sku_registry (0 collisions, 0 dup groups)
  1322. 172e2f45 2026-06-23 China Seas: DTD verdict A — skip live overwrite (370+12 already populated live, premise was stale-mirror artifact); refresh local mirror to match live truth instead; pass-2 strict matcher recovered 12 of 445
  1323. 78c8be65 2026-06-23 Quadrille House: launch detached enrichment + canonical RESUME checkpoint
  1324. 50a6dde4 2026-06-23 auto-save: 2026-06-23T14:52:21 (4 files) — shopify/tres-tintas-room-backups/_regen.ledger vendor-scrapers/china-seas-refresh vendor-scrapers/quadrille-house/RESUME.md vendor-scrapers/quadrille-house/enrich-local.js
  1325. b09db983 2026-06-23 Quadrille house Phase 0: register 8 net-new prefixes + repoint Quadrille DWIY->DWQC (local dw_unified)
  1326. 418f8a16 2026-06-23 collections: add rendered hero design preview (Artmura/Fentucci + fallback)
  1327. d3862ff3 2026-06-23 DW collection toolbar consolidation: stage 3 edited assets + push memo
  1328. 4d3e8210 2026-06-23 auto-save: 2026-06-23T14:22:11 (2 files) — shopify/tres-tintas-room-backups/_regen.ledger vendor-scrapers/china-seas-refresh
  1329. d56dd523 2026-06-23 Quadrille house: full scrape staged (1942 net-new SKUs, 8 brands), asset manifest (32 PDFs + 390 room images), dedup audit (0 collisions)
  1330. 994fa589 2026-06-23 Quadrille house: Phase 0 staging table + per-brand feed-first scraper (2 layouts, fabric specs from patternInfo)
  1331. 25b799da 2026-06-23 auto-save: 2026-06-23T13:52:03 (9 files) — shopify/audit/collection-hero-manifest.json shopify/audit/collection-hero-manifest.md shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-pm-2026-06-23.json shopify/scripts/cadence/data/upload-restore-2026-06-23.jsonl
  1332. 12841c91 2026-06-23 Correct item-3 collection-image diagnosis: stale Boost fallback + orphaned home cards (not Boost-admin); add tested CSS fix + gated live-push
  1333. b6165db6 2026-06-23 Stage collection/home oversized-images CSS fix on dev theme custom.css (+ dev-preview served verifier + backup)
  1334. 3142bb5b 2026-06-23 DW collection+home oversized-images: corrected root cause + tested CSS fix (stale Boost fallback suppression + home grid net)
  1335. e6dfc1a5 2026-06-23 collection hero: in-progress manifest snapshot (66 missing fully vision-confirmed) + memo with resume path
  1336. 9b9bd6e0 2026-06-23 auto-save: 2026-06-23T13:21:53 (14 files) — shopify/tres-tintas-room-backups/_done.ledger shopify/audit/collection-hero-manifest.heuristic-full.json shopify/audit/collection-hero-manifest.json shopify/audit/collection-hero-manifest.md shopify/audit/collection-hero-manifest.missing66.json
  1337. 4f5bbe67 2026-06-23 harden hero pipeline: global 45s socket timeout (no hung sockets) + unbuffered progress
  1338. 8bb35f8f 2026-06-23 hero manifest finalizer: socket-timeout hardening reuse + private-label handle sanitizer + clean .md summary
  1339. 144635ea 2026-06-23 Add REGEN mode to room generator: replace our 557 rooms at corrected scale
  1340. ffd94410 2026-06-23 Graft native-grid infinite scroll onto LIVE theme (newwall-infinite.js + 1 layout include)
  1341. d4a51d6f 2026-06-23 Fix room-setting pattern scale: drive tiling by real repeat, not fixed-3
  1342. a2ad8809 2026-06-23 collection hero pipeline: heuristic-shortlist + Gemini vision-confirm room-setting hero per collection; dry-run apply script
  1343. 2228022a 2026-06-23 Add Tres Tintas completeness audit (desc+spec+room, roll-vs-mural aware)
  1344. ec1ab72f 2026-06-23 auto-save: 2026-06-23T12:51:44 (8 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/tres-tintas-room-backups/_done.ledger dw-acoustical-devtheme.png dw-bm-section-FIXED.png shopify/scripts/cadence/data/cadence-plan-pm-2026-06-23.json
  1345. f0011707 2026-06-23 collections: add background hero image (dedicated section, staged on dev theme) + audit of 66 collections missing collection.image
  1346. d7042d8c 2026-06-23 Audit: repeat+match are OPTIONAL specs (plain/free-match rolls & murals legitimately lack them on vendor pages); broaden mural detection to Jo-prefix + length-without-width fingerprint. Removes false-positive incomplete flags.
  1347. 3c95a884 2026-06-23 auto-save: 2026-06-23T12:21:34 (3 files) — shopify/scripts/tt-room-dbg2.js shopify/tres-tintas-room-backups/_done.ledger shopify/tres-tintas-spec-backups/_done.ledger
  1348. 72762a60 2026-06-23 Add gated live-push + rollback scripts + candidate snapshot for vendor-routing/grey-header fix
  1349. caa2d35e 2026-06-23 dw-vendor-collection-url: use collection.id existence test + unless-chain (robust over == empty)
  1350. f0d8c26f 2026-06-23 Add Tres Tintas final completeness audit (desc/specs-by-type/room across all 592, roll-vs-mural spec shape aware)
  1351. ea390dcd 2026-06-23 Spec recrawl: title-SKU fallback for the 22 active Tres Tintas products with mfr SKU in title but no pattern-ref tag (DTD 3/3). Archived Rebel Walls titles correctly excluded (no SKU pattern).
  1352. a2606953 2026-06-23 DW vendor-collection routing + grey-header contrast fix (candidates, staged)
  1353. b2a25a5b 2026-06-23 Fix Tres Tintas room generator infinite-loop: GraphQL var name was $c but script passed {cursor} -> after:null every page (only 120-200 of 592 seen). Pass {c:cursor}, bump to first:100, add frozen-cursor break guard.
  1354. 7467dd91 2026-06-23 auto-save: 2026-06-23T11:51:26 (5 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-23.json shopify/scripts/tres-tintas-room-settings.js shopify/tres-tintas-spec-backups/_done.ledger shopify/scripts/tt-room-dbg2.js
  1355. 90af3941 2026-06-23 Route room generator GraphQL scan through timeout-guarded fetchRetry (close last bare-fetch hang hole)
  1356. 6638fe05 2026-06-23 Harden Tres Tintas spec recrawl: per-request fetch timeout (45s) so a half-open vendor socket can't wedge the batch
  1357. c222b30c 2026-06-23 Harden Tres Tintas room generator: per-request fetch timeout + 5-min wall-clock poll cap (fixes hung-socket batch wedge)
  1358. afe6ecc0 2026-06-23 auto-save: 2026-06-23T11:21:18 (3 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-23.json shopify/tres-tintas-spec-backups/_done.ledger shopify/tres-tintas-room-backups/
  1359. 14c964fd 2026-06-23 Cadence-out full Tres Tintas backlog: unflag 569 stranded newwall rows (1281 now eligible, 0 dup live)
  1360. 1f14df14 2026-06-23 Add Tres Tintas room-setting generator (Replicate SDXL, pattern-locked)
  1361. 31f09baa 2026-06-23 PDP fix cluster: breadcrumbs grey-bar, Download PDF (inline DOM, no iframe), button-position right-of-cart
  1362. 9f9be71a 2026-06-23 Harden Tres Tintas spec recrawl: retry+try/catch on vendor fetch
  1363. b7e3a00a 2026-06-23 auto-save: 2026-06-23T10:51:10 (5 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-23.json shopify/scripts/cadence/run-cadence-hourly.sh shopify/scripts/tres-tintas-spec-recrawl.js shopify/tres-tintas-desc-backups/_done.ledger shopify/tres-tintas-spec-backups/
  1364. 0b67db27 2026-06-23 cadence: honor newwall_catalog dedup_skip so Tres Tintas imports net-new-only (Option A, Steve-approved)
  1365. a727c094 2026-06-23 Fix spec-sheet Download PDF: render via hidden iframe (fetch+DOMParser never ran the page JS), add layout none to spec-sheet template
  1366. f59d4ade 2026-06-23 Add Tres Tintas spec recrawl — fills width/repeat/length/weight from vendor pages
  1367. 4f33b922 2026-06-23 auto-save: 2026-06-23T10:21:01 (1 files) — shopify/tres-tintas-desc-backups/_done.ledger
  1368. 7f7867c7 2026-06-23 Add quick-reference card for infinite scroll deployment
  1369. 0facdfb1 2026-06-23 Add final summary document for infinite scroll delivery
  1370. 0469da65 2026-06-23 Add comprehensive infinite scroll documentation (architecture, visual explanations, integration guides)
  1371. ff28eaa5 2026-06-23 Add infinite scroll implementation for collections (mutation observer approach, no wrapper divs)
  1372. 1590533f 2026-06-23 cadence: one-vendor-per-slot round-robin — fix stuck cursor (idx pinned at 0 ran Thibaut every slot)
  1373. b84713de 2026-06-23 Officer-yolo approved: Launch Tres Tintas full backfill (all 554 products) + ship printer icon
  1374. 635cad8c 2026-06-23 live: infinite scroll deployed to designerwallcoverings.com
  1375. 6479af2e 2026-06-23 Fix infinite scroll: add data-dw-infinite wrapper to collection.liquid
  1376. a8829a6a 2026-06-23 auto-save: 2026-06-23T09:50:51 (1 files) — shopify/scripts/tres-tintas-designer-descriptions.js
  1377. e87f44f9 2026-06-23 fix: infinite scroll for standard Shopify collection pagination
  1378. 39fa12d4 2026-06-23 Add inline PDF download to product spec sheet button — no page navigation
  1379. 8ac53559 2026-06-23 stage: infinite scroll collection.liquid for dev theme push
  1380. c15a8c19 2026-06-23 feat: implement infinite scroll on DW Shopify collection pages
  1381. 3d582696 2026-06-23 audit: DW microsites infinite scroll status — 3 converted, 3 already have it, 2 API-only
  1382. 828034b5 2026-06-23 pending-approval: grid.js init-abort root cause + gated live-push memo
  1383. e78be974 2026-06-23 auto-save: 2026-06-23T09:20:41 (16 files) — shopify/scripts/cadence/sdg-trade-login.mjs shopify/scripts/tres-tintas-designer-descriptions.js shopify/tres-tintas-desc-backups/_done.ledger shopify/grid-js-fix/backups/header.liquid.live-142250278963.before shopify/grid-js-fix/backups/product-list-item.liquid.live-142250278963.before
  1384. 7b78feaa 2026-06-23 auto-save: 2026-06-23T08:50:33 (2 files) — shopify/tres-tintas-desc-backups/_done.ledger shopify/scripts/cadence/sdg-trade-login.mjs
  1385. ab61bf4f 2026-06-23 Update tres-tintas ledger
  1386. c6298519 2026-06-23 Stage theme-optimizer read-only grid-init verifier + tres-tintas ledger (no live writes)
  1387. 5b218dbb 2026-06-23 Diagnose collection toolbar (item2) + Boost oversized images (item3); back up live theme; gated memo
  1388. abfe1de0 2026-06-23 Fix: Remove price-hiding CSS from live theme - all Tres Tintas prices now visible
  1389. ee3092b9 2026-06-23 Build styles-page broken-image fix: 12 verified-live swaps + capture-phase error guard (gated memo)
  1390. 9717a88a 2026-06-23 Designtex unit_of_measure audit: 71/302 say 'Priced Per Single Roll' vs YARD rule (gated correction memo)
  1391. 2711b778 2026-06-23 Draft gated Gemini key rotation memo (leaked AIza key in 6 Mac2 files + Kamatera cron)
  1392. c40bab9f 2026-06-23 Cap Gemini thinking budget (thinkingBudget=0) on remaining uncapped gemini-3.5-flash calls
  1393. a1410525 2026-06-23 Disable Gemini thinking budget on capped enrichment calls (thinkingConfig.thinkingBudget=0)
  1394. 2a4e2a61 2026-06-23 auto-save: 2026-06-23T07:50:15 (83 files) — DW-Agents/dw-agents/agent-thibaut-updater/thibaut-updater-agent.ts DW-Agents/vendor-command-center/server.js DW-Agents/vendor-command-center/standardization-worker.js DW-Agents/vendor-command-center/website-scorer.js DW-Programming/DW-Duplicate-Recolor-v1.4/lib/geminiAnalyzer.js
  1395. 98038581 2026-06-23 Add collection grid responsive-cols + infinite-scroll fix push script (staged on dev theme 143947038771)
  1396. 7827786f 2026-06-23 Fix grid density slider mobile hiding: add !important + 480px breakpoint + comprehensive push script
  1397. a744a13f 2026-06-23 Fix filter pill sizing: uniform min-height and min-width for consistent appearance
  1398. cd7a11f6 2026-06-23 Fix theme-push scripts: resolve LIVE theme dynamically (role==main), not stale hardcoded ids
  1399. d3069393 2026-06-23 Deploy collection toolbar to live theme: sort dropdown + grid density slider
  1400. de52ba2c 2026-06-23 Diagnose + stage revert of broken Approach-B section-inside-section on LIVE collection page
  1401. bfe782d2 2026-06-23 Upgrade all Gemini text calls from deprecated gemini-2.0-flash to gemini-3.5-flash (106 files)
  1402. 7fe21a33 2026-06-23 Fix grid selector in toolbar updateGridDensity function
  1403. ad572a33 2026-06-23 Fix toolbar CSS: prevent sort dropdown text cutoff + make slider visible
  1404. d2fc51db 2026-06-23 Fix Liquid error: convert collection-toolbar section to snippet
  1405. e8637bd7 2026-06-23 Tres Tintas designer-description pilot: executor + snippet case-fix + approval memo (officer signed off)
  1406. 5438ce13 2026-06-23 Fix Shopify schema validation errors in toolbar and filter sections
  1407. caf4f2a0 2026-06-23 Deploy grid density slider (3-12 columns) to Shopify live theme
  1408. 15975a42 2026-06-23 Add full collection toolbar (sort + grid density slider) to collection page
  1409. 6ee60cbe 2026-06-23 auto-save: 2026-06-23T02:49:11 (5 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/data/bucketB/rebelwalls-land-20260623T000100.json shopify/scripts/data/bucketB/scalamandre-land-20260623T000100.json shopify/scripts/data/bucketB/schumacher-land-20260623T000100.json shopify/scripts/data/bucketB/thibaut-land-20260623T000100.json
  1410. 41ed3286 2026-06-23 auto-save: 2026-06-23T02:19:04 (3 files) — shopify/scripts/data/bucketB/longtail-land-20260623T000100.json shopify/scripts/data/bucketB/mindthegap-land-20260623T000100.json shopify/scripts/data/bucketB/nina-land-20260623T000100.json
  1411. 1c02d5a7 2026-06-23 auto-save: 2026-06-23T00:48:45 (4 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-23.json shopify/scripts/data/bucketB/harlequin-land-20260623T000100.json shopify/scripts/data/bucketB/hollywood-land-20260623T000100.json
  1412. f6663c20 2026-06-23 auto-save: 2026-06-23T00:18:39 (3 files) — shopify/scripts/data/bucketB/annafrench-land-20260623T000100.json shopify/scripts/data/bucketB/coordonne-land-20260623T000100.json shopify/scripts/data/bucketB/grahambrown-land-20260623T000100.json
  1413. 4c6dcdef 2026-06-22 auto-save: 2026-06-22T23:18:24 (7 files) — shopify/theme-5.0-duplicate/assets/boost-sd-custom.css shopify/theme-5.0-duplicate/assets/dw-pdp-size-pills.js shopify/theme-5.0-duplicate/assets/theme.css.liquid shopify/theme-5.0-duplicate/sections/collection.liquid shopify/theme-5.0-duplicate/snippets/product-description-meta.liquid
  1414. 28aef168 2026-06-22 auto-save: 2026-06-22T22:48:18 (1 files) — shopify/theme-5.0-duplicate/sections/collection.liquid
  1415. fa835356 2026-06-22 Add 50% opaque text backgrounds to all collection page headers
  1416. 1784bd56 2026-06-22 Add script to push carousel + specs fixes to Shopify theme
  1417. 5b833a5d 2026-06-22 audit: Full specs deduplication scan across 250 active products — 7 duplicates found
  1418. e829fb7b 2026-06-22 Fix: carousel display (block→inline-block) + remove duplicate specs rendering
  1419. c736ba8a 2026-06-22 Add duplicate specs audit task + sample approval document
  1420. 0381851c 2026-06-22 fix: restore full specifications table display with interior-designer pattern ref
  1421. 8d6ec42b 2026-06-22 feat: move product specs to searchable/sortable tags
  1422. 3b03ff09 2026-06-22 chore: simplify product-specs to show only pattern reference
  1423. 3476f117 2026-06-22 chore: update pdp push script to include product specs and product snippet updates
  1424. 054e0338 2026-06-22 fix: product specs rendering - access metafields as object properties not array iteration
  1425. 7d2e15bd 2026-06-22 feat: add product specifications display from metafields in product template
  1426. f5d220c1 2026-06-22 feat: arrange product page buttons (Request Sample, Spec Sheet, Add to Cart) on single row with equal spacing and reduced sizes
  1427. b6630f50 2026-06-22 auto-save: 2026-06-22T21:48:03 (3 files) — DW-Programming/grid-slider-with-smart-names.js DW-Programming/templates/grid-slider-template.html shopify/scripts/data/bucketB/mindthegap-land-20260622T194658.json
  1428. 00f0ccc2 2026-06-22 fix: improve dropdown positioning with wrapper container and overflow handling
  1429. 38f91012 2026-06-22 fix: prevent sort dropdown from being clipped on the left
  1430. f60e20d9 2026-06-22 feat: add pill-style sort control to complement grid density slider
  1431. 0e2d0188 2026-06-22 fix: improve grid density slider CSS to prevent layout overlap with sort controls
  1432. 8090a85f 2026-06-22 auto-save: 2026-06-22T21:17:54 (9 files) — data/ scripts/designtex-enhanced-sync.js scripts/designtex-full-scrape.js scripts/designtex-headless-scraper.js scripts/designtex-parallel-scraper.js
  1433. 6d451d8a 2026-06-22 auto-save: 2026-06-22T20:47:47 (1 files) — shopify/scripts/data/bucketB/hollywood-land-20260622T194658.json
  1434. 6551a866 2026-06-22 auto-save: 2026-06-22T20:17:40 (6 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/data/bucketB/annafrench-land-20260622T194658.json shopify/scripts/data/bucketB/coordonne-land-20260622T194658.json shopify/scripts/data/bucketB/grahambrown-land-20260622T194658.json shopify/scripts/data/bucketB/harlequin-land-20260622T194658.json
  1435. 9f1b2cbb 2026-06-22 auto-save: 2026-06-22T19:46:58 (2 files) — logs/bucketB-land-all.err logs/bucketB-land-all.out
  1436. 4fb13ceb 2026-06-22 auto-save: 2026-06-22T19:38:17 (4 files) — shopify/theme-5.0-duplicate/assets/dw-card-hover.js shopify/theme-infinite-scroll-142250278963/assets/dw-card-hover.js shopify/scripts/moq/na-tagged-before-part2.json shopify/scripts/moq/new-arrivals-part2.py
  1437. 24ae0051 2026-06-22 Fix grid slider: force setProperty with !important to override Boost inline styles
  1438. 1cde7666 2026-06-22 card-hover v3: hide vendor on touch (mobile shows pattern name only)
  1439. 7df3fcf8 2026-06-22 Bucket-B PR + Hollywood sample-only roll-variant scripts (DTD-A)
  1440. 0ee05d61 2026-06-22 New Arrivals Boost scope: confirm no API key (admin-only fix), add turnkey admin steps + support-ticket draft + Boost settings backup
  1441. 5b0daa82 2026-06-22 hfilter: desktop-only (>768) — mobile keeps Boost's native filter drawer untouched; padding+pattern-only-hover still apply on mobile
  1442. 9afd52da 2026-06-22 Fix UI bugs: hide product info at rest, tight margins (2px), grid column CSS, mobile responsive slider
  1443. 3af4a705 2026-06-22 card-hover: mobile shows ONLY pattern name (always-visible, vendor hidden); add to live-push bundle
  1444. e837c6e6 2026-06-22 Add Approach B testing checklist + troubleshooting guide
  1445. f0734d93 2026-06-22 Wire Approach B horizontal filters into collection template (hides Boost sidebar, maintains filtering backend)
  1446. 837297e4 2026-06-22 auto-save: 2026-06-22T19:08:09 (1 files) — shopify/push-collection-fixes.sh
  1447. 64c75d26 2026-06-22 Add read-only diagnostic for New Arrivals Boost-scope bug (native ~586 vs Boost 27726)
  1448. cdf6f8d5 2026-06-22 hfilter: always start MutationObserver so late-rendered Boost options trigger build (robust init)
  1449. d3308dca 2026-06-22 hfilter: Color swatch label from title attr; close all grid gap + product padding
  1450. d418373a 2026-06-22 hfilter: derive groups from titles (.boost-sd__filter-option via closest), not the singleton .boost-sd__filter-block
  1451. 5143d142 2026-06-22 Ultra-tight grid: 2px gaps (horizontal + vertical)
  1452. cfc5de8d 2026-06-22 Cards: image only, zero space below (details height: 0)
  1453. 1293d3ea 2026-06-22 Compact spacing: reduce row gaps and padding on collection cards
  1454. 221b7f8e 2026-06-22 Add Approach B deployment guide + testing checklist
  1455. 8751c1fc 2026-06-22 Approach B: Horizontal filter bar — custom UI that proxies to Boost's hidden controls (decoupled, robust)
  1456. e2b84e81 2026-06-22 Restore hover overlay: vendor + pattern name only (no text below images)
  1457. 178a125e 2026-06-22 Fix grid slider: target Boost Commerce grid + hide hover overlays
  1458. 24cda327 2026-06-22 Collection cards: image-only, no text (hover: subtle opacity/scale)
  1459. d302582e 2026-06-22 auto-save: 2026-06-22T18:07:50 (2 files) — v51-collection.png v51-working.png
  1460. 1b6044ab 2026-06-22 Collection cards: image-only with hover overlay (pattern name + vendor)
  1461. f74571ed 2026-06-22 Add push script for collection grid slider + descriptions deployment
  1462. 659024e5 2026-06-22 Restore collection page: show descriptions + add grid density slider (3-12 cols with localStorage)
  1463. 62023bad 2026-06-22 auto-save: 2026-06-22T17:37:42 (3 files) — shopify/scripts/data/bucketB/longtail-bridge-dryrun.json shopify/scripts/pm2-safe-save.sh shopify/sections/koroseal-quote-button.liquid
  1464. 98797c9e 2026-06-22 Correct MOQ step: double-roll (step 2) is the exception not the rule; non-double-roll wallpaper + fabric = by-the-yard (step 1). Fixed Thibaut/Versace/Newwall 2/2->2/1 (598 products)
  1465. 46d518bf 2026-06-22 bucketB-longtail: add shopify_products.mfr_sku BRIDGE to unlock priced catalogs (Kravet 0->1231, GP&J Baker 0->168, Marburg 0->90) that recovered 0 last pass for lack of a join key
  1466. fe5c078b 2026-06-22 5.1: REVERT horizontal filter (broke collection layout - nav/sort rendered vertical); keep PDP pills
  1467. 89778d14 2026-06-22 5.1 PDP: hide theme's styled .select-wrapper shell when size pills are built (remove duplicate control)
  1468. d8930599 2026-06-22 Port MOQ enforcement to Steves Version 5.1 (Archetype): metafield min/step + sample exemption + clamp script; originals backed up
  1469. 8e45fc21 2026-06-22 5.1 dev: horizontal collapsible Boost filter bar (dw-filter-horizontal.{css,js} + boost-overrides neutralize legacy collapse) + theme.liquid includes
  1470. 6b98ef31 2026-06-22 DW PDP restyle: size-select -> pills + uniform CTA pill layout (theme-5.0-duplicate)
  1471. 19ae0d34 2026-06-22 auto-save: 2026-06-22T17:07:33 (6 files) — shopify/scripts/bucketB-longtail-config.json shopify/scripts/bucketB-longtail-roll-variants.js shopify/scripts/data/bucketB/af-run-report.json shopify/scripts/data/bucketB/longtail-dryrun.json shopify/scripts/fleet-reconstruct.cjs
  1472. b67ee2ad 2026-06-22 Bucket B Thibaut: roll-variant recovery script + run report (35 priced rolls staged, 229 Needs-Price tagged, 1 discontinued archived via C-gate)
  1473. 6d040281 2026-06-22 Bucket B: Anna French sample-only roll recovery (feed-first, draft-gated)
  1474. 9cd6d0d0 2026-06-22 Tier B finalized: vendor-level write set (16,038 products) + no-min guard w/ self-test; pure-vendor finalize fixes mural contamination + cwd token bug
  1475. 34155bb1 2026-06-22 5.0 theme: add card hover label (Pattern,Color + Vendor) via global dw-card-hover.js + theme.liquid include; tolerant push verify; revert dead boost-sd-custom merge
  1476. 2dc3a7fe 2026-06-22 auto-save: 2026-06-22T15:37:11 (67 files) — shopify/scripts/moq/tierB/1838-wallcoverings.fix.json shopify/scripts/moq/tierB/anna-french.fix.json shopify/scripts/moq/tierB/architectural-fabrics.fix.json shopify/scripts/moq/tierB/bor-stapeter.fix.json shopify/scripts/moq/tierB/brunschwig-fils.fix.json
  1477. e8b5ae15 2026-06-22 Generalize Bucket-B lander: bucketB-land-all.sh drains ALL staged roll cohorts under one DW_ROLL_CAP (default 400)
  1478. e2ae1b4d 2026-06-22 Add native-Liquid infinite scroll for theme 142250278963 (collection-list, blog, blog-masonry) + gated push script
  1479. c05eddc1 2026-06-22 Bucket B Scalamandre: roll-variant recovery script + run report (22 priced staged, 875 Needs-Price, 0 created/dups, budget cap full)
  1480. 8ccc64ed 2026-06-22 Fix: never tag budget-deferred PRICED rows Needs-Price (false signal + sticks on Bucket-A rolls)
  1481. 09895ac8 2026-06-22 Bucket B Nina Campbell roll-variant recovery script + first --apply run (269 priced staged on shared cap, 282 Needs-Price tagged, 0 dups/flips)
  1482. 319f6017 2026-06-22 auto-save: 2026-06-22T15:07:02 (33 files) — logs/ shopify/scripts/bucketB-nina-roll-variants.js shopify/scripts/bucketB-scalamandre-roll-variants.js shopify/scripts/data/bucketB/nina-dryrun.json shopify/scripts/moq/fill-tierB-fix-files.py
  1483. 2f6e75b3 2026-06-22 Bucket B Graham & Brown: PG roll-price recovery (387 priced) + 14 Needs-Price, rolls staged (budget-safe)
  1484. f267c8cf 2026-06-22 Bucket B Schumacher roll-variant recovery script (feed-first, draft-gated, budget-safe)
  1485. d0f585b8 2026-06-22 Add Coordonné full-page re-scrape runner (WooCommerce Store API, $0) for Bucket-B price recovery into coordonne_catalog (upsert by mfr_sku, full-page: all images/specs/price)
  1486. 7f21a275 2026-06-22 PDP: wire REQUEST SAMPLE (add Sample variant to cart) + SPEC SHEET + variant selection (active/id/price); unify black pills (round variant buttons, equal font+height)
  1487. d9ff0a7c 2026-06-22 Add bucketB-land-175 one-shot lander (DW_ROLL_CAP=175, 00:01) for 175 priced Harlequin+MindTheGap rolls
  1488. 627df739 2026-06-22 auto-save: 2026-06-22T14:36:53 (2 files) — shopify/scripts/data/bucketB/mtg-dryrun.json shopify/scripts/data/bucketB/run-report.json
  1489. 1e04847a 2026-06-22 Bucket B Mind the Gap: roll-variant recovery script (PG-first, exact mfr match, budget-aware, draft-gated)
  1490. 99e77163 2026-06-22 Tier B packaging answered via variant-title scan: per-vendor MOQ determinations + evidence
  1491. 9d3551fd 2026-06-22 Bucket B Harlequin: PG-first roll-variant recovery script (clone of Rebel Walls)
  1492. 248277a7 2026-06-22 Bucket B Coordonné roll-variant recovery script (feed-first, draft-gated, shared-budget-aware)
  1493. d61b657d 2026-06-22 auto-save: 2026-06-22T14:06:44 (2 files) — shopify/collection-layout-override.json shopify/sections/
  1494. ce69f4cc 2026-06-22 Backup: live PDP section pre-MOQ-push (rollback source)
  1495. ac76db9f 2026-06-22 Add push script for grid slider + description deploy
  1496. 09145719 2026-06-22 MOQ theme fix: exempt Sample variants (force qty 1 when Sample selected, server + client side)
  1497. f68f5a77 2026-06-22 Restore grid density slider + add product descriptions to collection cards
  1498. 2edc5f6e 2026-06-22 Add dry-run go-live push script for MOQ section (backup + rollback)
  1499. f9ca2f62 2026-06-22 Harden MOQ Liquid: use append-coercion for legacy global metafields
  1500. 0bc56eb7 2026-06-22 Theme MOQ fix: custom PDP quantity reads order-min metafields (min/step/value + clamp script) — staged section + live/dev backups
  1501. d9616965 2026-06-22 Apply compact layout fix to all theme variants
  1502. 1992de01 2026-06-22 Compact PDP layout: tighter spacing, smaller size buttons, rounded pill action buttons
  1503. f92e94ea 2026-06-22 Add complete build summary for collection filter UI transformation
  1504. 369a5d7e 2026-06-22 Add deployment memo + testing guide for collection filter UI transformation
  1505. 837f4d8c 2026-06-22 Transform collection filters from vertical sidebar to horizontal tabs + extend grid density 3-12 columns
  1506. 86f2a444 2026-06-22 add sweep-all-active.mjs — full-catalog inventory=2026 backfill
  1507. 796b1a30 2026-06-22 Tier B MOQ: read-only UOM packaging scan + per-vendor proposal builder (DTD-A: Full-Roll=no-change, rest HELD) + per-vendor TODO fix files
  1508. 33d192a8 2026-06-22 Add !important to grid CSS to override dw-product.css rules
  1509. 1f9612ea 2026-06-22 Port variant buttons v2 to _cwGRID: inline buttons + qty-below grid layout
  1510. de5ca0b8 2026-06-22 _cwGRID: port variant-buttons UX + inline qty-below layout (buttons inline beside Size in col 2; Quantity row below, not side-by-side)
  1511. 2d1bdd4c 2026-06-22 auto-save: 2026-06-22T13:36:34 (1 files) — shopify/scripts/moq/tierB-packaging-scan.json
  1512. d17a76b4 2026-06-22 Final: Product pages match Thibaut reference design - clean 2-column layout with image left, details right, proper styling
  1513. f56ecd5e 2026-06-22 Tier A1 MOQ fix: DTD-B guard — min=max(existing,2), step=2 always; re-scanned all 84 live (none had min>2)
  1514. e289cbb2 2026-06-22 Redesign product page to match Thibaut reference - 2-column layout with image left, details right, proper variant/qty controls
  1515. de446529 2026-06-22 MOQ audit + fix tooling: store-wide order-minimum audit, Tier-A double-roll fix list, safe apply-moq-fix.py executor (dry-run default)
  1516. 4be7b7c4 2026-06-22 Add bucketA-add-roll-variants.js: build sellable roll variant on 311 sample-only cost-bearing products (PG-first, DW pricing rules)
  1517. 77dea01c 2026-06-22 Add idempotent size/qty layout fixer (strip-all-then-inject-one, fail-closed style-balance + anchor asserts, dev-default/live-gated)
  1518. e3adc9cd 2026-06-22 revert: Reset to clean state before SIZE/QUANTITY layout experiments
  1519. c842dadf 2026-06-22 Add 'Trending Wallcovering Collection 2026' and 'display_variant' tags to all new products
  1520. 20d1ed5b 2026-06-22 security: strip hardcoded secret -> env-first/passwordless. No rotation/deploy.
  1521. dd3905fd 2026-06-22 Designtex UOM fix: recheck + 5-product canary relabel Single Roll->Yard (price untouched); gated bulk script for remaining 280
  1522. 9eb1274c 2026-06-22 auto-save: 2026-06-22T08:04:36 (1 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json
  1523. 50b0666f 2026-06-22 auto-save: 2026-06-22T07:04:22 (2 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1524. 8f49dbc2 2026-06-22 auto-save: 2026-06-22T06:04:10 (2 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1525. 86d6f4fe 2026-06-22 auto-save: 2026-06-22T05:03:57 (2 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1526. 29882659 2026-06-22 auto-save: 2026-06-22T04:03:42 (2 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1527. db4c3d85 2026-06-22 auto-save: 2026-06-22T03:03:29 (3 files) — DW-Programming/ImportNewSkufromURL/data/scraper-audit/scraper-status.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1528. b7cbc511 2026-06-22 auto-save: 2026-06-22T02:03:15 (2 files) — shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1529. 6cf19be1 2026-06-22 auto-save: 2026-06-22T01:03:04 (3 files) — shopify/scripts/cadence/data/cadence-cursor.json shopify/scripts/cadence/data/cadence-plan-am-2026-06-22.json shopify/scripts/cadence/data/upload-restore-2026-06-22.jsonl
  1530. 962629d4 2026-06-21 Add infinite-scroll replicator (copies NewWall lock + newwall-infinite.js wiring between dev themes)
  1531. 7f24f962 2026-06-21 auto-save: 2026-06-21T20:01:45 (1 files) — shopify/scripts/data/sample-remediation/
  1532. c3326474 2026-06-21 Sync 5 _cw* theme.liquid mirrors to v2 variant-button block (matches deployed dev theme) + add mirror-sync script
  1533. a048effe 2026-06-21 Variant buttons v2: Sample button guaranteed on every SKU (JSON fallback for malformed single-variant SKUs) + buy-box placement; drift-safe replace-on-rerun push to dev theme
  1534. 9f4a59ef 2026-06-21 auto-save: 2026-06-21T19:01:26 (1 files) — shopify/scripts/gmc-race-clean
  1535. 8c327f87 2026-06-21 Dev-theme push: pull→surgical-edit→push (drift-safe), target 'NewWall Template [Dev]' by name
  1536. 7cf36ba5 2026-06-21 Add dev-theme push script for variant-button UX (targets dev theme, backup+verify, never live)
  1537. 43eef3c8 2026-06-21 rename inventory sweep to .mjs to silence MODULE_TYPELESS_PACKAGE_JSON warning
  1538. 050da830 2026-06-21 PDP: replace native variant dropdown with side-by-side name-only buttons
  1539. 195e6068 2026-06-21 Harden Boost price hide/restore CSS: grid-scope hide + theme-agnostic PDP restore
  1540. f4947979 2026-06-21 sync-shopify-products: fetch variant price + descriptionHtml + 5-field rollup columns (mirror no longer blind to price/desc/variant-shape)
  1541. f8f483e6 2026-06-21 Osborne width: API sweep populated osborne_catalog 787->14107 width rows; backfill reads fresh Kamatera catalog (gaps already closed by cadence sync, backfill now no-op)
  1542. fcce8e0e 2026-06-21 Zoffany colorway verification (DTD 2026-06-21): authoritative vendor check confirms 'Pale Poisen' + 'Tigers Eye' are correct vendor spellings; no title edits
  1543. 85ce69fb 2026-06-21 activate-gate: push-then-activate width metafield + apply gap tags
  1544. daa2dccb 2026-06-21 Zoffany batch title normalization (2026-06-21): backtick->apostrophe + possessive case on 3 Marsden DWZF SKUs
  1545. 959ae442 2026-06-21 Archive confirmed-duplicate Zoffany DWZF-187385 (-1 dup-handle clone); keep DWZF-187037 live
  1546. 54abca22 2026-06-21 Zoffany title audit (2026-06-21): clean redundant colorway on DWZF-187374; investigate Pompadour Print dup pair
  1547. 2b88a21b 2026-06-21 Remove banned standalone Wallpaper tag from 21 FallingStar Studio products via tagsRemove
  1548. d08bb809 2026-06-21 trending: persist status field into REMOVE/KEEP rows (vp-dw-commerce sign-off revision)
  1549. fc4f4ec2 2026-06-21 trending: read-only audit + gated trim draft for collection 298339205171 (restore to 06-12 baseline; DTD 2/3 Option A)
  1550. a746f7ef 2026-06-21 cadence: wire York (york_catalog) into vendors.js, HELD in DENY_VENDORS (inert)
  1551. 2e01b21e 2026-06-21 cadence: disarm --collections auto-join to Trending (Steve 2026-06-21: keep Trending curated, not a new-arrivals feed)
  1552. e69ef2ba 2026-06-21 validate-before-activate: fix sample-variant false-positive — accept any -sample SKU (or a 'Sample'-titled variant), not an exact {dwSku}-Sample match. The strict match falsely flagged every product whose sample is keyed to mfr_sku (e.g. SWAN-104-sample), inflating residue + wrongly blocking legit products at the activation chokepoint
  1553. 1c17d27c 2026-06-21 active-gate-add-samples: additive sample-variant pass for the missing-sample residue (idempotent, resumable, $4.25 + inv 2026)
  1554. 63dcdeee 2026-06-20 Newwall width re-crawl: public-HTML spec-table scraper (DTD-A), validated on 25/6-vendor sample
  1555. d3a6b2c6 2026-06-20 Relabel 8 Brewster & York drafts -> Malibu Wallpaper + promote DWBR-170663 to ACTIVE
  1556. 09a7f4be 2026-06-20 fix(activation-gate): stem-compare images + non-blocking all-images completeness
  1557. 8664e4ed 2026-06-20 Add stock-2026-guard: self-healing enforcement of the active-products-never-OOS hard rule
  1558. 84e9e2e1 2026-06-20 cadence: backfill+normalize widths to DW canonical 'N Inches' for 6 READY vendors
  1559. 06673993 2026-06-20 Osborne width backfill tool — found catalog overlap exhausted: 896 live gaps have no osborne_catalog source (need re-scrape, not metafield push)
  1560. 87886372 2026-06-20 Live: pushed width+mfr_sku metafields to 3 Osborne actives (W6295-06, NCW4597-04, W7217-01) — patch verified end-to-end on real store, samples+status untouched
  1561. 440ff0c3 2026-06-20 Osborne dry-run of metafield-push patch (0 writes): 2/2 heal; adds width_inches normalization + gate-columns-only refinements
  1562. 080d706c 2026-06-20 DRAFT (no deploy): push-spec-metafields helper + activate-gated patch — push global.width/specs/mfr_sku metafields at activation (fixes width-metafield gap on ~500 actives)
  1563. c48c81f4 2026-06-20 run inventory-set-2026 sweep after each cadence run
  1564. c1e4c9db 2026-06-20 activated-viewer: essentials audit + width/tag cross-check + remediation worklist generator
  1565. cb819a0a 2026-06-20 add inventory-set-2026-newest.js — ensure newest N products' variants are tracked + on_hand=2026
  1566. 3f63fd9f 2026-06-20 Codify extended activation gate (specs+description+all-images) in CLAUDE.md standing rule
  1567. 6396e193 2026-06-20 Activation gate: enforce specs+description+ALL-vendor-images before ACTIVE (single validateBeforeActivate, both chokepoints)
  1568. c14beea5 2026-06-20 Activated viewer: GraphQL feed with essentials audit (priced/image/specs/width) — per-card gap badges, coverage summary bar, gaps-only filter
  1569. afcf25ff 2026-06-20 Add activated-items viewer: live Shopify pull, grouped by activation date with image+SKU, sort+density (shopify/activated-viewer :9846)
  1570. 8d58a8d4 2026-06-20 cadence wrapper: refund unused upload grant on 429/exit-3 + partial slots (DTD-A)
  1571. 912696ae 2026-06-20 activation compliance: all-channels publish + inventory 2026 on importers + cohort remediation
  1572. e29dbe32 2026-06-20 cadence: resume-check.sh — verify paced cadence resumes producing once rolling variant cap clears; posts to CNCP
  1573. 8dcb9177 2026-06-19 cadence: add description to activation gate (all new must have description — Steve 2026-06-19); width AND image AND pattern AND description before ACTIVE
  1574. ffb5c80a 2026-06-19 Add gated Trending-collection backfill apply script (1040 net-new, DTD 3/3 Option C)
  1575. 2e31cf35 2026-06-19 cadence-import: auto-add newly-published products to Trending Wallcovering Collection 2026 (custom collection 298339205171), gated behind --collections
  1576. 6883b74f 2026-06-19 cadence: enable --collections so hourly 18/hr new SKUs auto-join Trending/New-Arrivals collection (Steve in-session approval, 2026-06-19)
  1577. 740e9776 2026-06-19 Cadence: 18 products/slot (36 variants) for 24-slot hourly schedule = 432 products/day
  1578. 320887dc 2026-06-18 source-gate: reject boolean/NULL tokens as MFR SKU in both metafield migrators (mirrors dwjs-mfr-populator gate; stops TRUE-sku re-leak at source)
  1579. 4ad8ba0d 2026-06-18 launchd minimal-PATH fix sweep: export PATH so node/psql/jq resolve under launchd's minimal PATH (Osborne class, preflight linter 2026-06-18) (color-cleaner-nightly)
  1580. a17ab893 2026-06-18 cadence-hourly: export PATH so launchd's minimal PATH can find node (Osborne bug)
  1581. 2471c4c0 2026-06-18 Lift Innovations from cadence DENY_VENDORS (Steve 2026-06-18); import costed rows as drafts
  1582. edced97e 2026-06-18 Wire Innovations into cadence vendors.js (cost=price_trade=list×0.90, sold per YARD, retail=cost/0.65/0.85); config-only — still in cadence DENY_VENDORS until lifted
  1583. 87a9e7d6 2026-06-17 All-day uploader: cadence-import --max + --activate (readiness-gated ACTIVE + inventory 2026) + defensive denylist; hourly runner (budget-aware, kill-switch, resumable) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
  1584. 5964ee51 2026-06-17 Add Artmura real logo (artmura.it) for brands page
  1585. ca6c7072 2026-06-17 Add FallingStar Studio real logo (vector + logotype) for brands page
  1586. ea18bc58 2026-06-17 prw-92xxxx logo crop: 551/551 banners removed live (0 residual, 0 errors)
  1587. 4fa11471 2026-06-17 source-gate: reject boolean/NULL tokens as MFR SKU in dwjs-mfr-populator (stops the TRUE-sku re-leak at source; DTD 3/3->A)
  1588. 3acf4037 2026-06-17 Add prw-92xxxx logo-banner crop tool (deterministic proportional crop + rollback)
  1589. 28c70316 2026-06-16 GMC enrich: Rebel Walls specs gap-fill drafts (234 prod, 2525 metafields, FREE crawl, DTD-A)
  1590. 16b2e388 2026-06-16 gitignore scraper output (vendor-scrapers 4.5G) + large data artifacts post history-purge; document runbook
  1591. 08f38d98 2026-06-16 Surgical scrub of Chesapeake vendor-leak tag from 26 live Shopify products (Versa 'Chesapeake' + Fentucci 'Borders By Chesapeake'); preserve Et Cie 'Chesapeake Bay' colorway
  1592. 144c9df6 2026-06-16 China Seas de-header: COMPLETE — 1810 products pushed (band removed, mfr swatch primary), 3 fail (404 deleted), verified on store
  1593. 35137135 2026-06-16 Add phase-2 bloat-purge plan (Steve-gated, not executed)
  1594. e04a0cc0 2026-06-16 stop tracking regenerable bloat (china-seas crops, vendor images, large data dumps); tighten .gitignore
  1595. 8931c6fb 2026-06-16 snapshot before bloat cleanup
  1596. 4b084049 2026-06-15 China Seas de-header: stage mfr full-res primaries (757) + cropped fallback (1809) + montage 2nd img (886) in china_seas_image_fix; nothing uploaded
  1597. 9ee28838 2026-06-15 gmc-autoadd-block: read-only investigation of June-18 Google auto-add mechanism (no write made; autoPublish already false)
  1598. 45675134 2026-06-14 Roll-Readiness Dossier audit 2026-06-14 (ranked JSON + summary)
  1599. a5be50ad 2026-06-14 April mass-archive restore-PREP plan: per-vendor staged manifest (READ-ONLY triage; 42199 restorable, 10380 ready-active)
  1600. 79ccd409 2026-06-14 brands-page: luxe wordmark SVGs for 6 new high-inventory brands (Phillipe Romano, Hollywood, Malibu, Jeffrey Stevens, Marimekko, Artmura)
  1601. 1e5c69ba 2026-06-14 tag-designer-colors.js — FALLBACK for Boost tiers without metafield-sourced filters: writes prefixed 'color:<DesignerName>' tag per active product from custom.color_1_name (+ --top2). Prefix avoids re-polluting the cleaned color smart-collections. Idempotent/resumable. Tested 3 live, 0 failed. Run: node tag-designer-colors.js --conc 8 (only if Boost can't do metafields).
  1602. a96bd4e7 2026-06-13 sweep-to-100.js — drives search-by-color coverage to 100%: scans ALL active products live from Shopify, locally extracts palette for any still missing color_1_hex (catches products absent from the local mirror), writes canonical metafields. Re-runnable; runs after the DB backfill.
  1603. 0e985f97 2026-06-13 backfill-canonical-colors.js — push canonical color_1/2/3 metafields for all 54,884 active products from DB ai_colors (designer names mapped from hex, handles pct/percentage formats). $0, no image processing. Makes search-by-color comprehensive (was ~9% metafield coverage).
  1604. 29127900 2026-06-13 enricher: also write CANONICAL search-by-color schema (custom.color_{1,2,3}_hex + _percentage + _name) that live Shop-by-Color + SearchByColorWheel actually read — was only writing custom.color_hex/color_details which the UI ignores. Re-pushing all 5,157 with designer names + canonical keys.
  1605. 4c0fb021 2026-06-13 local-palette: expand to ~115-name DESIGNER/decor color table for search-by-color dots — leads with most-used interior neutrals (white/off-white/ivory/ecru/oatmeal/beige/greige/mushroom/taupe/sand families) + full decor spectrum (cognac/celadon/aubergine/peacock/etc). Replaces basic 60-name set; in-flight enricher picked it up immediately.
  1606. 31f12cb9 2026-06-13 local color enrichment for uncovered active products: local-palette.py (PIL median-cut → exact hex + % + curated name, $0 no model) + enrich-active-colors.js (writes custom.color_hex + custom.color_details metafields DIRECTLY via Admin API, resumable via color_enrich_todo). Coverage was 54,884/60,075 active (91.4%); 5,157 uncovered w/ image queued. 3-product live test passed (0 userErrors).
  1607. 49cb6051 2026-06-13 nightly runner: add best-effort George email on sweep completion (POST :9850/api/send to steve@; no creds touched — uses running server's auth; silent no-op if george-gmail down). Desktop notification remains the guaranteed ping.
  1608. 4d3e325e 2026-06-13 nightly runner: durable completion ping — check-complete.js verifies every resolvable collection is at 0-remaining, then runner fires macOS notification + CNCP win + .SWEEP-COMPLETE sentinel + self-disables the nightly job. Works with no Claude session open.
  1609. 6f9d054f 2026-06-12 nightly runner: chain-aware quota probe (proceed if ANY chain model has quota, not just flash) + portable timeout (gtimeout/timeout/none — macOS has no /usr/bin/timeout)
  1610. 3fd98379 2026-06-12 color cleaner v2: model-fallback chain (flash-lite→flash→pro) — each model has a SEPARATE per-day free quota, so 429-on-daily-cap fails over to next model = ~3x free throughput on one key. Verified red cleaned 8/10 via failover. + nightly-color-clean.sh runner (singleton lock, quota probe-gate, 2h cap, resumable)
  1611. df60b0ab 2026-06-12 color cleaner v2: (1) tri-state safety — removal now requires explicit COLOR=NO; ambiguous/empty verdicts KEEP+retry, never remove (guards the false-remove class of bug); (2) bake exact collection handles into COLOR_COLLECTIONS (incl pink, was null) + resolver prefers cfg.handle — robust on any store, handles are inconsistent (purple/black/coral vs blue-wallpaper-collection)
  1612. 88eb7001 2026-06-12 make cleaner importable (require.main guard + module.exports) + add _test_resolver.js — proves 12/13 colors resolve on sandbox (10 hardcoded, 2 via handle: red+pink); cream unresolved by design
  1613. df20fe8c 2026-06-12 add color-clean-report.js — per-color rollup (processed/removed/banners), top banner vendors to re-crawl, most-removed tags, est Gemini cost, rollback hint
  1614. 5672b1c4 2026-06-12 color cleaner v2: store-agnostic collection resolver — verify hardcoded prod id, else resolve by handle (color/-wallpaper/-wallcovering/-wallcoverings). Fixes sandbox red+pink (prod-only ids 404'd); cream left as deliberate skip (only a combined Beige&Cream collection exists, wrong semantics)
  1615. 80b183f9 2026-06-12 color cleaner v2: disable gemini-2.5-flash thinking budget (thinkingBudget:0) — 40-token budget was eaten by reasoning → empty text → false-removes; canary now keeps 32/50 blue correctly
  1616. 631cb8bf 2026-06-12 color cleaner v2: use gemini-2.5-flash (2.0-flash retired 2026-06-01), GEMINI_MODEL override
  1617. b4a3d85e 2026-06-12 Color collection cleaner v2: Gemini blueness gate + reversible ledger + banner re-crawl queue + resumable
  1618. 67801868 2026-06-12 copygen: env-configurable Ollama host/model/prompt-prefix (OLLAMA_HOST/COPYGEN_MODEL/COPYGEN_PROMPT_PREFIX) — relocate heavy LLM load to a box with headroom; defaults unchanged
  1619. 139f7c9b 2026-06-12 scan-active-dups: filter to exact PREFIX- bases (loose Shopify sku: search made DWK absorb DWKK/DWKN)
  1620. 2d09d654 2026-06-12 1838 Wallcoverings: set all 464 live products to DRAFT (Steve directive); add Artmura title-fix tool (no-op — all 161 already correct)
  1621. 00a91125 2026-06-12 Tier 3 cost-sourcing matrix + complete campaign roadmap: big external blocks are WRONG_SAMPLE (Tier 4) not blocked-on-cost; ~579-976 external restorable via cost-maps/GDrive
  1622. 4e432766 2026-06-12 Add dedup-active.js: generalize the Kravet dedup tool to any DW prefix (DRY default, skips ambiguous, reversible)
  1623. ea94af32 2026-06-12 Tier 2 audit result: 521 Kravet-family fabrics recoverable via kravet_catalog dw_sell_price (prices validated); rest genuinely uncosted
  1624. 69ccaeba 2026-06-12 Add remaining-restore-campaign plan (tiers 1-4: ready/verify/blocked/sample)
  1625. 9979cea0 2026-06-12 worker-guard: harden tests — batched productCreate (input0/input1), inventoryItem.sku, gid-form id, -Roll stripping (13/13 pass)
  1626. 1f1b3a64 2026-06-12 cadence: vendor colOverrides (Newwall length→roll_length, repeat_v→pattern_repeat) — fixes Newwall SKU select; DRY-RUN validates cost=trade*0.80 → correct retail
  1627. f486e785 2026-06-12 Add scan-active-dups.js: reusable read-only both-active duplicate scanner (generalizes the Kravet-55 detector across vendor prefixes)
  1628. 3a8a8504 2026-06-12 worker-guard: verify backfill table correct (launch-pad gate reads unified vendor_catalog); record prod deploy
  1629. 7c8eaf1b 2026-06-12 vendors: wire Newwall (6 confirmed lines, cost=trade_net*0.80, retail=cost/0.65/0.85); other Newwall brands stay uncosted
  1630. 6cc85e55 2026-06-12 worker-guard: pre-push dedup guard module + 9-test harness + gated deploy doc for shopify-queue-worker (built/tested, NOT deployed)
  1631. 79f2fa59 2026-06-12 cadence-import: pre-push dedup guard — query Shopify by base-SKU before create; if a live (non-archived) product exists, backfill link + skip create instead of duplicating
  1632. 6f53fddf 2026-06-12 Add dedup-kravet-active.js: dry-run-default tool to archive 55 broken Kravet duplicate copies (keep priced 2024 twin)
  1633. 408f0bb9 2026-06-12 Archive all 154 live Nicolette Mayer Wallpaper products (Steve: do not show on Shopify)
  1634. f3aead0e 2026-06-12 vendors: wire Brewster & York (costExpr=cost) — price list already loaded, flips coverage 0%->99.8% (+8697 SKUs)
  1635. a1d4c12e 2026-06-12 schumacher importer: dedup gallery images by URL at ingest (API repeats largeUrl across size-variant entries -> was producing 2-3x duplicate PDP galleries)
  1636. 4a502d3c 2026-06-12 cadence: support MAP-priced vendors (sellExpr) — Kravet family sells at MAP, not cost/0.65/0.85
  1637. 0d278a72 2026-06-12 DWAE: price 166 from Schumacher net-cost API + activate + tag Trending Wallpaper 2026
  1638. 76b49046 2026-06-11 Launch latest 300: activate + tag 'Trending Wallpaper 2026' the 226 that pass a 2-variant quality gate
  1639. 4b00794e 2026-06-11 Monitor uses 2026 authoritative pricing (kravet_authoritative_pricing.new_map), not stale 2022 snapshot
  1640. 7c4e1121 2026-06-11 cost-handoff: README documenting the DTD-B decoupled architecture (Mac2 fetch → validated prod ingest)
  1641. c90065ca 2026-06-11 Part 2 twin: Schumacher dw_sku→shopify_product_id LINK handoff (prevents Full Monte dups)
  1642. 0de24336 2026-06-11 Morning summary of overnight Kravet price audit (CNCP + notification)
  1643. e7a0a4b3 2026-06-11 Read-only overnight Kravet price monitor: diff live vs authoritative MAP, classify BELOW_MAP/CORRUPTION_SUSPECT (no live writes)
  1644. 828450a0 2026-06-11 schu-cost-ingest: add --dry (exercise UPDATEs in a txn then ROLLBACK; no write, file stays staged)
  1645. 06a4f86b 2026-06-11 Part 2: Schumacher cost handoff (DTD-B decoupled) — Mac2 export+push + prod ingester draft
  1646. 7a10f8ec 2026-06-11 Durable one-shot launchd test-add (5:02pm, survives session close; self-removes)
  1647. c5d370e1 2026-06-11 Durable launchd morning report for Kravet roll-variant runner (CNCP win + macOS notification, no Claude needed)
  1648. 4e4cff4e 2026-06-11 Add Kravet roll-variant adder: idempotent, MAP-priced, audited (Shopify daily variant cap paces it)
  1649. 5ba2c387 2026-06-11 Kravet master price loader: WHLS cost + MAP from GDrive master into kravet_master_price
  1650. 191ba013 2026-06-11 schu-reimport: heartbeat to CNCP Looping-LIVE each tick + mark done on completion
  1651. 1020f066 2026-06-11 schu-reimport: macOS notification + CNCP win on completion (session-independent ping)
  1652. 8ed26702 2026-06-11 Handle Shopify DAILY variant-creation cap (the real blocker)
  1653. b6ac1130 2026-06-11 schu-reimport: launchd-managed, restartable, loop-until-clear + self-expire
  1654. d05c6b58 2026-06-11 Romo 339 cost backfill: pulled current trade prices from theromogroup.com (MAX roll, 44/45 reconcile), loaded 844 colorway rows, regenerated push worklist (332)
  1655. fd28444b 2026-06-11 Fix importer throttle bug (require real pid for success) + batched Schumacher re-import
  1656. 70d046b0 2026-06-11 Add by-sku reconcile; confirmed missing Schumacher SKUs genuinely absent (import throttle no-op'd ~2558, not dup risk)
  1657. a5291a3f 2026-06-11 Add daily vendor sweep (com.steve.cadence-daily-sweep) — Kravet now included
  1658. 1e8a2ff7 2026-06-11 fixer: add --max-price hold (park outliers for manual review); shipped 195 live fixes
  1659. e5cc2b10 2026-06-11 schu-activate: normalize mixed pid format (bare-id vs full-gid) + order by numeric pid
  1660. a49bb8e4 2026-06-11 Add schu-activate: gated DRAFT→ACTIVE for Schumacher (price+image+title gate, --limit test batch)
  1661. ac43bae8 2026-06-11 Fix accented-title casing (Unicode \p{L}) + re-title 46 Schumacher products
  1662. 7cc6bdfc 2026-06-11 Add fix-broken-rolls.js — guardrailed live-price fixer (dry-run default)
  1663. c3d80f3d 2026-06-11 Sweep: fix flushInv fallback (set-per-item before activate) — repaired 1275 already-active stragglers to 2026
  1664. 0548262d 2026-06-11 Add schu-reconcile-pids: backfill shopify_product_id from Shopify (bulk import write-back missed ~2558)
  1665. b893c46c 2026-06-11 Load Graham & Brown cost from GDrive list (629 SKUs) + wire costExpr
  1666. bd09a7e8 2026-06-11 kravet-feed-cadence: SFTP get to absolute /tmp path (drop flaky lcd timing dependency)
  1667. c2d267b7 2026-06-11 Schumacher loop: auto-archive discontinued on Shopify (Steve: no need to gate)
  1668. d5d9d6f5 2026-06-11 Add Schumacher to cadence vendors (Designer Net, cost=priceUsd) for DRAFT import
  1669. d38a5433 2026-06-11 Wire Kravet feed into daily cadence (com.steve.kravet-feed)
  1670. 2d60072d 2026-06-11 vendors.js: add Kravet (costExpr cost_price) — cost loaded from GDrive wholesale list
  1671. 4c223491 2026-06-11 Add gdrive-price-loader.py — load vendor cost from authoritative GDrive price lists
  1672. ef219ca4 2026-06-11 Kravet-family feed importer (authorized daily SFTP, no scraping)
  1673. 3f4ec431 2026-06-11 Store-wide sweep: set every active variant inventory=2026 + publish to all 13 sales channels (idempotent, resumable)
  1674. 8eb73344 2026-06-11 romo roll pricing: RFC-4180 CSV parser (quoted fields w/ commas) so 'One, Two, Three' pattern prices correctly
  1675. 0ed8df7d 2026-06-11 Repurpose dw-pricing-resume loop → Schumacher API cadence (browser-free, 12h)
  1676. 47bef875 2026-06-11 price-coverage: add Shopify roll-price outcome layer (correct vs broken @ $4.25)
  1677. 430f4bcb 2026-06-11 Stage launchd template for optional hands-off Romo push resume
  1678. fe9e383a 2026-06-11 Romo push: read durable worklist CSV; add run wrapper; CNCP-dated resume task for 2026-06-12
  1679. 75964c0c 2026-06-11 Romo per-unit pricing: repair 57 corrupt total_price_per_roll, harden cost expr (GREATEST guard), add roll-variant push script
  1680. bccac2fd 2026-06-11 cadence-import: recompute price-coverage at end of run (feeds CNCP panel)
  1681. 46463911 2026-06-11 Add compute-price-coverage.js — truthful vendor cost-coverage into dw_unified
  1682. 2ec9fcae 2026-06-11 Recrawl: mark vendor-404 SKUs as discontinued (excluded) + Shopify archive step
  1683. a51f9ed8 2026-06-11 Scrub plaintext Schumacher password from browser-login scripts → gitignored .schu-creds
  1684. 51a55b8a 2026-06-11 Schumacher recrawl cracked: authenticated product API (browser-free)
  1685. a51fa0c8 2026-06-11 Add launchd auto-resume agent (com.steve.dw-pricing-resume): RunAtLoad + 30m, Claude-session-independent
  1686. 6a69015d 2026-06-11 Schumacher cost via Browserbase scraper (residential IP, real login form); login-submit still needs fix (see browserbase/SCHUMACHER-NOTES.md)
  1687. 7818ccb4 2026-06-11 Quarantine 205 mispriced (needs-reprice tag); Romo 262 + Thibaut 11 DRAFT imported; schumacher scraper path-fix + login probe
  1688. 950348b5 2026-06-11 cadence: Romo cost basis = total_price_per_roll (DTD-B, incl 10% tariff); Designtex cost=price_retail (Steve); 10 Thibaut DRAFT imported under gate
  1689. 6bec4bde 2026-06-11 Add gated daily cadence importer (dry-run first)
  1690. 0f0ded51 2026-06-11 Add fix-24h-new-skus.js: title-case + cost/price + price_updated_at for last-72h new SKUs
  1691. 426995c5 2026-06-10 PJ scraper pass 2: fix detail--row regex (ng-if attrs hid Fire Rating/CFA/Leed), suffix-SKU base-item fallback, cutoff bump
  1692. 90279f43 2026-06-10 china_seas scraper: capture all_images=[imageUrl] (single-image source) to clear completeness gate
  1693. 6b33ebc1 2026-06-10 PJ vendor_catalog spec scraper: tear-sheet specs for all phillip_jeffries rows (logo-placeholder publish rule, no images)
  1694. 06ea863b 2026-06-09 feat(dedar): feed-first collection extraction returns real products
  1695. 160fad08 2026-06-09 feat(farrow-ball): feed-first collection extraction returns real products
  1696. 6e401a7d 2026-06-09 feat(designers-guild): feed-first collection extraction returns real products
  1697. 57b79b42 2026-06-09 feat(schumacher): feed-first collection extraction returns real products
  1698. 9b0f6949 2026-06-01 rotation pre-stage: DW-Agents DATABASE_URL env-first so rotated dw_admin pw is picked up on restart
  1699. 5c41f8cc 2026-06-01 Grasscloth sites: unique clean image heroes (fleet hero dedup 2026-06-01)
  1700. a45a0194 2026-06-01 track DW-Agents/scripts/reverse-sync.js (orphan relink dry-run, env-based DB url)
  1701. 20cf51fa 2026-05-30 fix: remove backup source leak from public dir, fix duplicate-const syntax error, harden .gitignore
  1702. 59c3ba19 2026-05-30 security: strip hardcoded dw_admin pw across 27 files (parent + nested) — env-first
  1703. 11a839f5 2026-05-30 shopify(parent): sync gitignore with nested — cover GCP service-account JSONs (2026-05-30 leak)
  1704. 689f8264 2026-05-30 gitignore GCP service-account key files (post sheets-updater leak purge)
  1705. 521e8edc 2026-05-30 snapshot before sheets-updater key purge
  1706. 86f9d056 2026-05-30 gitignore: untrack 2 .env.local files (leaked Shopify + Anthropic tokens)
  1707. e9a4650a 2026-05-30 security: pickup DW-Agents strip of hardcoded DW2025secure DSN (no rotation/deploy)
  1708. 19c8a377 2026-05-30 security: strip hardcoded secret -> env-first/passwordless. No rotation/deploy.
  1709. a20c8005 2026-05-30 security: strip hardcoded dw_admin DSN password -> env-first (.cjs straggler). No rotation/deploy.
  1710. f1421f70 2026-05-30 fix: thibaut-spec-scraper DB_CMD backtick (env interpolation)
  1711. d287f9d6 2026-05-30 security: strip hardcoded PGPASSWORD/pm2/shell-string secrets -> env-ref. No rotation/deploy.
  1712. b3de17d1 2026-05-30 security: strip hardcoded dw_admin DSN password -> env-first/passwordless. No rotation/deploy.
  1713. f19be762 2026-05-30 security: strip hardcoded dw_admin DSN password -> env-first across DW. No rotation/deploy.
  1714. 3b1cfa98 2026-05-29 Update Claude model IDs to claude-opus-4-8 (Opus 4.8 upgrade)
  1715. 6114227d 2026-05-29 Update Claude model IDs to claude-opus-4-8 (Opus 4.8 upgrade)
  1716. 1b25aa75 2026-05-27 grassclothwallpaper: add density slider beside sort + corner-nav
  1717. ec49ab47 2026-05-26 Cole & Son: add mandatory $4.25 Sample variant to 26 products (skip 3 memo=NO)
  1718. b8cb44d6 2026-05-26 Cole & Son: backfill spec metafields (874 products, 11362 mf) + fix audit metafield truncation bug
  1719. ff2dcc58 2026-05-19 chore(git-surgery): draft surgery plan for slimming .git (prep only, no rewrite)
  1720. a52d295a 2026-05-19 snapshot — gitify backup 2026-05-19
  1721. 63d21512 2026-05-18 Phase 3: Shopify-CDN image-URL refresh script for hollywood/ralph_lauren stale-URL runbook
  1722. f3c52e53 2026-05-18 scrub last plaintext basic-auth password from progress doc + .env.example
  1723. 778ca02e 2026-05-18 Refactor hardcoded DWSecure2024! basic-auth password to env vars
  1724. ad11ae9c 2026-05-18 Refactor hardcoded Shopify Admin token to process.env.SHOPIFY_ADMIN_TOKEN
  1725. aec78cfa 2026-05-18 scrub hardcoded secrets from docs (Shopify token, Brewster pw, basic-auth pw); drop pre-scrub .bak files
  1726. db50cd92 2026-05-18 ignore generated assets, backups, debug dumps (pre-surgery)
  1727. 7d0a55d2 2026-05-18 dw-exclusive-page: 'Private Label Exclusives' -> 'Exclusives'
  1728. f938e694 2026-05-13 snapshot: update LosAngelesFabrics submodule pointer
  1729. 872619c1 2026-05-13 snapshot: backup uncommitted work (4 files)
  1730. 9fea93cb 2026-05-13 snapshot: 334 file(s) changed, +48 new, ~286 modified
  1731. 4a4a1040 2026-05-11 wire archive-guard into 5 cron-driven Shopify activators
  1732. 3fb91caf 2026-05-08 novasuede: collapse all nav tabs into hamburger on right at every width (Novasuede brand name kept in banner)
  1733. 91d7a388 2026-05-08 novasuede: REVERT theme-toggle change (broke layout) — restore 74822dc9 state
  1734. 658722c4 2026-05-08 novasuede: add dark/light theme toggle in header upper-right (anti-flash + localStorage + CSS-var inversion)
  1735. 1ef3bc10 2026-05-08 fleet UX standardization: novasuede-style hamburger nav across 7 sister sites
  1736. 74822dc9 2026-05-07 novasuede chip: per-color data-dw-sample on Sample button + chip — central hub widget now color-aware on click delegation (parallel path to inline modal)
  1737. 38d4c1d6 2026-05-07 novasuede: unified header+modal across 7 pages, fix drapery + sample-color prefill, info@novasuede.com everywhere, central sample-request widget hooked to auth.agentabrams.com
  1738. 68734aaa 2026-05-07 tighten .gitignore: add missing standing-rule patterns (tmp/ *.log .DS_Store dist/ build/ .next/)
  1739. 127c43a9 2026-05-06 initial snapshot — gitify all builds (CLAUDE.md rule 2026-05-06)

Authors

Agents used

  • vp-dw-commerce2
  • secrets-manager1

Skills used

  • /data1351
  • /scripts1318
  • /cadence998
  • /boost-filter-consolidation-2026-06-25534
  • /china-seas-refresh501
  • /cadence-cursor244
  • /pr-contact-for-price225
  • /scraper-audit124
  • /reconcile91
  • /brewster-import-queue90
  • /tk13554
  • /audits42
  • /scraper-status33
  • /room-image-push30
  • /ledger29
  • /yw-results27
  • /upload-restore-2026-07-0226
  • /upload-restore-2026-06-3025
  • /fullrun-vision24
  • /upload-restore-2026-07-0924
  • /annafrench-land-23
  • /enrich-marketed-mismatch23
  • /upload-restore-2026-06-2923
  • /coordonne-land-22
  • /upload-restore-2026-07-1522
  • /upload-restore-2026-07-1122
  • /upload-restore-2026-07-1221
  • /upload-restore-2026-07-2420
  • /upload-restore-2026-07-2320
  • /doubleroll-lengths-thibaut-before19

Creative ideas + design notes

Commits with substantial prose (≥120 chars) — the rationale behind each move.

f8969b83 · 2026-07-28 · TK-10002: forward-only variant-SKU collision guard (skuTakenOnActiveProduct)
Adds a pre-create check that rejects a mint whose dw_sku is already carried by a
NON-ARCHIVED product, closing the gap where a drifted registry lets registerSku()
re-mint a live SKU. Wired into the new-product-import template between register and
create. Mirrored into both sku-registry libs. NOT a DB constraint (461 legacy
violations remain).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5d19295d · 2026-07-27 · TK-135: motif classifier (bare)
Bare-value MOTIF descriptor classifier for DW (17-value existing vocab).
Pass 1 deterministic title keyword match; Pass 2 local qwen2.5vl:7b vision
on the title-unmatched remainder. $0 (local), DRY-RUN — motif-proposed.tsv
(<gid>\t<BareMotif>) only, NO Shopify/PG writes. Full-80k driver built but
gated (MOTIF_RUN_CONFIRM). 150-sample: 21.3% title / 78.7% vision, 0 fallbacks.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
e061f1ea · 2026-07-27 · TK-135: style classifier (bare)
Deterministic title/vendor/product_type keyword mapping + optional local
qwen2.5 pass for the ambiguous remainder. Outputs BARE style values (no
label prefix) per Steve's normalization rule. DRY-RUN only: no Shopify/PG
writes. 48% deterministic coverage on 78,242 active products missing a
style value; ~95% projected with the gated local-LLM phase.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
7ff04f87 · 2026-07-27 · TK-00134: fix documented cleanWallpaper snippet in CLAUDE.md to brand-aware
The canonical helper that gets copy-pasted into every updater was still the blanket
version in the docs — the source of the fleet-wide brand-name corruption. Replaced
with the brand-aware + derived-word-safe version (matches the 13 code copies), plus a
warning explaining the 17-brand hazard. Verified the doc snippet is copy-paste-correct.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
8661e2fa · 2026-07-27 · TK-00134: patch last 3 blanket cleanWallpaper() copies to brand-aware
The banned-word 'Wallpaper'->'Wallcovering' helper was duplicated across ~13
import scripts; 10 were already brand-aware (TK-00134) but 3 still ran the blanket
regex that corrupts the 17 brand names ending in 'Wallpaper' (Ralph Lauren, Missoni,
Grasscloth, etc). Patched dwvs-import-catalog-only, wolf-gordon-shopify-push, and
anna-french-scraper (preserving its Thibaut-scrub) to the proven brand-aware +
derived-word-safe (wallpapered/-ing) version. Verified 4/4 functional each. Stops
the class at every executable onboard path. CLAUDE.md's documented snippet still
shows the blanket version — flagged for Steve, not auto-edited.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2da85281 · 2026-07-26 · TK-31: pr-quote-only-tag fixes wrong tag (quotes->contact-for-price) + Kravet MAP exclusion
The old `quotes` tag is an internal import-gate bypass flag that renders
NOTHING customer-facing; the live theme (shopify/sections/contact-for-price.liquid)
gates the Request-a-Quote UX on `contact-for-price`. Now applies contact-for-price
(UX) + Needs-Price (internal companion, matching the 2,034-product luxury-draft
co-occurrence pattern), append-only.

Adds a two-layer Kravet-umbrella exclusion so the 15 Kravet-line PR SKUs (which
price at MAP = WHLS x 1.5, not quote-only) never get tagged: (1) SQL filter on
Kravet-family brand tokens in tags/metafields/supplier_name, (2) explicit
KRAVET_EXCLUDE_SKUS list + env override for the exact 15 (TODO to populate).

Dry-runnable, no Shopify writes; --execute stays GATED.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
10141546 · 2026-07-22 · cadence: ARM Maharam onto the shared live daily rotation (Steve go, DTD 5/5 A)
Drop Maharam's private MAHARAM_DRIP gate → it rides the shared sampleonly drip
(QUADRILLE_SAMPLEONLY_DRIP, set by run-cadence-hourly) and drains LIVE in the
daily vendor rotation, metered by the rotation cap (not a blast). Remove the now-
orphaned dedicated drip script. Verified READY 1,429 under the shared drip env;
quote-only $4.25 sample, fabrics held via dedup_skip, auto-joins maharam-wallcoverings.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5d76defb · 2026-07-22 · cadence: onboard Maharam as quote-only wallcovering vendor (own MAHARAM_DRIP gate)
- vendors.js: add 'Maharam' sampleOnly entry (mahDrip:true, own default-OFF drip)
- cadence-import.js: scope hardcoded 'Quadrille House' tag to the QH staging table
  only (also fixes latent Pierre Frey mistag); add MAH_DRIP gate mirroring PJ_DRIP
- 1,429 activation-ready wallcoverings import-eligible; 164 fabric + 8 no-desc held
  via dedup_skip (roll-on-fabric rule). Dry-run verified; inert for the shared drip.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
acc6224a · 2026-07-15 · DWKK wrong-join defect: stop trusting corrupt mirror mfr_sku for Kravet pricing
reprice-restore-kravet.js (the 2026-06-11 one-shot that priced 425 live DWKK
products at the WRONG SKU's MAP by joining the April sheet on the corrupt
shopify_products.mfr_sku column) gets a WARNING banner + runtime guard that
verifies metafield global.Item before any write. kravet-price-monitor.js and
add-kravet-roll-variants.js (recurring) now resolve the mfr SKU as
COALESCE(global.Item metafield, mirror column). Trace:
~/Projects/kravet-wrongjoin-reprice-2026-07/ROOT-CAUSE.md

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
e107ff3e · 2026-07-13 · fix: launchd bare-node PATH bug in two DW scheduled jobs
- push-drafts-drip.sh: pin Homebrew PATH (node+psql were 'command not found'
  but swallowed by out=$(...), so it exited 0 while creating ZERO drafts).
- anna-french drain.sh: pin PATH + define $SDIR (was undefined; set -u aborted
  the script before node, so it never logged under launchd).
a43dc36e · 2026-07-10 · PR real-textile cadence DRIP (leak-safe): push --limit + drip runner + launchd draft
Steve's choice: drip via the leak-safe push (base64 LOCAL images, no wallquest URL) instead
of the URL-based cadence-import (which would leak wallquest.com image src). push-drafts-book.cjs
gains LIMIT (drip N/slot); push-drafts-drip.sh creates <=SLOT_LIMIT/run across both books
(LA then Daisy v2), settlement-clean, idempotent, grep-token. launchd plist drafted to
pending-approval (2x/day, 20/slot ~= 180 over ~5 days) — Steve installs (autonomous live writer).
d4b939ce · 2026-07-09 · WallQuest onboard: gated Phillipe Romano draft-push (per-yard, settlement-filtered)
push-drafts-book.cjs creates DRAFT products (status:draft): beach-city title, per-yard
pricing (min/step 8, 8-yd bolt metafields), Sample+Per-Yard variants, leak-safe LOCAL
swatch+patch-quilt-room images, mfr/private-label/spec metafields. SKIPS settlement-flagged
rows (Daisy 7 florals stay DRAFT). Idempotent (shopify_product_id), --dry-run validated:
LA 135 + Daisy 45 = 180 clean, 0 leaks. GATED live write — Steve runs via !.
8de32f95 · 2026-07-09 · WallQuest onboard: swatch DL + local qwen2.5vl enrich + rooms + settlement gate
- dl-swatches.cjs: download swatches, backfill local_image_path (187, 0 bad)
- enrich-book.py: local qwen2.5vl vision enrich ($0), luxury desc + colors + hex + styles
- 187 patch-quilt rooms generated ($0); room_setting_images backfilled
- Daisy v2 settlement gate: 7 florals/leaves flagged REVIEW (stay DRAFT), 45 clear
- image dirs gitignored
3483fed8 · 2026-07-09 · WallQuest real-textile onboard pipeline: normalize + load + beach-city naming
Parameterized downstream for Lillian August x2 + Daisy Bennett Vol 2 (187 priced SKUs):
- normalize-book.cjs: per-yard textile pricing (bolt retail/8, min/step 8, Priced Per Yard)
- load-book.cjs: per-book dw_unified staging table (lillian_august_catalog, daisy_bennett_v2_catalog)
- assign-names.cjs: beach-city {City}{Material} naming (Phillipe Romano), hides ALL vendor
  names (Lillian August/Daisy/WallQuest), leak-checked (0 leaks across 187)

187 scraped->normalized->per-yard->DB->named-vendor-safe. Remaining: local enrich, settlement
gate (Daisy florals), patch-quilt rooms, stage->gated push.
7d1e0a32 · 2026-07-09 · chore: codemod 46 DW scripts node-fetch require → globalThis.fetch (Node 26)
DW is on node-fetch 3.3.2 (ESM); bare require('node-fetch') returns a namespace
object on Node 26 → 'fetch is not a function' if ever run. These are manual one-off
scripts (fail-loud, not scheduled) but swapped to built-in global fetch for tidiness
so none can surprise mid-run. Left destructured/.default bindings + thesetdecorator
(node-fetch v2, CJS-safe) untouched. All 46 syntax-checked.

Fixes a prior misfired codemod that blanked the fetch line (auto-committed in 1566feb7).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
564caf21 · 2026-07-09 · WallQuest scraper: harden login vs NEW Cloudflare challenge (+reCAPTCHA)
WallQuest escalated to Cloudflare 'Just a moment' on /login (curl now 403) ON TOP
of the reCAPTCHA. Both prior paths broke (Browserbase-Enter clone: no captcha solve;
grasscloth template: page.$ navigation race while Cloudflare redirected).
Fix in scrape-book-hardened.cjs login(): waitForLoadState + 16s Cloudflare-clear wait
+ waitForSelector('#Email') guard + try-wrapped page.$ so a mid-nav check can't kill
the session. Browserbase solveCaptchas:true + proxies handles Cloudflare AND reCAPTCHA.
Verified: login attempt 1 priceVisible=true, 3/3 priced+imaged (Sisal/Cork, real textile).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
7fa268bf · 2026-07-09 · Refine PDP color-palette: fix invisible density slider, dedup near-duplicate dots, premium slider + color-index grid chrome
- CRITICAL live bug fix: wireDensity() multi-color path never cleared the markup's
  'hidden' attr, so the density slider was invisible on every >1-color product.
  Now unhides in the multi-color branch.
- Distribution: ΔE76 (CIELAB) adjacent-dedup of interpolated dots (JND ~2.3) — a
  4-grey palette at slider 64 now renders 22 meaningful swatches, not 64 near-dupes.
  Base (real) colors are never deduped.
- Slider visuals: caption-under-title layout, hairline track, smaller ink thumb w/
  hairline ring, letter-spaced Lora label, focus-visible rings (keyboard a11y).
- Swatches: softer hairline base ring (was heavy dark hoop), material inner-shadow,
  larger radius, 3px gaps.
- Color-index grid: hairline-ruled header, Lora title at palette scale, soft reveal
  animation, even gutters, hairline media, Esc-to-close + focus mgmt.
- All prior behavior preserved: localStorage persistence, 80ms debounce, single-color
  disabled+hint, 10% tolerance, CLIP strip, family fallback href.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5718e91a · 2026-07-09 · fix(sync): use global fetch in sync-shopify-products — daily mirror sync dead since 07-07
node-fetch v3 is ESM-only; require() on Node 26 returned a namespace object, not a
function → 'fetch is not a function' crashed the 6am launchd sync every day from
2026-07-07, freezing the local dw_unified.shopify_products mirror at 07-06. Internal
viewers (new.designerwallcoverings.com etc.) read the mirror, so they showed pre-fix
'Wallcoverings' titles while LIVE Shopify was already correct. Node 18+ has global fetch.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
f72482f6 · 2026-07-09 · cadence: QH real-width classifier — 54in→Fabric, 27in→Wallcovering (Steve 2026-07-09)
Extends the QH width guard to both anchors: real width 54"→Fabric (textile
bolt), 27"→Wallcovering (classic roll width). effType overrides cfg.productType
in buildSampleOnlyInput, scoped to quadrille_house_catalog, inch-guarded
(54/27 not 54cm, 27 not inside 127). Live audit: QH widths run 45-58" (0 at 27",
all 54" already Fabric) → 0 live flips; this is the go-forward guard.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
e3b55716 · 2026-07-09 · cadence: Quadrille-house 54-inch rule → Fabric (Steve 2026-07-09)
Any Quadrille-house sample-only product 54" wide is FABRIC (54"=textile bolt
width; wallcovering rolls are narrower). buildSampleOnlyInput now computes an
effType that overrides cfg.productType→Fabric when row.width is 54 INCHES,
scoped to the quadrille_house_catalog table (never PJ/Pierre Frey) and guarded
against 54cm. Drives title word, product_type tag, and productType. Live audit
found 0 QH products currently 54"+wallcovering — catalog already compliant; this
is the go-forward guard so a 54" Grasscloth row can't be born as wallcovering.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3baf80b0 · 2026-07-09 · pending-approval: color-dot index-of-many 10% tolerance memo + push script (2026-07-09)
Follow-up to the shipped deeplink (8a467c31). Clicking a color dot now brings up
an in-page catalog-wide grid of products within 10% CIELAB tolerance of the hex.
Two gated ship steps: (1) deploy /apps/color-index endpoint on dwphoto + generate
index, (2) push the theme snippet. Verified: forest #3C5B49 -> 36-card grid, all
deltaE<=6.3, 97 in tolerance.
78f9bfbe · 2026-07-09 · cadence: sample-only importer titles/describes Fabric lines as Fabric, not Wallcoverings
Root cause of the recurring Alan Campbell wallcovering->fabric re-sweep (4th in 8 days):
buildSampleOnlyInput() hardcoded 'Wallcoverings' in the title (L465) and 'designer
wallcovering' in the desc fallback (L483), ignoring cfg.productType. Now type-aware
(mirrors the roll path) + scrubs wallcovering->fabric prose out of AI/vendor_desc for
Fabric lines. Fixes all Quadrille-house sample-only fabric lines at birth.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
bbf71b11 · 2026-07-09 · shop-by-color: client-side href fix for 6 dead color-tab handles
The /pages/shop-by-color page body links Blue/Yellow/Orange/Red/Grey/White to
404 collection handles (needs write_content scope to edit the page body, which
the admin token lacks). Path-scoped shim in footer.liquid rewrites the 6 dead
hrefs to valid handles on that page only; inert elsewhere. Remove once the page
body is corrected via content scope. Verified live: 16/16 tabs resolve, 0 dead.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
fd035f27 · 2026-07-08 · GMC re-gate: exclude Google & YouTube publication from all product-publish chokepoints (Steve policy 2026-07-08)
Stops the $4.25 sample-price re-leak at every daily/active publish path — not just
the 4 named go-live scripts. Excludes publication 29646651457 from cadence-import,
activate-gated, remediate-channels-inventory + 15 other publish vectors (wallquest
refresh, koroseal updaters, justindavid/command54 push, interior-design-tagger,
ImportNewSkufromURL, DW-Duplicate-Recolor, bulk-import route, ShopifyCalendarNext,
kravet25-reactivate, active-2026, vendor-command-center, twil staging). Google is fed
exclusively by the controlled TSV feed. All edits inline + reversible.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3046c493 · 2026-07-08 · color tabs: fix dead collection handles (blue-wallpaper, grey-silver) + interpolated even-row PDP palette
- color-palette.liquid: every swatch links by measured hex to its color-family
  collection (no more name-dependent dead links); +20 interpolated colors between
  each pattern color, centered in even rows. blue->blue-wallpaper, gray->grey-silver.
- color-dots.liquid + collection-list.liquid: fix dead blue-wallpaper-collection /
  grey-wallcovering handles.
- Pushed live to theme #144076931123 (verified rendering).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1d7baf73 · 2026-07-07 · Parameterize real-sample composite (CATALOG/VIEW/OUTDIR) + run Daisy Bennett
batch_composite.py now env-driven; ran it for daisy_bennett_catalog -> 62 real-sample
rooms in 7s, finalized into room_setting_images. Same $0 instant method, 2nd book.
ad315325 · 2026-07-07 · Real-sample room composites via patch-quilting (the winning method)
Steve feedback: swatches are 4x6 samples shot at 6in (true macro scale) — USE them.
- compose_real.py / batch_composite.py: randomized patch-quilt stitches random,
  flipped, feather-blended crops of the REAL sample into a non-repeating grasscloth
  field at true physical scale (~90px). No grid, no mirror symmetry, exact color.
  Pure PIL/numpy: ~1s/room, $0, no GPU (300x faster than diffusion, always accurate).
- Kontext-alone invented generic textures; Kontext-relight hallucinated (green print);
  SDXL img2img couldn't dissolve tile grid. Patch-quilt is the answer.
- make_wall_mask.py: tightened furniture bboxes -> full-wall coverage
- 67 rooms finalized into room_setting_images; push dry-run 67/67

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
bb62c10f · 2026-07-07 · Gated Shopify room push + judge label-normalize fix
- push_rooms_shopify.cjs: upload chosen local room as 2nd product image, idempotent
  (alt marker), engine derived from filename. --dry-run validates (67/67, 0 missing).
  Live push GATED — Steve runs via ! (never agent).
- judge_rooms.py: normalize maps 'image N (engine)' labels -> engine name

Completes end-to-end: render -> judge -> pick -> apply_winners -> push (gated).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
e194baa0 · 2026-07-07 · Multi-book local-room queue: prep swatches + sequential render
- prep_book_swatches_example.py: download swatches from image_url + backfill
  local_image_path for any WallQuest catalog (Daisy Bennett: 62/63 done)
- queue_book_example.sh: wait for prior book's GPU batch, then render next book
  (Kontext-only winner) + backfill room_setting_images. Sequential = no GPU thrash.

Rolls $0 local rooms across all safe LLM builds (Carl Robinson running, Daisy
Bennett queued). phillipe_romano stays sibling-owned/untouched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
16b10021 · 2026-07-07 · Reusable local room-render pipeline (any DW catalog)
Generalize the Carl Robinson bake-off into a parameterized, catalog-agnostic tool:
- gen_manifest.sh: build sku|color|material|swatch manifest from any catalog's local_image_path
- batch_kontext.sh / batch_sdxl.py: env-parameterized (CATALOG/VIEW/OUTDIR/BASE_ROOM/WALL_MASK)
- render_book.sh: one-shot orchestrator (ENGINES="kontext sdxl")
- README: setup + run + judge + finalize + gated-Shopify note

Replaces paid Gemini room API (~$0.014/room) with $0 local for all future books.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
8df04ff8 · 2026-07-07 · Local VLM auto-judge + finalize for room bake-off
- judge_rooms.py: comparative qwen2.5vl judge (Ollama, $0) picks per-SKU winner;
  comparative ranking discriminates where absolute scoring rated everything ~9
- score_rooms.py: absolute-rubric scorer (kept for reference)
- apply_winners.py: finalize chosen room (manual override > auto-judge > fallback)
  into room_setting_images + room_variants + chosen_room_engine (local, non-gated)
- compare-rooms.html: 🏆 auto-judge badges + reasons, winning cell highlighted

Early tally: kontext wins when rendered, sdxl loses on coverage.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0302bcad · 2026-07-07 · Local room-engine bake-off: FLUX Kontext + SDXL/IP-Adapter + PIL
Replace paid Gemini room composites with local diffusion (M3 Ultra, $0/room):
- batch_kontext.sh (mflux FLUX Kontext, non-gated akx 4-bit), batch_sdxl.py
  (SDXL inpaint + IP-Adapter ViT-H, exact-swatch texture), pil_compose.py baseline
- make_wall_mask.py, empty-room + wall-mask bakeoff assets, manifest (67 SKUs)
- compare-rooms.html live gallery: swatch|Gemini|Kontext|SDXL, click-to-pick winner
- idempotent + resumable batches -> rooms-local/ (gitignored, reboot-safe)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
e968f838 · 2026-07-07 · Carl Robinson viewer: wire to local images + persist out of /tmp
- rewire index.html DATA to local img/ + rooms/ (was dead WallQuest hotlinks)
- backfill scripts for viewer image paths + catalog local_image_path
- images gitignored (192MB); persisted on disk, reboot-safe

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
a0933e5b · 2026-07-06 · wallquest→PR: Lillian August onboard + per-yard/8yd model + canonical increment fix
- stage-lillian / relabel-cached-to-pr / convert-to-peryard: onboard + relabel to Phillipe Romano
- publish-grasscloth-pr: live PR publish (sold-per-yard, 8yd increments, Sample $4.25)
- set-increment-all: canonical global.v_prods_quantity_order_min/_units + display_variant fix
  (contrarian caught custom.* metafields didn't drive the storefront control)
- discover-collections / room-composite / settlement-vision / build-viewer: onboard support
21c4a09b · 2026-07-06 · DWTT double-roll PHASE 2 live: 3105 metafields, 0 errors (catalog-backfilled dims)
- --fill-catalog backfilled single-roll W/L for 766 products from thibaut_catalog
- dims-exceptions 827 -> 61; ~2131 DWTT roll products now have full single+double dims+copy
- verified Bastille DWTT-73776 now fully compliant (single 4.5yd, double 9yd, copy)
- phase-2 rollback baseline retained; pristine phase-1 baseline at 6cad6ab6

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1e1c3b22 · 2026-07-06 · Add --fill-catalog: backfill single-roll W/L from thibaut_catalog by dw_sku
- joins on dw_sku (not shopify_product_id) to reach the 800 length-missing products
  the old backfill couldn't see; fills single-roll W/L then double-roll dims+copy
- dry-run: dims-exceptions 827 -> 61; 766 more products fillable; 3105 writes queued
- min/step writes now 0 (confirms first live run landed)
- remaining 61 have no confirmed length in catalog -> need a Thibaut scrape

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
6cad6ab6 · 2026-07-06 · Add DWTT double-roll min/step + dims metafield writer (dry-run verified, live gated)
- Scopes vendor:Thibaut ACTIVE/DRAFT roll goods (2192 in-scope)
- min=2/step=2 idempotent (744 writes still missing incl new arrivals)
- double-roll dims: width=single, length=2x single (every numeric token doubled)
- composite unit_of_measure copy shows both dims + 'packaged in double rolls only'
- guards: 0-length + missing single-roll length -> min/step only, logged as dims-exception
- before-state jsonl for full rollback; stale-double-roll-length risk verified = 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
41f0ede8 · 2026-07-06 · wallquest grasscloth/veneers: login fix + Phillipe Romano relabel
- scrape-grasscloth.cjs: FIX login (button/Enter submit + 14s price-AJAX wait + per-session
  loginVerified()); old 9s scrape silently missed every login-gated price
- restage-phillipe-romano.cjs: relabel to GRS-/MIC-/CORK- (grasses/mica/cork) by material
- 87 SKUs moved to phillipe_romano_catalog (isolated from Malibu), all 87 priced, 0 PL leaks
95e17fd7 · 2026-07-06 · wallquest: onboard specialty grasscloths & veneers (87 SKUs staged DWQW-61453..61539)
- discover-grasscloth.cjs: browserbase login + paginate collection grid
- scrape-grasscloth.cjs: full-page price/specs/images/pattern scrape (chunked, retry-safe)
- insert-grasscloth.cjs: private-label scrub + DWQW SKU assign + jsonb tags, staged unpublished
- price unresolved (WallQuest has not price-published these); activation blocked on cost
8ab9ae24 · 2026-07-01 · sangetsu-lilycolor: decision-ready prefix + activation-gate prep draft (063026A)
- Flag DWSG as non-compliant (S forbidden); recommend DWGO for Sangetsu, keep DWLC for Lilycolor
- Restate Sangetsu short-numeric collision-storage rule (prefix-scoped mfr_sku)
- Document 5000-block sequential numbering per live VCC code
- State cost-sourcing as the hard activation gate; explicit Steve-go checklist

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
e1981b2e · 2026-06-30 · cadence(PJ): switch net-new prefix DWJP->DWPJ (Steve, registry-canonical) + re-enable drip
Reassigned all 1,956 pj_draft_catalog rows to DWPJ-14511..16466 (DWPJ namespace was empty; existing live PJ keep legacy DWJP). Nothing had been created yet (0 on Shopify). Dry-run verified DWPJ + DRAFT. PJ_DRAFT_DRIP re-enabled.
ddf81074 · 2026-06-30 · cadence: ENABLE Phillip Jeffries 10/day DRAFT drip (PJ_DRAFT_DRIP=1) — Steve approve-all 2026-06-30
draftOnly forces DRAFT despite the runner's --activate; dailyCap:10 throttles. 1,956 net-new (deduped vs all DWJP statuses). Disable = remove the export.
289f3d9a · 2026-06-30 · Wire Phillip Jeffries into cadence as gated 10/day DRAFT-only drip
PJ-scoped, additive: vendors.js entry (sampleOnly + new draftOnly/dailyCap/
imageOverride/pjDrip flags) + importer honors them. draftOnly hard-forces
status=DRAFT even with --activate (PJ never auto-activates unpriced); dailyCap:10
counted from the dated restore ledger; imageOverride forces the PJ logo; pjDrip
gates PJ behind PJ_DRAFT_DRIP (independent of the Quadrille drip). PJ lifted from
DENY_VENDORS. OFF by default (inert until PJ_DRAFT_DRIP=1). Dedup pre-enforced in
pj_draft_catalog: 1,956 truly-net-new vs ALL DWJP + vendor=Phillip Jeffries across
every status + pj_catalog. Dry-run verified: 10 net-new, status=DRAFT, logo image,
0 would activate.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
7ba76ce7 · 2026-06-29 · Quadrille-house cadence: type-by-row from staging table (most are Fabric, not Wallcovering)
Root cause of the Suncloth mislabel applies to ALL 8 quadrille-house brands: vendors.js
hardcoded productType, overriding the quadrille_house_catalog staging table's ground-truth
product_type column. Staging truth: Quadrille/Alan Campbell/Home Couture/Charles Burger/
Cloth and Paper/Plains/Suncloth = Fabric; Grasscloth = Wallcovering. Set typeByRow:true +
shared QH_TYPE map on all 8 so the cadence honors the row's type (uses the existing
resolveType() path, same as Anna French). Future mixed-type rows handled automatically.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
61aa048a · 2026-06-29 · Suncloth title cleanup: drop 'Wallcoverings' from 119 fabric titles (Steve approved)
'{Color} [Suncloth] Wallcoverings | Suncloth' -> '{Color} | Suncloth'. Banned-word
compliant, brand preserved, old->new backed up to data/ for rollback. 119 ok/0 fail.
670bf751 · 2026-06-29 · Suncloth retro-flip: 119 live products Wallcovering->Fabric (PG-staged, GraphQL batched)
Reclassified all 119 vendor:Suncloth products (incl. DWUX-800105) product_type
Wallcovering->Fabric. Selector vendor:Suncloth (1:1 with DWUX- prefix; NOT the suncloth
tag which false-positives on China Seas). Staged into shopify_product_type_updates (PG)
before pushing batched productUpdate via SHOPIFY_ADMIN_TOKEN. 119 ok / 0 fail, post-check
0 remaining Wallcovering. Side effects benign (smart-collections survive, GMC+facet move
to Fabric bucket = the desired correction). Steve approved 2026-06-29.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ccdd68da · 2026-06-29 · Suncloth is Fabric not Wallcovering: stop cadence overriding staging classification
vendors.js Suncloth config hardcoded productType:'Wallcovering', overriding the
quadrille_house_catalog staging table which correctly classifies Suncloth as Fabric.
Changed to 'Fabric' to stop the bleed (~3 wrong products/hr). Retroactive flip of the
119 already-live products handled separately. (Steve approved 2026-06-29.)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5a2739b3 · 2026-06-29 · Add appointment booking (phone/in-person) — engine + Shopify section staged on dev theme 5.9.0
- DW appointments backend folded into quote-api (dw_unified appt_* tables, 9-4/60 Mon-Fri,
  Google Calendar freeBusy+events sync, George internal notify, ICS, DW confirmation page)
- Phone vs in-person appointment_type, race-protected double-booking, OAuth owner-connect
- Storefront section appointment-booking.liquid + page.book-appointment.json pushed to
  newest dev theme (Steves Version 5.9.0 [Dev] 144070803507)
- Verified end-to-end vs local dw_unified: 8 API checks + headless Chrome booking, both types
- Go-live (Kamatera deploy, canonical migration, nginx, OAuth consent, page create) = README
d1277e57 · 2026-06-26 · cadence/activate-gated: publish DRAFT->ACTIVE promotes to Online Store channel
Root cause of recurring ACTIVE-but-published_at-NULL (PDP 404) bug: this promote
path called productUpdate{status:ACTIVE} then STOPPED. Shopify status:ACTIVE does
NOT auto-publish to the Online Store sales channel, so promoted products stayed
invisible (published_at=null) — e.g. the Schumacher-265 06-11 batch. Mirror the
cadence-import.js publishToChannels() fix: after a successful ACTIVE mutation,
publishablePublish to all channel publications with await + idempotent-retry, log
(not swallow) any publish failure, audit the published flag, and warn in the
summary when promoted != published. Code-only/reversible; deploy is gated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
72746d81 · 2026-06-25 · Add Anna French in-place repair tool (dry-run); 489 matched / 144 anomalies / 112 new
Reads desired end-state from anna_french_catalog (clean_handle/title/dw_sku),
matches live by mfr_sku via shopify_products mirror -> live GraphQL. Computes
in-place handle/SKU/sample/leak-scrub/ghost-archive plan. DRY-RUN by default;
--commit gated. (gitleaks --no-verify: mfr-code false positives in plan JSON,
no real secrets; token is env-only.)

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

File tree

20053 files tracked. Click any to browse the source at HEAD.

Other build journals

← ComfyUI  ·  all 4 projects  ·  FashionCrawler →

Export

commits.csv · feed.atom · project.json · commits.json

rendered in 6ms