Designerwallcoverings

repo: ~/Projects/designerwallcoverings · 924 commits · 15 in last 24h, 99 in last 7d · ▂▂▃▅█▅▄

Search the build

924 commits indexed

  1. ccd6f02 2026-09-26 auto-data-snapshot: 2026-09-26T15:48:33 (1 data files) — data/orphan-cleanup-20260716/latest.json
  2. d1f4ede 2026-09-26 auto-data-snapshot: 2026-09-26T09:21:27 (1 data files) — scripts/google-feed/data/google-feed/unpublish-list-showroom.csv
  3. eebb452 2026-09-26 TK-11856 rc-propagation (SHOPIFY): gimmersta-romo-rolls run.sh propagates first failed roll-builder rc
  4. 2b739ed 2026-09-26 TK-12333: drop Scalamandre — unpublish list 4409 rows, dw-showroom-hide.js 12544 ids (NOT deployed), rollback --limit, rollback evidence
  5. 9335a6a 2026-09-26 TK-11860: save prior 8120-id dw-showroom-hide.js (rollback reference)
  6. f19568f 2026-09-26 TK-11860: ShowroomOnly stamped on 4,842 ACTIVE (JS/MTG/Sandberg/Scalamandre) + regenerated dw-showroom-hide.js (12,962 ids, NOT deployed)
  7. f1c71e8 2026-09-26 auto-data-snapshot: 2026-09-26T08:50:16 (5 data files) — evidence/TK-11860-showroom-20260926/applied-2026-09-26T15-26-44-049Z.jsonl evidence/TK-11860-showroom-20260926/restore-map-2026-09-26T15-26-44-049Z.json evidence/TK-11860-showroom-20260926/restore-map-2026-09-26T15-27-34-052Z.json evidence/TK-11860-showroom-20260926/unpublish-list-showroom.csv scripts/google-feed/data/google-feed/unpublish-list-showroom.csv
  8. 2eb7e2e 2026-09-26 TK-11860: ShowroomOnly tag stamper for approved showroom vendors + pre-write restore-map (4,842 ACTIVE, dry-run)
  9. 0e0f070 2026-09-26 TK-11860: sell-mode segmentation evidence (sample/quote NOT-MEASURED by design)
  10. f17a775 2026-09-26 auto-data-snapshot: 2026-09-26T08:19:11 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  11. 47a405d 2026-09-26 auto-data-snapshot: 2026-09-26T06:16:37 (1 data files) — data/orphan-cleanup-20260716/latest.json
  12. 98f271e 2026-09-26 auto-data-snapshot: 2026-09-26T01:11:31 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  13. e018d3c 2026-09-26 auto-data-snapshot: 2026-09-26T00:10:15 (1 data files) — data/orphan-cleanup-20260716/latest.json
  14. 6817a4e 2026-09-25 auto-data-snapshot: 2026-09-25T21:38:12 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  15. f2ea7ec 2026-09-25 auto-data-snapshot: 2026-09-25T18:05:08 (1 data files) — data/orphan-cleanup-20260716/latest.json
  16. 820535f 2026-09-25 TK-12267: tripwire enumerate uses read-only ADMIN-first seam (read-lib.mjs); 0-of-0 population guard; lib.mjs write loader untouched
  17. f47fd6c 2026-09-25 TK-11076: Option B — undo DELETEs a metafield the forward run created (absent != empty)
  18. 590af0c 2026-09-25 TK-10484: word-boundary settlement matcher + negative test + gated flag correction (dry-run default, --expect guard, exact --rollback)
  19. 40908be 2026-09-25 TK-10484: dry-run-default staging script for 8 recovered Jeffrey Stevens codes (gated apply + rollback)
  20. d57e691 2026-09-25 TK-11483: Phase-2 pre-flight evidence (76 ACTIVE Fentucci dupes verified live, fire script + negative-tested preflight)
  21. 6b02cf4 2026-09-25 auto-data-snapshot: 2026-09-25T10:22:25 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  22. 7f78ce0 2026-09-25 auto-data-snapshot: 2026-09-25T09:51:23 (4 data files) — scripts/palm-grove-promote/snapshot-pre.json scripts/palm-grove-promote/verify-LN40201.json scripts/palm-grove-promote/verify-LN40202.json scripts/palm-grove-promote/verify-LN40204.json
  23. 9a56596 2026-09-25 TK-12227: verify backs off on storefront cart 429
  24. 48cde5e 2026-09-25 TK-12227: contrarian fixes — pin inventory to twin roll location, exact-one catalog price row, resume past activation, rollback re-lists only while DRAFT, measured mirror, deterministic redirect verify
  25. ff13b17 2026-09-25 TK-12227: local mirror step + public verify (browser/Googlebot headers)
  26. dd22e2c 2026-09-25 TK-12227: restrict to Online Store (unpublish pre-listed channels), resume mode, rollback re-list
  27. 2b2bd12 2026-09-25 TK-12227: palm-grove promote/retire pair executor + scoped rollback + snapshot
  28. ce228bc 2026-09-25 auto-data-snapshot: 2026-09-25T08:13:10 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  29. 318a59e 2026-09-25 auto-data-snapshot: 2026-09-25T05:39:47 (1 data files) — data/orphan-cleanup-20260716/latest.json
  30. b3d17e1 2026-09-25 auto-data-snapshot: 2026-09-25T01:04:41 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  31. 22f1691 2026-09-25 auto-data-snapshot: 2026-09-25T00:03:17 (1 data files) — data/orphan-cleanup-20260716/latest.json
  32. 140429c 2026-09-24 auto-data-snapshot: 2026-09-24T21:30:35 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  33. 7e676fe 2026-09-24 auto-data-snapshot: 2026-09-24T17:57:06 (1 data files) — data/orphan-cleanup-20260716/latest.json
  34. cb3710a 2026-09-24 lib/shopify: probe SHOPIFY_FULL_ACCESS_TOKEN once, fall back to SHOPIFY_ADMIN_TOKEN on a definitive 401
  35. 398290e 2026-09-24 night-pdp-verify: unknown expected price -> NOT-MEASURED, keep catch error reason
  36. 8e87211 2026-09-24 TK-10484: restore file for NU cost fix (4 rows 25->30)
  37. 1fc203f 2026-09-24 TK-10484: reversible cost fix for 4 NU rows (25 -> Yorkwall 30), Steve-approved, not fired
  38. 6d77d92 2026-09-24 TK-10484: archived 33 yorkwall no-price NU rows; fix count parse (-tA)
  39. 41b4348 2026-09-24 TK-10484: reversible archiver for 33 yorkwall no-price NU codes (gated, not fired)
  40. df48217 2026-09-24 TK-10484: fix yorkwall cost applier — key on recovered_mfr_code, no-price stays NULL, DB-verified count
  41. 78f2d63 2026-09-24 TK-10484: reversible yorkwall cost applier for 47 NU codes (14 priced, 33 no-price from scrape)
  42. 5481337 2026-09-24 TK-10484: archived 15 imageless unminted drafts; fix viewer-rebuild (-tA, parse before write)
  43. e51b1da 2026-09-24 TK-10484: reversible archiver for 15 imageless unminted JStevens drafts (gated, not fired)
  44. 4faa847 2026-09-24 auto-data-snapshot: 2026-09-24T12:18:37 (2 data files) — $OUT data/tk10484-settlement-flag-restore-2026-09-24T19-04-12-258Z.json
  45. c9c34b6 2026-09-24 TK-10484: fix settlement-flag applier (ALTER before snapshot; drop broken .catch) — applied 97 rows
  46. c39fa7b 2026-09-24 TK-10484: regenerate JStevens settlement sweep (97 candidates: 28 EXCLUDE/19 REVIEW/50 APPROVE) + reversible flag applier (gated, not fired)
  47. efc10ab 2026-09-24 auto-data-snapshot: 2026-09-24T11:48:03 (1 data files) — data/orphan-cleanup-20260716/latest.json
  48. b678e92 2026-09-24 TK-12129: live theme ships Harlequin roll-length + sold-per line (6/6 live checks pass)
  49. 6012860 2026-09-24 TK-12129: extend live verify to 6 controls + final-pre baseline (ship blocked pending Steve)
  50. 3f78311 2026-09-24 TK-12129 rollout: 320 Harlequin WC metafields written; live theme edit reverted on check (c) fail; sold_per-gate fix proven on preview
  51. 30f26d7 2026-09-24 TK-10484: activate 14 Jeffrey Stevens NuWallpaper drafts on live DW store (update-only, restore maps + rollback)
  52. 2c63e0a 2026-09-24 auto-data-snapshot: 2026-09-24T10:46:49 (1 data files) — data/tk10484-activate-14-targets.csv
  53. 760ec45 2026-09-24 TK-12129: custom.sold_per canary write + unpublished preview theme render proof
  54. 3ee5362 2026-09-24 auto-data-snapshot: 2026-09-24T10:15:55 (3 data files) — data/tk12129-soldper-snapshot-2026-09-24T17-13-59-590Z.json data/tk12129-soldper-snapshot-2026-09-24T17-14-09-344Z.json scripts/dwpw-grs-migrate.lastrun.json
  55. aff639a 2026-09-24 auto-data-snapshot: 2026-09-24T09:44:11 (1 data files) — data/tk12129-canary-snapshot-2026-09-24T16-39-45-635Z.json
  56. 37d31e1 2026-09-24 auto-data-snapshot: 2026-09-24T08:09:22 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  57. 2215176 2026-09-24 auto-data-snapshot: 2026-09-24T06:02:25 (1 data files) — data/orphan-cleanup-20260716/latest.json
  58. 177d6a9 2026-09-24 auto-data-snapshot: 2026-09-24T01:19:13 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  59. 8b401ea 2026-09-23 auto-data-snapshot: 2026-09-23T23:44:32 (1 data files) — data/orphan-cleanup-20260716/latest.json
  60. b7ba612 2026-09-23 auto-data-snapshot: 2026-09-23T21:38:57 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  61. 6edeed1 2026-09-23 auto-data-snapshot: 2026-09-23T17:59:00 (1 data files) — data/orphan-cleanup-20260716/latest.json
  62. 886e350 2026-09-23 Retire: README-RETIRED banners for 7 dormant image-scan scripts (TK-12090)
  63. 5624b21 2026-09-23 TK-11397: swap dead SHOPIFY_FULL_ACCESS_TOKEN for live ADMIN token, fail-loud on 401/403 across GMC-404 batch scripts
  64. d4c017e 2026-09-23 auto-data-snapshot: 2026-09-23T12:42:16 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  65. 5776161 2026-09-23 TK-11323: importer stamps 8/8 whole-bolt rule + canonical The Naturals Collection tag; token probe falls back to a live token
  66. 33f8b4f 2026-09-23 TK-11552: 2026-09-23 rescue — back up 8 imminent info@ drafts, manifest + report
  67. b491d3a 2026-09-23 auto-data-snapshot: 2026-09-23T11:38:28 (3 data files) — data/orphan-cleanup-20260716/latest.json evidence/TK-11860-knoll-revert-20260923/artifact-discount-6scoped-PREIMAGE.json evidence/TK-11860-knoll-revert-20260923/knoll-revert-restore-map.json
  68. 9b5b1df 2026-09-23 TK-11397: fix variant-id extraction in resolve-variants.mjs + correct audit note
  69. 95dfa15 2026-09-23 auto-data-snapshot: 2026-09-23T10:35:16 (1 data files) — scripts/tk11397-gmc-404-batch/AUDIT-SUMMARY.md
  70. ad3148e 2026-09-23 auto-data-snapshot: 2026-09-23T09:31:43 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  71. 2b673f6 2026-09-23 auto-data-snapshot: 2026-09-23T08:28:09 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  72. 6c5aec4 2026-09-23 auto-data-snapshot: 2026-09-23T05:50:13 (1 data files) — data/orphan-cleanup-20260716/latest.json
  73. 0943a4e 2026-09-23 auto-data-snapshot: 2026-09-23T01:38:33 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  74. aaa7ecd 2026-09-23 auto-data-snapshot: 2026-09-23T01:07:15 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  75. b5d251a 2026-09-23 auto-data-snapshot: 2026-09-23T00:04:06 (1 data files) — data/orphan-cleanup-20260716/latest.json
  76. d988293 2026-09-22 auto-data-snapshot: 2026-09-22T21:27:29 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  77. 0f6c933 2026-09-22 auto-data-snapshot: 2026-09-22T17:47:37 (1 data files) — data/orphan-cleanup-20260716/latest.json
  78. 43488cd 2026-09-22 Fix Innovations over-archive: classify unloaded-pattern SKUs UNMEASURED (never DISCONTINUED) and log real prior Shopify status
  79. 5efaa44 2026-09-22 Collapse tautological try/catch pg require to plain require('pg') in 5 scripts
  80. f0f90e1 2026-09-22 Make inventory-stamp-guard.mjs shim portable (TK-11786 review): resolve shared master via DW_SHARED_GUARDS/homedir, not hardcoded /Users/macstudio3
  81. f5370f4 2026-09-22 auto-data-snapshot: 2026-09-22T11:43:24 (10 data files) — OWNERSHIP.md data/orphan-cleanup-20260716/latest.json package-lock.json package.json scripts/innovations-image-audit/audit.mjs.pre-pg-decouple
  82. dc85266 2026-09-22 auto-data-snapshot: 2026-09-22T07:25:22 (4 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json
  83. 6e1ca92 2026-09-22 auto-data-snapshot: 2026-09-22T06:51:20 (1 data files) — data/orphan-cleanup-20260716/latest.json
  84. 7795151 2026-09-21 auto-data-snapshot: 2026-09-21T21:54:42 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  85. 2049d6a 2026-09-21 auto-data-snapshot: 2026-09-21T20:34:48 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  86. 53d2176 2026-09-21 auto-data-snapshot: 2026-09-21T15:52:40 (1 data files) — data/orphan-cleanup-20260716/latest.json
  87. efd3b28 2026-09-21 auto-data-snapshot: 2026-09-21T10:26:58 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  88. 01d1f75 2026-09-21 auto-data-snapshot: 2026-09-21T09:54:10 (1 data files) — data/orphan-cleanup-20260716/latest.json
  89. 942a175 2026-09-21 auto-data-snapshot: 2026-09-21T08:17:25 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  90. 6e0f897 2026-09-21 auto-data-snapshot: 2026-09-21T03:22:12 (1 data files) — data/orphan-cleanup-20260716/latest.json
  91. dc399e0 2026-09-21 auto-data-snapshot: 2026-09-21T01:09:04 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  92. 6960b7c 2026-09-20 auto-data-snapshot: 2026-09-20T21:47:38 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  93. 05f8ca4 2026-09-20 auto-data-snapshot: 2026-09-20T15:36:19 (1 data files) — data/orphan-cleanup-20260716/latest.json
  94. 1ba4901 2026-09-20 auto-data-snapshot: 2026-09-20T10:00:50 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  95. 26ae318 2026-09-20 auto-data-snapshot: 2026-09-20T09:27:07 (1 data files) — data/orphan-cleanup-20260716/latest.json
  96. 9e8ef6a 2026-09-20 auto-data-snapshot: 2026-09-20T08:21:12 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  97. 7e7ce3c 2026-09-20 auto-data-snapshot: 2026-09-20T03:53:01 (1 data files) — data/orphan-cleanup-20260716/latest.json
  98. f03c29e 2026-09-20 auto-data-snapshot: 2026-09-20T01:05:15 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  99. ef6a284 2026-09-19 auto-data-snapshot: 2026-09-19T21:44:50 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  100. 3ceaa24 2026-09-19 auto-data-snapshot: 2026-09-19T15:48:40 (1 data files) — data/orphan-cleanup-20260716/latest.json
  101. e3b2eaf 2026-09-19 auto-data-snapshot: 2026-09-19T09:59:20 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  102. 9e58cff 2026-09-19 auto-data-snapshot: 2026-09-19T09:27:32 (1 data files) — data/orphan-cleanup-20260716/latest.json
  103. 20ed41c 2026-09-19 auto-data-snapshot: 2026-09-19T08:23:45 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  104. 8ec57d2 2026-09-19 auto-data-snapshot: 2026-09-19T03:36:55 (1 data files) — data/orphan-cleanup-20260716/latest.json
  105. e1d3b04 2026-09-19 auto-data-snapshot: 2026-09-19T01:29:58 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  106. c52b61e 2026-09-18 auto-data-snapshot: 2026-09-18T21:47:54 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  107. 54ae41f 2026-09-18 auto-data-snapshot: 2026-09-18T15:26:25 (1 data files) — data/orphan-cleanup-20260716/latest.json
  108. e8fb4b7 2026-09-18 auto-data-snapshot: 2026-09-18T10:30:02 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  109. 1fbaccd 2026-09-18 auto-data-snapshot: 2026-09-18T09:26:51 (1 data files) — data/orphan-cleanup-20260716/latest.json
  110. 5308911 2026-09-18 auto-data-snapshot: 2026-09-18T08:22:45 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  111. f5ed3c7 2026-09-18 auto-data-snapshot: 2026-09-18T03:33:53 (1 data files) — data/orphan-cleanup-20260716/latest.json
  112. ae249e0 2026-09-18 auto-data-snapshot: 2026-09-18T01:26:00 (5 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sanderson-onboard/out/night-pdp-verify-20260918.json scripts/sanderson-onboard/out/night-sample-20260918.json scripts/sanderson-onboard/out/rollback-map-TK-11046.json
  113. 66c7de6 2026-09-17 auto-data-snapshot: 2026-09-17T21:42:36 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  114. 57f0447 2026-09-17 auto-data-snapshot: 2026-09-17T21:10:25 (14 data files) — assets/TK-11644-identity-manifest.json data/tk11552-imminent-rescue-20260917/1a03532cb1456c2a.decoded.json data/tk11552-imminent-rescue-20260917/1a03532cb1456c2a.json data/tk11552-imminent-rescue-20260917/1a035d2cdc9deaa6.decoded.json data/tk11552-imminent-rescue-20260917/1a035d2cdc9deaa6.json
  115. 49ef5a0 2026-09-17 auto-data-snapshot: 2026-09-17T20:37:29 (2 data files) — evidence/TK-11860-w1838-20260917/findings.md evidence/TK-11860-w1838-20260917/prestate.json
  116. 5ede52b 2026-09-17 auto-data-snapshot: 2026-09-17T20:05:20 (8 data files) — evidence/TK-11860-anna-french-20260917/findings.md evidence/TK-11860-anna-french-20260917/prestate.json evidence/TK-11860-mindthegap-20260917/findings.md evidence/TK-11860-mindthegap-20260917/prestate.json evidence/TK-11860-sandberg-20260917/findings.md
  117. c365858 2026-09-17 TK-11357 lane-16: latigo cork $0 'Sold Per Yard' placeholder delete executor (mirrors negative-tested TK-11635 guard set; dry-run default; restore-map-first; rollback included). Deleted 6 CORK-927xx placeholders 2026-09-18, gmc-feed-guard FAIL6->PASS0.
  118. 5c9b9f2 2026-09-17 auto-data-snapshot: 2026-09-17T19:01:39 (25 data files) — evidence/TK-11860-knoll-retail-as-cost-20260917/external-plane/README.md evidence/TK-11860-knoll-retail-as-cost-20260917/external-plane/maharam-contact-010-chain.txt evidence/TK-11860-knoll-retail-as-cost-20260917/external-plane/maharam-gesso-001-bone.txt evidence/TK-11860-knoll-retail-as-cost-20260917/external-plane/maharam-ultrasuede-039-ruby-red.txt evidence/TK-11860-knoll-retail-as-cost-20260917/knoll-live-vs-col-vs-list.json
  119. 3418680 2026-09-17 TK-11871: Wallcovering guard default 3.0 -> 2.0 lb (live catalog norm)
  120. fa74e2a 2026-09-17 auto-data-snapshot: 2026-09-17T16:20:35 (3 data files) — scripts/stroheim-onboard/out/created.jsonl scripts/stroheim-onboard/out/settlement-429-breaker.json scripts/stroheim-onboard/out/settlement-attempts.jsonl
  121. a1514ab 2026-09-17 auto-data-snapshot: 2026-09-17T15:48:34 (1 data files) — scripts/stroheim-onboard/out/payloads.jsonl
  122. 225b848 2026-09-17 TK-11644: final verdict artifact — PASS (0 survivors tier A+B; 5 identity + 138 tierC-generic residuals closed and live-verified)
  123. 31ad41b 2026-09-17 TK-11644: amend snapshot — drop unrelated tk11186 preimage
  124. 2541178 2026-09-17 TK-11644: close last genericization residual — 138 Tier C misclassified rows (134 Nina Campbell + 4 Daisy Bennett identical vendor boilerplate) deleted; live-verified 138/138 null
  125. 83c91e7 2026-09-17 auto-data-snapshot: 2026-09-17T15:16:40 (2 data files) — verification/TK-11644-identity-livecheck.json verification/TK-11644-postfix-verdict.json
  126. f5051a7 2026-09-17 auto-data-snapshot: 2026-09-17T12:05:07 (1 data files) — assets/TK-11644-identity-manifest.json
  127. 2c99b22 2026-09-17 auto-data-snapshot: 2026-09-17T11:32:24 (2 data files) — assets/TK-11644-identity-manifest.json scripts/wm-reprice/applied-morrisco.csv
  128. 526f5cc 2026-09-17 wm-reprice: guard applied.csv against clobber by a zero-write run (TK-11814)
  129. e0981b7 2026-09-17 auto-data-snapshot: 2026-09-17T10:27:03 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  130. 09ce7d6 2026-09-17 tk11732 PJ showroom rollback: mirror tk11307's two load-bearing guards (code review)
  131. dd1ed81 2026-09-17 maya-romanoff logo-hero: a failed reorder is a PARTIAL, not done (code review)
  132. 479d315 2026-09-17 auto-data-snapshot: 2026-09-17T09:53:49 (1 data files) — data/orphan-cleanup-20260716/latest.json
  133. 9d50ba1 2026-09-17 wm-reprice: fix wrong-variant reprice + over-reverting undo (code review)
  134. 6c2f698 2026-09-17 auto-data-snapshot: 2026-09-17T08:16:42 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  135. a2725e3 2026-09-17 auto-data-snapshot: 2026-09-17T03:26:49 (1 data files) — data/orphan-cleanup-20260716/latest.json
  136. 91b0899 2026-09-17 auto-data-snapshot: 2026-09-17T01:19:54 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  137. 74eddcd 2026-09-16 auto-data-snapshot: 2026-09-16T21:37:03 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  138. 402ef11 2026-09-16 auto-data-snapshot: 2026-09-16T17:53:57 (3 data files) — scripts/colorway-title-anchor/out/tk11076-HW-deferred-draft.json scripts/colorway-title-anchor/out/tk11076-HW-frozen-275.txt scripts/colorway-title-anchor/out/tk11076-Hollywood_Wallcoverings-diff.json
  139. 2d5a8e1 2026-09-16 auto-data-snapshot: 2026-09-16T17:20:14 (1 data files) — scripts/colorway-title-anchor/out/tk11076-Hollywood_Wallcoverings-diff.json
  140. 7a1a14c 2026-09-16 TK-11758: gate snapshot write to --apply only; --undo reads only apply snapshots (Cody FIX FIRST)
  141. eafc12e 2026-09-16 TK-11673: exhaustive post-apply verification (read-only) — replaces the 40-row sample
  142. 869dbfb 2026-09-16 auto-data-snapshot: 2026-09-16T15:43:40 (1 data files) — data/orphan-cleanup-20260716/latest.json
  143. 0a57a1d 2026-09-16 TK-11357: fix three holes the contrarian found in my own tripwire fix
  144. 0b26a67 2026-09-16 chore: lint, refactor, v0.1.17 (TK-00038 session close)
  145. 85ec636 2026-09-16 TK-00038: harden the Sanderson PDP verifier (2 measurement holes from 2nd-model review)
  146. ef068c8 2026-09-16 TK-11357: stop the action-C tripwire fabricating success receipts
  147. 71fc81e 2026-09-16 TK-11644: write-ahead the rollback row before the gated delete
  148. d8ce050 2026-09-16 TK-11644: add missing gql() error-object guard to postfix-verify + identity-fix
  149. 571a382 2026-09-16 TK-00038: refresh Sanderson rollback map to match the verified live state
  150. 7f0bf67 2026-09-16 TK-00038: complete the Sanderson final PDP verify (was 60/502 measured)
  151. 236e4a6 2026-09-16 TK-11644: exhaustive post-fix verification (PASS, 0 survivors of 31,191) + gated identity-residual executor (5 of 11 adjudicated DELETE, dry-run default)
  152. 52b975b 2026-09-16 auto-data-snapshot: 2026-09-16T10:07:35 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  153. c843942 2026-09-16 WM/SDG reprice pt2: +36 William Morris (exact-code), Morris & Co verified already-priced (TK-11829)
  154. 6def336 2026-09-16 TK-11758: reversible CONTINUE->DENY fix tool for 6 $0 Latigo cork variants (dry-run verified)
  155. 6eab755 2026-09-16 auto-data-snapshot: 2026-09-16T09:33:20 (1 data files) — data/orphan-cleanup-20260716/latest.json
  156. c7cb7c8 2026-09-16 WM reprice: add one-command revert.mjs (restores old prices from restore-map, TK-11814)
  157. 41d4d1e 2026-09-16 WM reprice: 375 William Morris products to cost/0.65/0.85 (+17.5%, TK-11814)
  158. 3ccad6b 2026-09-16 auto-data-snapshot: 2026-09-16T08:24:08 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  159. 0aebc21 2026-09-16 auto-data-snapshot: 2026-09-16T03:35:57 (1 data files) — data/orphan-cleanup-20260716/latest.json
  160. 4665a98 2026-09-16 auto-data-snapshot: 2026-09-16T01:28:33 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  161. 942394e 2026-09-15 auto-data-snapshot: 2026-09-15T21:46:01 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  162. 9fc1c16 2026-09-15 auto-data-snapshot: 2026-09-15T15:48:53 (1 data files) — data/orphan-cleanup-20260716/latest.json
  163. 0b42942 2026-09-15 TK-11750: fix re-run guard — match rehosted image by basename not source domain
  164. 0785058 2026-09-15 auto-data-snapshot: 2026-09-15T09:48:56 (1 data files) — data/orphan-cleanup-20260716/latest.json
  165. 4d45cdc 2026-09-15 auto-data-snapshot: 2026-09-15T08:12:49 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  166. 63990bf 2026-09-15 auto-data-snapshot: 2026-09-15T03:24:10 (1 data files) — data/orphan-cleanup-20260716/latest.json
  167. b28d4ca 2026-09-15 auto-data-snapshot: 2026-09-15T01:17:10 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  168. c6955c4 2026-09-14 auto-data-snapshot: 2026-09-14T21:33:50 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/daily-batch.out
  169. a29bf81 2026-09-14 auto-data-snapshot: 2026-09-14T17:18:57 (1 data files) — assets/TK-11644-fix-tierB-manifest.json
  170. ef5c6f2 2026-09-14 auto-data-snapshot: 2026-09-14T16:46:18 (1 data files) — assets/TK-11644-fix-tierA-manifest.json
  171. 950de98 2026-09-14 TK-11750: Maya Romanoff logo-hero fix — gated attach/reorder script + resolved images
  172. d681254 2026-09-14 auto-data-snapshot: 2026-09-14T15:41:36 (1 data files) — data/orphan-cleanup-20260716/latest.json
  173. c16eadd 2026-09-14 tk11323-twil-8yd: remove dead/malformed unused mutation string in delMetafield()
  174. 484a4a8 2026-09-14 Scope showroom-tag rollback/verify per line (fix SHOWROOM_TARGETS cross-contamination)
  175. c964046 2026-09-14 auto-data-snapshot: 2026-09-14T14:02:07 (2 data files) — scripts/tk11307-showroom-tag/data/applied-2026-09-14T20-16-12-412Z.jsonl scripts/tk11732-pj-showroom-tag/data/applied-2026-09-14T20-12-36-766Z.jsonl
  176. 73440d7 2026-09-14 TK-11732: extend showroom hide to Phillip Jeffries (env-driven target list)
  177. e916ab2 2026-09-14 auto-data-snapshot: 2026-09-14T13:27:58 (7 data files) — scripts/tk11307-showroom-tag/data/restore-map-2026-09-14T20-11-46-628Z.json scripts/tk11307-showroom-tag/data/restore-map-2026-09-14T20-12-57-997Z.json scripts/tk11307-showroom-tag/data/restore-map-2026-09-14T20-13-29-872Z.json scripts/tk11307-showroom-tag/data/restore-map-2026-09-14T20-16-12-412Z.json scripts/tk11323-twil-8yd/data/restore-map-2026-09-14T20-14-42-538Z.json
  178. eebbdfb 2026-09-14 TK-11732/TK-11323: isolated PJ ShowroomOnly tagger + Fentucci 8yd whole-bolt applier (reversible, ledgered)
  179. 5c08e4b 2026-09-14 auto-data-snapshot: 2026-09-14T09:19:35 (1 data files) — data/orphan-cleanup-20260716/latest.json
  180. 43cfb10 2026-09-14 auto-data-snapshot: 2026-09-14T08:53:29 (3 data files) — scripts/sanderson-onboard/out/pdp-verify-20260914.json scripts/sanderson-onboard/out/rollback-map-TK-11046.json scripts/sanderson-onboard/out/rollback-map-TK-11046.json.pre-20260914.bak
  181. b60c6c3 2026-09-14 auto-data-snapshot: 2026-09-14T08:21:43 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  182. d5769b6 2026-09-14 auto-data-snapshot: 2026-09-14T05:09:49 (1 data files) — data/orphan-cleanup-20260716/latest.json
  183. 76c453c 2026-09-14 auto-data-snapshot: 2026-09-14T01:27:28 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  184. bb1980f 2026-09-14 TK-11673: extract June title_tag corrector to transform.mjs + negative test
  185. 4a15ac1 2026-09-14 TK-11673: June SEO title_tag de-dup/de-truncate map builder + gated apply/rollback
  186. 8544b4b 2026-09-14 TK-11679: curated colorway-facet un-truncation list (GET-verified) + gated reversible apply path
  187. 1cc388f 2026-09-14 auto-data-snapshot: 2026-09-14T00:22:42 (1 data files) — scripts/colorway-title-anchor/out/tk11076-Hollywood_Wallcoverings-diff.json
  188. 4229aa5 2026-09-13 auto-data-snapshot: 2026-09-13T22:30:29 (1 data files) — data/orphan-cleanup-20260716/latest.json
  189. 7b1522a 2026-09-13 auto-data-snapshot: 2026-09-13T21:26:43 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  190. b045719 2026-09-13 TK-11076: refresh Malibu + Hollywood dry-run diffs under the fixed parser
  191. 98e5551 2026-09-13 TK-11679: evidence — 33 comma-form colorway truncations, 18 already live
  192. 50b34e7 2026-09-13 TK-11076: Oxford-comma guard — stop the parser truncating fused-title colorways
  193. 8e95060 2026-09-13 TK-11574: --offline mode so the headline count is reproducible + negative-tested
  194. 7aa2e4e 2026-09-13 TK-11574: fix classifier substring bug + make the job window self-deriving
  195. 1d0b9dd 2026-09-13 TK-11644: description_tag mass-overwrite — sweep, proof, and gated executor
  196. 7b7ff51 2026-09-13 auto-data-snapshot: 2026-09-13T16:30:12 (10 data files) — .gitignore assets/TK-11644-fallback-unsafe.json assets/TK-11644-fix-tierA-manifest.json assets/TK-11644-identity-contradiction.json assets/TK-11644-tier-A.json.gz
  197. 5f814e0 2026-09-13 TK-11635: re-check each variant immediately before its delete, not only in the pre-flight
  198. 230e03d 2026-09-13 TK-11574: exhaustive phrasing-agnostic title_tag backstop (read-only bulk export + identity classifier)
  199. 628279c 2026-09-13 TK-11635: restore rollback fidelity — recreate weight + tracked, not just sku
  200. bf894f2 2026-09-13 TK-11076: three more undo defects, two surfaced by a second-model pass
  201. 8de1831 2026-09-13 TK-11076: undo verify compares tag SETS, not containment+length
  202. cce7427 2026-09-13 TK-11635: Fentucci $0 Per-Yard variant sweep + dry-default guarded delete executor + rollback
  203. 102998b 2026-09-13 TK-11076: harden the undo the gated memo rests on
  204. 2fbec90 2026-09-13 TK-11564: phased title_tag delete executor (dry-default, race-safe, reversible)
  205. 0c45db2 2026-09-13 TK-11076: Hollywood colorway retag allow-list (282 clean) + 56 non-colorway exclusions
  206. 299aff0 2026-09-13 TK-11515: archive 1,281 dead-404 DWPP duplicate products (Option 1, reversible)
  207. d189a70 2026-09-13 auto-data-snapshot: 2026-09-13T09:13:35 (3 data files) — scripts/tk515b scripts/tk515c scripts/tk515r
  208. 643efb0 2026-09-13 chore: version-up v0.1.16 (session close, TK-11534)
  209. d9ac5f5 2026-09-13 TK-11534: Quadrille 11 sellable-variant fixer + rollback (approved fix-forward, executed)
  210. ad0feaf 2026-09-13 auto-data-snapshot: 2026-09-13T08:07:44 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  211. 97abe88 2026-09-13 auto-data-snapshot: 2026-09-13T05:55:37 (1 data files) — data/orphan-cleanup-20260716/latest.json
  212. c4af46c 2026-09-13 TK-11515: archive 1,281 dead-404 DWPP products (Option 1, Steve-approved)
  213. d6bd241 2026-09-13 auto-data-snapshot: 2026-09-13T02:03:11 (2 data files) — scripts/tk11515-archive-undo.json scripts/tk11515-plan.json
  214. e844f05 2026-09-13 auto-data-snapshot: 2026-09-13T01:29:34 (3 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/tk11515-plan.json
  215. b92ffdc 2026-09-13 TK-11250: recover 2023 Reid Witlin per-pattern price list from Gmail archive as stale reference
  216. 235fe6c 2026-09-13 auto-data-snapshot: 2026-09-13T00:56:32 (1 data files) — scripts/tk11515-plan.json
  217. 667be31 2026-09-13 TK-11465: executed Hollywood pattern_name backfill — 234/234 written, verified live
  218. bfbd468 2026-09-13 TK-11564: read-only title_tag catalog-corruption blast-radius sweep
  219. 669e900 2026-09-13 Add run-app project skill: verified launch recipe for the root DW-ai vision-match server
  220. b7a7f7e 2026-09-13 auto-data-snapshot: 2026-09-13T00:21:19 (1 data files) — data/price-sheets/quadrille-fix-created.json
  221. df90750 2026-09-12 TK-11465: gated backfill script for custom.pattern_name on 234 no-pattern Hollywood products
  222. 231abd1 2026-09-12 auto-data-snapshot: 2026-09-12T23:45:38 (1 data files) — data/orphan-cleanup-20260716/latest.json
  223. 3c9b11f 2026-09-12 auto-data-snapshot: 2026-09-12T21:34:07 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  224. 02de45b 2026-09-12 TK-11522: refresh reconcile to 5 residual edges after concurrent partial fix
  225. ba0d292 2026-09-12 TK-11552: gitignore local backup of aged info@ reply drafts (customer content — keep out of git history)
  226. e62dfad 2026-09-12 TK-11522: vendor_registry URL-rot reconcile (gated apply/rollback + restore-map)
  227. 9c37702 2026-09-12 auto-data-snapshot: 2026-09-12T17:44:46 (1 data files) — data/orphan-cleanup-20260716/latest.json
  228. fca1e5c 2026-09-12 auto-data-snapshot: 2026-09-12T11:49:26 (1 data files) — data/orphan-cleanup-20260716/latest.json
  229. 4956071 2026-09-12 auto-data-snapshot: 2026-09-12T10:01:53 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  230. 6365a47 2026-09-12 TK-11534: live-resolve all 287 Kravet below-MAP candidates via Shopify sellable-variant GraphQL — 287/287 already at/above MAP (100% stale-mirror false positive, confirms TK-11526)
  231. 0252e88 2026-09-12 auto-data-snapshot: 2026-09-12T08:20:59 (6 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  232. e1c8f15 2026-09-12 TK-11486: pre-built dry-run restore-map (287 Kravet below-MAP rows, $4759.76 uplift)
  233. eac87b1 2026-09-12 TK-11544 APPLIED + verified: 11 foreign Sanderson gallery images removed, 0 failed
  234. 0824967 2026-09-12 TK-11521/TK-11544: gated 11-image Sanderson repair plan (hardened-canary reveal)
  235. 6b32d99 2026-09-12 chore: untrack Python bytecode, ignore __pycache__ (session close)
  236. 5b0e813 2026-09-12 chore: v0.1.15 (TK-11471 session close — weight go-live guards + hermetic test fix)
  237. 2b5408b 2026-09-12 TK-11471: make test_weight_guard.py hermetic — it was green on 09-11 and red on 09-12 with no code change
  238. b7632d3 2026-09-12 chore: lint, refactor, v0.1.14 (session close)
  239. aefc0a4 2026-09-12 auto-data-snapshot: 2026-09-12T06:11:57 (1 data files) — data/orphan-cleanup-20260716/latest.json
  240. 9b84aae 2026-09-12 auto-data-snapshot: 2026-09-12T01:09:53 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  241. c83c38b 2026-09-12 auto-data-snapshot: 2026-09-12T00:03:41 (1 data files) — data/orphan-cleanup-20260716/latest.json
  242. 1dadd41 2026-09-11 auto-data-snapshot: 2026-09-11T21:19:37 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  243. 2791ddf 2026-09-11 auto-data-snapshot: 2026-09-11T18:01:28 (1 data files) — data/orphan-cleanup-20260716/latest.json
  244. 3cf8552 2026-09-11 auto-data-snapshot: 2026-09-11T14:39:38 (1 data files) — scripts/__pycache__/tk11483-archive-dupes.cpython-314.pyc
  245. 83d3cd4 2026-09-11 TK-11461 APPLIED + verified: 76 foreign gallery images removed, 0 failed
  246. d025ccb 2026-09-11 TK-11483: phased reversible archive executor for 147 Fentucci mint-dupes
  247. 4911595 2026-09-11 auto-data-snapshot: 2026-09-11T13:57:49 (2 data files) — verification/TK-11461/rollback-map-2026-09-11T21-00-52-724Z.json verification/tk11301-postrevoke/verdict.json
  248. 409dd0c 2026-09-11 TK-11461: dry-run clean (76/76 verified, 0 refused) + rollback map committed
  249. 92aca3d 2026-09-11 auto-data-snapshot: 2026-09-11T13:23:02 (1 data files) — verification/tk11301-postrevoke/verdict.json
  250. fc3f1aa 2026-09-11 TK-11461: independent second-agent verification of the Sanderson gallery finding
  251. 96eef6f 2026-09-11 auto-data-snapshot: 2026-09-11T12:47:38 (3 data files) — scripts/__pycache__/dwpw-grs-migrate.cpython-314.pyc scripts/dwpw-grs-migrate.lastrun.json verification/tk11301-postrevoke/verdict.json
  252. 67d7eb3 2026-09-11 TK-11483: skipped foreign ledger lines are reported, never silent
  253. 81ba2dd 2026-09-11 TK-11483: receipt guard stops the daily Fentucci duplicate mint
  254. cbea880 2026-09-11 TK-11461: selective gallery repair executor (dry-run default, Steve-gated)
  255. 12a7091 2026-09-11 auto-data-snapshot: 2026-09-11T12:03:30 (4 data files) — data/orphan-cleanup-20260716/latest.json scripts/__pycache__/dwpw-grs-migrate.cpython-314.pyc scripts/lib/__pycache__/weight_guard.cpython-314.pyc verification/tk11301-postrevoke/verdict.json
  256. 34e4591 2026-09-11 TK-11461 refinement: closed population + exact 76-image selective repair plan
  257. 0876e0f 2026-09-11 TK-11471: inert executor so the gated backfill memo is actually approvable
  258. ea8f871 2026-09-11 TK-11471: weight gate on the JD rolling publish (the 4th unguarded activate site)
  259. 4d31a1a 2026-09-11 TK-11471: weight gate on the DWPW->GRS migration (the actual live leak)
  260. e5b2795 2026-09-11 TK-11471: Python twin of the weight guard (lib/weight_guard.py)
  261. 231a90e 2026-09-11 TK-11471: every create payload carries a guard-sourced weight
  262. 6a9e28e 2026-09-11 TK-11471: weight go-live gate on the 9 unguarded ACTIVATE sites
  263. 8dc084a 2026-09-11 TK-11461: Sanderson gallery contamination root cause — input change, not a recurrence
  264. 61d9358 2026-09-11 TK-11471: weight-guard matches the canary invariant (samples count) + tests
  265. f518287 2026-09-11 auto-data-snapshot: 2026-09-11T11:23:31 (2 data files) — verification/tk11301-20260910/live-cohort.json verification/tk11301-postrevoke/verdict.json
  266. de0faec 2026-09-11 TK-11301: fix a false-green in my own watcher — coverage window, not poll count
  267. 3347aa6 2026-09-11 TK-11301: read-only post-revoke recurrence watch + negative tests
  268. 1417da4 2026-09-11 Replace blanket Thibaut wait with verified per-product correction evidence
  269. 3994a21 2026-09-11 auto-data-snapshot: 2026-09-11T10:49:53 (1 data files) — scripts/thibaut-wide-width-length-gap/out/reconciliation/live-canary-membership.json
  270. d2c4909 2026-09-11 auto-data-snapshot: 2026-09-11T10:08:53 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  271. e5b18f7 2026-09-11 TK-11404: theme fix — correct emitters (theme.liquid JSON-LD + product-form-content microdata); apply-final + verify scripts
  272. bd96358 2026-09-11 auto-data-snapshot: 2026-09-11T09:31:49 (1 data files) — verification/tk11301-20260910/live-cohort.json
  273. 71f0fb4 2026-09-11 Send approved Thibaut specifications request and verify 221 SKU attachment
  274. af2c060 2026-09-11 auto-data-snapshot: 2026-09-11T08:57:34 (1 data files) — verification/tk11301-20260910/live-cohort.json
  275. ece3b73 2026-09-11 Restore and verify Sanderson Breeze Blue hero for TK-11453
  276. 04658ec 2026-09-11 auto-data-snapshot: 2026-09-11T08:16:47 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  277. df0a751 2026-09-11 auto-data-snapshot: 2026-09-11T06:04:43 (1 data files) — data/orphan-cleanup-20260716/latest.json
  278. 1a9c343 2026-09-11 auto-data-snapshot: 2026-09-11T01:07:22 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  279. 5fedb87 2026-09-11 auto-data-snapshot: 2026-09-11T00:01:31 (1 data files) — data/orphan-cleanup-20260716/latest.json
  280. 768920f 2026-09-10 auto-data-snapshot: 2026-09-10T21:50:55 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  281. 3e683ff 2026-09-10 Correct Thibaut source-gap evidence and stage specifications request
  282. 1a161c2 2026-09-10 auto-data-snapshot: 2026-09-10T18:07:04 (15 data files) — data/orphan-cleanup-20260716/latest.json scripts/thibaut-wide-width-length-gap/APPROVAL.md scripts/thibaut-wide-width-length-gap/out/canary-snapshot.json scripts/thibaut-wide-width-length-gap/out/purchasing-lengths-request.csv scripts/thibaut-wide-width-length-gap/out/report.json
  283. 9a66543 2026-09-10 Verify TK-11301 containment and document durable fix gate
  284. 5b789a2 2026-09-10 TK-11307: tag-driven Boost card hider (Steve's ruling: keep MDC findable in search)
  285. 8dcc371 2026-09-10 Verify Sanderson gallery remediation for TK-11302
  286. 0a6978b 2026-09-10 TK-11307: theme deploy targeted an UNPUBLISHED theme; rollback reverted other tickets
  287. 5db8255 2026-09-10 TK-11307: fix silent-no-op rollback — reconstruct baseline earliest-wins, fail loud
  288. 68bf79a 2026-09-10 TK-11404: theme-fix spec for handoff (reorder dead; leak is in theme.liquid JSON-LD + product-form-content microdata/visible price)
  289. e52390b 2026-09-10 TK-11404: correct FINDINGS — DTD+live audit found a real JSON-LD $4.25 leak (BLOCK was a false-green)
  290. a6afe99 2026-09-10 TK-10895: bring main's copies to the final verified state (27999a6 + b0416ab)
  291. e14d23e 2026-09-10 TK-10895: storefront verify needs a CDN grace period
  292. e0c030e 2026-09-10 TK-10895: post-verify must read the STOREFRONT, not the Admin API
  293. 4816e02 2026-09-10 TK-10895: reprice/revert tool for the 5 products priced off the mill sheet FABRIC row
  294. b0416ab 2026-09-10 TK-10895: table-driven reprice + CDN grace period
  295. 27999a6 2026-09-10 TK-10895: guards accept recorded adjudications, never implicit inference
  296. 5320069 2026-09-10 TK-11404: productSet position-1 reorder prototype + FINDINGS (mechanism proven ineffective)
  297. 2be0da4 2026-09-10 TK-11414: wire weight defaults into 8 more onboarder create-sites
  298. b3b4998 2026-09-10 TK-11358: Thibaut Wide-Width roll-length gap diagnostic — confirmed genuine vendor-PDP source gap (221/221 empty at source, 0 carry-through)
  299. 045ae79 2026-09-10 TK-10895: require recorded adjudication to release a dirty G2 cost cell or G3 fabric-row cost
  300. 5027a3a 2026-09-10 TK-11414: weight go-live guard — shared weight-guard.mjs + wire sanderson onboarder
  301. e76ef3e 2026-09-10 auto-data-snapshot: 2026-09-10T13:39:50 (2 data files) — scripts/tk11307-showroom-tag/data/applied-2026-09-10T19-52-35-981Z.jsonl scripts/tk11307-showroom-tag/data/restore-map-2026-09-10T20-32-09-161Z.json
  302. 156c7c2 2026-09-10 TK-11414: reversible product-weight backfill script (samples 0.25lb, sellable per-type defaults)
  303. 6cea993 2026-09-10 auto-data-snapshot: 2026-09-10T13:02:09 (1 data files) — scripts/tk11307-showroom-tag/data/restore-map-2026-09-10T19-52-35-981Z.json
  304. 9f80218 2026-09-10 TK-11357: track zero-price investigation tooling (process-snapshot watch3, coverage probe, >25-variant truncation closer)
  305. 509210d 2026-09-10 TK-11404: add GATED position-1 sample-reorder fix + rollback (live-verified 2,586 leaks, not run)
  306. 93a10f1 2026-09-10 auto-data-snapshot: 2026-09-10T12:25:41 (6 data files) — package-lock.json scripts/stroheim-onboard/out/settlement-attempts.jsonl scripts/stroheim-onboard/out/settlement-gate.lock/owner.json scripts/stroheim-onboard/out/settlement-verdicts.jsonl scripts/tk11301-zero-price-stopgap/targets.json
  307. b319c8f 2026-09-10 chore: lint, refactor, v0.1.13 (session close) — TK-10895
  308. ce697b6 2026-09-10 TK-11307: GATED-0 applier — stamp exact ShowroomOnly tag on 4728 MDC products (tagsAdd, dry-run default, reversible restore map, resumable)
  309. 24d79fd 2026-09-10 auto-data-snapshot: 2026-09-10T11:43:04 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/stroheim-onboard/out/settlement-attempts.jsonl scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  310. a505db3 2026-09-10 TK-10895 fixpos: read variant order on the same plane we write it
  311. 5405216 2026-09-10 TK-10895: storefront verify needs a CDN grace period
  312. 5c48cd7 2026-09-10 TK-10933: sniff image type from magic bytes instead of trusting Content-Type
  313. 094abee 2026-09-10 TK-11357 action C: 15-min zero-price-orderable OUTCOME tripwire (wrapper + plist template) — auto-rezero any $0 quote-only sellable variant that becomes orderable; reuses guarded stopgap enumerate+apply, restore-mapped, install stays gated
  314. a48f912 2026-09-10 TK-10895: post-verify must read the STOREFRONT, not the Admin API
  315. 24c73c5 2026-09-10 auto-data-snapshot: 2026-09-10T11:08:25 (5 data files) — scripts/stroheim-onboard/out/settlement-429-breaker.json scripts/stroheim-onboard/out/settlement-attempts.jsonl scripts/stroheim-onboard/out/settlement-gate.lock/owner.json scripts/stroheim-onboard/out/settlement-verdicts.jsonl scripts/tk11357-zero-price-stopgap/targets.json.pre-recur6
  316. e29c49a 2026-09-10 TK-10895: track the Tranche B go-live + position-fix executors
  317. f5e1da7 2026-09-10 TK-10895: reprice/revert tool for the 5 products priced off the mill sheet FABRIC row
  318. 52587a2 2026-09-10 auto-data-snapshot: 2026-09-10T10:34:55 (3 data files) — scripts/dwpw-grs-migrate.lastrun.json scripts/stroheim-onboard/out/settlement-429-breaker.json scripts/stroheim-onboard/out/settlement-attempts.jsonl
  319. 5ac31df 2026-09-10 TK-11357 Fix A: stop emitting the $0 sellable variant in quote-only build-payloads
  320. 5bef4e3 2026-09-10 TK-10895: fix silent reorder failure leaking 4.25 on 226 live products
  321. c825f58 2026-09-10 auto-data-snapshot: 2026-09-10T10:01:38 (3 data files) — scripts/tk10895-fixpos.mjs.bak scripts/tk10895-trancheB-golive.mjs.bak scripts/tk11357-zero-price-stopgap/trunc-closer.json
  322. 6e51d27 2026-09-10 chore: lint, refactor, v0.1.12 (session close) — TK-11307
  323. 077ac09 2026-09-10 guard TK-11357 Fix D: don't stock a $0 Roll in osborne roll-add-apply
  324. 2fe073d 2026-09-10 guard TK-11357 Fix D: per-variant $0 gate in the two activate-1838 activators
  325. fab7c61 2026-09-10 guard TK-11357 Fix D: never stock a $0/quote-only variant in the 9 go-live activators
  326. d5d3db4 2026-09-10 TK-10895: hardened Tranche B executor for the verified 269
  327. 46d265e 2026-09-10 auto-data-snapshot: 2026-09-10T09:22:46 (3 data files) — scripts/stroheim-onboard/out/settlement-429-breaker.json scripts/stroheim-onboard/out/settlement-attempts.jsonl scripts/tk11357-zero-price-stopgap/coverage-probe.json
  328. 7f519c7 2026-09-10 theme (source): showroom tag is 'ShowroomOnly' (TK-11307) Steve ruled 2026-09-10: the MDC showroom tag is 'ShowroomOnly', not 'Showroom'.
  329. 2f5e49f 2026-09-10 auto-data-snapshot: 2026-09-10T08:12:39 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  330. 6838ced 2026-09-10 TK-10933: add --reset-breaker, the explicit local repair for the latching 429 breaker
  331. 1b39a0e 2026-09-10 TK-10933: rotate stale stroheim launchd.err (31 pre-fcffc7f ReferenceError lines + 1 SIGTERM) out of the live log
  332. f561cd9 2026-09-10 auto-data-snapshot: 2026-09-10T07:33:05 (1 data files) — scripts/tk11238-matka-archive-undo.json
  333. 117e185 2026-09-10 theme (source): fix showroom TAG matcher — exact tag, not whitespace token (TK-11307)
  334. ac0a3a5 2026-09-10 auto-data-snapshot: 2026-09-10T07:00:36 (1 data files) — scripts/thibaut-wide-width-length-gap/out/report.json
  335. 1076d4a 2026-09-10 auto-data-snapshot: 2026-09-10T06:27:49 (2 data files) — scripts/tk11301-zero-price-stopgap/enum-run.out scripts/tk11301-zero-price-stopgap/targets.json
  336. 250a2bf 2026-09-10 TK-11357: reversible qty->0 stopgap for NEW canary-flagged 1255 $0-orderable Phillipe Romano cohort (enumerate/apply/rollback via canary predicate)
  337. b90d16f 2026-09-10 TK-11238: staged reversible Matka stray-orphan fixes (archive + title-suffix, dry-run verified, gated apply)
  338. 53a3f8b 2026-09-10 auto-data-snapshot: 2026-09-10T05:55:20 (1 data files) — data/orphan-cleanup-20260716/latest.json
  339. 9e3ba9c 2026-09-10 TK-11301: build reversible qty->0 stopgap for Phillipe Romano $0 Per Yard variants + run read-only enumeration (1,281 ACTIVE / 1,848 ARCHIVED)
  340. 5200be5 2026-09-10 auto-data-snapshot: 2026-09-10T01:01:23 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  341. 54af6cf 2026-09-10 Keep one AdSense loader in inline page templates
  342. f80575d 2026-09-09 auto-data-snapshot: 2026-09-09T23:56:02 (1 data files) — data/orphan-cleanup-20260716/latest.json
  343. a14c393 2026-09-09 auto-data-snapshot: 2026-09-09T21:46:00 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  344. d6ed4ce 2026-09-09 auto-data-snapshot: 2026-09-09T17:52:57 (1 data files) — data/orphan-cleanup-20260716/latest.json
  345. 20524d3 2026-09-09 Revert "TK-11331: exclude 731 MDC quote-only $4.25-leak products from Google controlled feed via explicit feed-exclude-list"
  346. a149d39 2026-09-09 TK-11341: add AdSense Auto-Ads loader + ads.txt (revert to remove ads)
  347. a56189d 2026-09-09 TK-11331: exclude 731 MDC quote-only $4.25-leak products from Google controlled feed via explicit feed-exclude-list
  348. 10a76a1 2026-09-09 auto-data-snapshot: 2026-09-09T14:29:35 (1 data files) — data/dwjs-minunits-restore-20260909-141945.json
  349. b22c04c 2026-09-09 auto-data-snapshot: 2026-09-09T13:23:51 (1 data files) — package-lock.json
  350. 578d108 2026-09-09 chore: v0.1.11 (session close — PJ re-channel guard)
  351. 09a52a8 2026-09-09 PJ re-channel guard: additive showroom-vendor filter on the Google publication in the 10 go-live onboarders (no-op today, guards the re-add rollback path; reversible via git revert)
  352. cf114d5 2026-09-09 auto-data-snapshot: 2026-09-09T11:42:56 (1 data files) — data/orphan-cleanup-20260716/latest.json
  353. 795e079 2026-09-09 auto-data-snapshot: 2026-09-09T10:37:25 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  354. ffd3c22 2026-09-09 auto-data-snapshot: 2026-09-09T08:26:36 (3 data files) — scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  355. fe298d6 2026-09-09 Revert "google-channel unpublish: add tag-scoped path for shared-vendor showroom lines (TK-11307)"
  356. b8f7b46 2026-09-09 Revert "google-feed: exclude showroom-tagged products via isShowroomProduct (TK-11307)"
  357. 4d13385 2026-09-09 auto-data-snapshot: 2026-09-09T05:45:52 (1 data files) — data/orphan-cleanup-20260716/latest.json
  358. a8d372f 2026-09-09 auto-data-snapshot: 2026-09-09T04:09:05 (1 data files) — scripts/sanderson-onboard/out/payloads.jsonl
  359. 6116c18 2026-09-09 auto-data-snapshot: 2026-09-09T01:29:42 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  360. e050e8d 2026-09-08 auto-data-snapshot: 2026-09-08T23:53:56 (1 data files) — data/orphan-cleanup-20260716/latest.json
  361. b012c76 2026-09-08 auto-data-snapshot: 2026-09-08T21:46:57 (1 data files) — scripts/sanderson-onboard/out/daily-batch.out
  362. a40197d 2026-09-08 auto-data-snapshot: 2026-09-08T18:03:25 (1 data files) — data/orphan-cleanup-20260716/latest.json
  363. 42afab5 2026-09-08 auto-data-snapshot: 2026-09-08T16:14:09 (2 data files) — scripts/dwpw-grs-migrate.lastrun.json scripts/google-feed/data/google-feed/unpublish-list-showroom-tag.csv
  364. 01c73ed 2026-09-08 google-channel unpublish: add tag-scoped path for shared-vendor showroom lines (TK-11307)
  365. da49390 2026-09-08 theme (source): hide showroom-TAGGED products from browse/search grids (TK-11307)
  366. 740956f 2026-09-08 rotators: exclude showroom-tagged products from New Arrivals + Trending (TK-11307)
  367. bddd4d7 2026-09-08 google-feed: exclude showroom-tagged products via isShowroomProduct (TK-11307)
  368. 2ff8ec3 2026-09-08 auto-data-snapshot: 2026-09-08T15:35:04 (2 data files) — scripts/__pycache__/build_batch_from_sheet.cpython-314.pyc scripts/__pycache__/dwpw-grs-migrate.cpython-314.pyc
  369. b77df3e 2026-09-08 chore: ruff safe-fixes (import ordering) on dwpw-grs migration scripts (session close)
  370. 733d369 2026-09-08 Daily DWPW→GRS auto-migrate job: sheet-rebuild batch + runner + launchd plist
  371. 7f40543 2026-09-08 auto-data-snapshot: 2026-09-08T14:18:02 (4 data files) — scripts/__pycache__/dwpw-grs-migrate.cpython-314.pyc scripts/batch_daily.json scripts/com.steve.dwpw-grs-daily.plist scripts/dwpw-grs-migrate.lastrun.json
  372. 68a9edf 2026-09-08 docs(dwpw-grs-migrate): track 9 image-pending SKUs (DWPW dupes still live until imaged)
  373. 35ba74f 2026-09-08 fix(dwpw-grs-migrate): --grs comma-list, drop blank metafields, per-row skip-on-error
  374. d46e031 2026-09-08 fix(dwpw-grs-migrate): image verify accepts ATTACHED media, not just featuredImage (eventual-consistency, TK-11306)
  375. 9e97f6a 2026-09-08 auto-data-snapshot: 2026-09-08T13:39:29 (1 data files) — scripts/dwpw-grs-migrate.lastrun.json
  376. 9357ca2 2026-09-08 fix(dwpw-grs-migrate): verify draft by product ID with retry (fixes false VERIFY_DRAFT_FAILED on fresh products)
  377. 3e1ff00 2026-09-08 auto-data-snapshot: 2026-09-08T12:16:02 (1 data files) — data/orphan-cleanup-20260716/latest.json
  378. 9bc4d1e 2026-09-08 auto-data-snapshot: 2026-09-08T08:24:00 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  379. 403c9e1 2026-09-08 auto-data-snapshot: 2026-09-08T05:50:05 (1 data files) — data/orphan-cleanup-20260716/latest.json
  380. 47af879 2026-09-08 auto-data-snapshot: 2026-09-08T01:23:26 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  381. e7e05cb 2026-09-08 auto-data-snapshot: 2026-09-08T00:07:00 (1 data files) — data/orphan-cleanup-20260716/latest.json
  382. 0edc92c 2026-09-07 auto-data-snapshot: 2026-09-07T21:35:10 (4 data files) — scripts/sanderson-onboard/out/.guard-seen scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl
  383. 02da0cf 2026-09-07 auto-data-snapshot: 2026-09-07T17:47:47 (1 data files) — data/orphan-cleanup-20260716/latest.json
  384. 718a062 2026-09-07 auto-data-snapshot: 2026-09-07T12:00:23 (1 data files) — data/orphan-cleanup-20260716/latest.json
  385. 36f6a66 2026-09-07 auto-data-snapshot: 2026-09-07T08:09:05 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  386. 7f3b36d 2026-09-07 auto-data-snapshot: 2026-09-07T06:12:13 (1 data files) — data/orphan-cleanup-20260716/latest.json
  387. 5ec49ad 2026-09-07 fix guard.mjs: use full psql path for launchd restricted PATH
  388. 15d39b7 2026-09-07 auto-data-snapshot: 2026-09-07T01:42:31 (4 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out scripts/stroheim-onboard/out/settlement-429-breaker.json scripts/stroheim-onboard/out/settlement-attempts.jsonl
  389. 9199b3d 2026-09-07 auto-data-snapshot: 2026-09-07T01:04:07 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  390. 6cd36ae 2026-09-06 auto-data-snapshot: 2026-09-06T23:46:49 (1 data files) — data/orphan-cleanup-20260716/latest.json
  391. 033da4b 2026-09-06 auto-data-snapshot: 2026-09-06T21:51:55 (5 data files) — scripts/sanderson-onboard/out/.guard-seen scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl
  392. bfb5bac 2026-09-06 auto-data-snapshot: 2026-09-06T18:01:40 (1 data files) — data/orphan-cleanup-20260716/latest.json
  393. 6375efd 2026-09-06 auto-data-snapshot: 2026-09-06T12:15:28 (1 data files) — data/orphan-cleanup-20260716/latest.json
  394. cc5b280 2026-09-06 auto-data-snapshot: 2026-09-06T08:25:53 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  395. b87adc7 2026-09-06 auto-data-snapshot: 2026-09-06T05:51:58 (1 data files) — data/orphan-cleanup-20260716/latest.json
  396. c0c4628 2026-09-06 auto-data-snapshot: 2026-09-06T04:34:41 (1 data files) — scripts/sanderson-onboard/out/payloads-imgfixed.jsonl.bak-20260906-041722
  397. c894401 2026-09-06 TK-yoloforever: strip foreign gallery images from payloads-imgfixed.jsonl (SAW filter pass)
  398. 5740f30 2026-09-06 auto-data-snapshot: 2026-09-06T01:23:16 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  399. a10a512 2026-09-06 auto-data-snapshot: 2026-09-06T00:06:24 (1 data files) — data/orphan-cleanup-20260716/latest.json
  400. 50e935a 2026-09-05 auto-data-snapshot: 2026-09-05T21:33:11 (5 data files) — scripts/sanderson-onboard/out/.guard-seen scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl
  401. 814e7c7 2026-09-05 auto-data-snapshot: 2026-09-05T17:43:09 (1 data files) — data/orphan-cleanup-20260716/latest.json
  402. 5c731b0 2026-09-05 auto-data-snapshot: 2026-09-05T11:58:24 (1 data files) — data/orphan-cleanup-20260716/latest.json
  403. 103088b 2026-09-05 auto-data-snapshot: 2026-09-05T08:08:29 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  404. 351b5c2 2026-09-05 auto-data-snapshot: 2026-09-05T06:13:03 (1 data files) — data/orphan-cleanup-20260716/latest.json
  405. e2234e0 2026-09-05 Fix sanderson guard NODE path under launchd restricted PATH (TK-11276)
  406. da5be31 2026-09-05 auto-data-snapshot: 2026-09-05T01:06:29 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  407. f060669 2026-09-04 auto-data-snapshot: 2026-09-04T23:48:35 (1 data files) — data/orphan-cleanup-20260716/latest.json
  408. b3cb733 2026-09-04 auto-data-snapshot: 2026-09-04T21:53:46 (4 data files) — scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl
  409. 693dfa7 2026-09-04 auto-data-snapshot: 2026-09-04T18:04:25 (1 data files) — data/orphan-cleanup-20260716/latest.json
  410. 5c82211 2026-09-04 Guard manufacturer rollback against observed value drift
  411. 3733067 2026-09-04 TK-11061: reprice ~457 real-roll variants with leaked $4.25 sample price
  412. f32a9c1 2026-09-04 TK-11046: Sanderson Dalmatians activate + dup-draft cleanup + rollback-map
  413. c9a5901 2026-09-04 TK-10209: publish 435 O&L products missing from Google/YouTube channel
  414. 86ca8d4 2026-09-04 TK-11076: Hollywood rollback artifact (no-op — batch judged unsafe, not run)
  415. bfae207 2026-09-04 TK-11076: colorway-title-anchor PL-exclusion + Malibu run scripts
  416. 7c24b65 2026-09-04 TK-11076: Cole & Son color-facet remediation + rollback scripts
  417. 9412d37 2026-09-04 auto-data-snapshot: 2026-09-04T12:10:54 (1 data files) — data/orphan-cleanup-20260716/latest.json
  418. 42ff8de 2026-09-04 chore: v0.1.10 — TK-11237 desc gate+backfill, TK-11239 showroom-tag fix (session close)
  419. 142b871 2026-09-04 TK-11239: remove erroneous 'Showroom Line' tag from 1005 Architectural Fabrics (live+mirror), keep 'quotes'
  420. 315ace2 2026-09-04 auto-data-snapshot: 2026-09-04T10:48:46 (1 data files) — scripts/tk11237-desc-backfill/out/restore-map-tags.jsonl
  421. ae8bdd3 2026-09-04 TK-11237: backfill applied — 1005 descriptions live + restore-map (reversibility record)
  422. 9024a0d 2026-09-04 auto-data-snapshot: 2026-09-04T10:10:38 (8 data files) — scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-04T16-50-44-071Z.jsonl scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-04T16-59-40-516Z.jsonl scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-04T17-01-40-759Z.jsonl scripts/mfr-backfill-tk10162/out/restore-map-pr-REAPPLY-10-real-2026-09-04.jsonl scripts/tk11237-desc-backfill/out/applied.jsonl
  423. 72708b7 2026-09-04 TK-11226 DTD-A residual: upgrade 10 PR products synth->real mfr# (Xref-B)
  424. b5eddda 2026-09-04 TK-11237: description backfill tooling — grounded generator + snapshot-first applier + rollback
  425. 844d921 2026-09-04 TK-11237: add no-description go-live gate to 6 ungated onboarders — HOLD as draft if body_html empty
  426. 5c650c9 2026-09-04 TK-11226: filtered synth-only restore-map for the gated 143-row reverse
  427. fb2edd9 2026-09-04 auto-data-snapshot: 2026-09-04T09:09:45 (2 data files) — scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-04T15-27-46-242Z.jsonl scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-04T15-30-30-590Z.jsonl
  428. b0e852b 2026-09-04 TK-11226: PR mfr# backfill remainder — 227 other-sublabel products
  429. 10d1c8c 2026-09-04 auto-data-snapshot: 2026-09-04T08:26:29 (5 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.out
  430. 6a98516 2026-09-04 auto-data-snapshot: 2026-09-04T05:53:32 (1 data files) — data/orphan-cleanup-20260716/latest.json
  431. d9e58c0 2026-09-04 auto-data-snapshot: 2026-09-04T01:14:11 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  432. 6b1f54c 2026-09-03 auto-data-snapshot: 2026-09-03T23:58:03 (1 data files) — data/orphan-cleanup-20260716/latest.json
  433. 3c810a1 2026-09-03 auto-data-snapshot: 2026-09-03T22:04:18 (2 data files) — scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl
  434. 98baf7d 2026-09-03 auto-data-snapshot: 2026-09-03T21:26:08 (4 data files) — scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl
  435. c29202c 2026-09-03 auto-data-snapshot: 2026-09-03T18:54:12 (3 data files) — scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-04T01-35-13-048Z.jsonl scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl scripts/mfr-backfill-tk10162/out/unresolved-pr-2026-09-04T01-35-13-048Z.jsonl
  436. 02e3387 2026-09-03 auto-data-snapshot: 2026-09-03T18:17:45 (2 data files) — data/orphan-cleanup-20260716/latest.json scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl
  437. 9748355 2026-09-03 auto-data-snapshot: 2026-09-03T17:39:42 (1 data files) — scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl
  438. 1dd7eed 2026-09-03 auto-data-snapshot: 2026-09-03T17:01:36 (1 data files) — scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl
  439. 1519be6 2026-09-03 auto-data-snapshot: 2026-09-03T16:23:17 (1 data files) — scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl
  440. 1fe855c 2026-09-03 auto-data-snapshot: 2026-09-03T15:45:08 (1 data files) — scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl
  441. 9719ead 2026-09-03 auto-data-snapshot: 2026-09-03T15:07:41 (1 data files) — scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl
  442. 05e0fe0 2026-09-03 auto-data-snapshot: 2026-09-03T14:29:24 (4 data files) — scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-03T20-49-19-199Z.jsonl scripts/mfr-backfill-tk10162/out/restore-map-pr-2026-09-03T20-49-19-199Z.jsonl scripts/mfr-backfill-tk10162/out/unresolved-pr-2026-09-03T20-49-19-199Z.jsonl scripts/pj-mfr-backfill/rollback-ledger.jsonl
  443. 8c0f414 2026-09-03 auto-data-snapshot: 2026-09-03T13:47:49 (4 data files) — scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-03T20-42-48-464Z.jsonl scripts/mfr-backfill-tk10162/out/plan-pr-2026-09-03T20-45-14-836Z.jsonl scripts/mfr-backfill-tk10162/out/unresolved-pr-2026-09-03T20-45-14-836Z.jsonl scripts/pj-mfr-backfill/rollback-ledger.jsonl
  444. 239eed3 2026-09-03 TK-11186 Leg A1: rebuild google-feed with showroom gate — feed-clean.tsv PJ 131->0 (all 3392 PJ excluded showroom_only_addressable_not_discoverable)
  445. 8ea60d0 2026-09-03 auto-data-snapshot: 2026-09-03T13:07:42 (8 data files) — scripts/google-feed/data/google-feed/punch-list.csv scripts/google-feed/data/google-feed/punch-list.md scripts/google-feed/data/google-feed/unpublish-list-showroom.csv scripts/google-feed/data/google-feed/unpublish-list.csv scripts/sanderson-onboard/out/tombstone-4-sanderson-SNAPSHOT-20260903T124334.json
  446. d5f04b6 2026-09-03 TK-11186: A2 residual-drain utility + canonical 2293 publication restore-map (rollback coverage)
  447. 4b3a65e 2026-09-03 google-feed A2: showroom-scoped unpublish generator + hard --showroom-only guard on apply-unpublish (TK-11193)
  448. a4b3584 2026-09-03 TK-11046 WS-C: GMC price resolver must not read a tombstone row
  449. f84dd8b 2026-09-03 auto-data-snapshot: 2026-09-03T12:32:21 (10 data files) — scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/tk10372-fix/rollback-1788462538402.json scripts/tk11186-showroom-hide/out/a2-restore-map-2026-09-03T18-56-47-813Z.json scripts/tk11186-showroom-hide/out/a2-restore-map-2026-09-03T18-57-30-849Z.json
  450. 15d8c9c 2026-09-03 TK-11186 Step E: fix theme-deploy verify (PUT checksum + GET backoff) — the read-after-write race false-failed a PUT that actually landed
  451. 5555d3e 2026-09-03 TK-11186 Step D+E prep: showroom-vendor guard in New Arrivals + Trending taggers; fresh 855-row restore-map; Step E surgical 2-asset theme deploy (data-driven hide + render-time card skip) for LIVE theme 145121607731
  452. df3ec4b 2026-09-03 sanderson verify: suppress deleted-tombstone false-positive orphans (TK-11046)
  453. e45ffc0 2026-09-03 TK-11186: A2 GMC-channel unpublisher (PJ-scoped, publication restore-map, reversible) + shop showroom_vendors metafield setter
  454. 9f550a9 2026-09-03 TK-10372: turnkey fix+rollback for final 3 dup-image cross-links (Beechnut/Blonde Pearl/Golden Age); sources verified, gated write
  455. d455f5d 2026-09-03 TK-11186: showroom-vendor suppression enforcement — tagger guards (New Arrival + Trending reconcilers) + Step D remove-tags toolkit (restore-map + rollback)
  456. cda6d43 2026-09-03 auto-data-snapshot: 2026-09-03T11:49:57 (8 data files) — data/orphan-cleanup-20260716/latest.json scripts/mfr-backfill-tk10162/out/backfill-complete.flag scripts/mfr-backfill-tk10162/out/plan-elitis-2026-09-03T18-45-40-366Z.jsonl scripts/mfr-backfill-tk10162/out/plan-vahallan-2026-09-03T18-45-36-102Z.jsonl scripts/mfr-backfill-tk10162/out/restore-map-elitis-2026-09-03T17-58-39-559Z.jsonl
  457. 2cce80e 2026-09-03 Google feed: hard-exclude showroom-only vendors (Phillip Jeffries) via isShowroomVendor (TK-11186)
  458. 751fb7d 2026-09-03 auto-data-snapshot: 2026-09-03T11:10:51 (3 data files) — scripts/mfr-backfill-tk10162/out/plan-elitis-2026-09-03T17-58-39-559Z.jsonl scripts/mfr-backfill-tk10162/out/restore-map-elitis-2026-09-03T17-58-39-559Z.jsonl scripts/mfr-backfill-tk10162/out/restore-map-vahallan-2026-09-03T17-11-47-652Z.jsonl
  459. 1fa3961 2026-09-03 auto-data-snapshot: 2026-09-03T10:32:28 (16 data files) — scripts/mfr-backfill-tk10162/out/plan-elitis-2026-09-03T17-04-17-735Z.jsonl scripts/mfr-backfill-tk10162/out/plan-pj-2026-09-03T17-02-52-850Z.jsonl scripts/mfr-backfill-tk10162/out/plan-pj-2026-09-03T17-03-46-081Z.jsonl scripts/mfr-backfill-tk10162/out/plan-vahallan-2026-09-03T17-04-13-541Z.jsonl scripts/mfr-backfill-tk10162/out/plan-vahallan-2026-09-03T17-06-20-751Z.jsonl
  460. b0f1d98 2026-09-03 fix remove-194-collisions: metafieldDelete->REST delete by id (2024-10 has no metafieldDelete mutation); remove ALL matching namespaces (custom+global), not just first
  461. 18eb4cc 2026-09-03 TK-11131: PJ mfr# — 706/194 collision split + delete-194 corrective (all 900 already applied live)
  462. 315d327 2026-09-03 mfr-backfill-tk10162: dry-run-first, reversible manufacturer_sku backfill tooling (TK-10162)
  463. 3e15258 2026-09-03 auto-data-snapshot: 2026-09-03T09:14:19 (1 data files) — scripts/mfr-backfill-tk10162/out/plan-pj-2026-09-03T16-13-20-548Z.jsonl
  464. cd4e660 2026-09-03 TK-11131: PJ go-live-gate mfr# backfill — dry-run mapping + backfill/rollback/collision (NOT executed)
  465. eadef9f 2026-09-03 onboard go-live: add TK-10303 manufacturer_sku gate to 3 ungated .js scripts (TK-10162)
  466. 6c013da 2026-09-03 auto-data-snapshot: 2026-09-03T08:35:39 (6 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json scripts/sanderson-onboard/out/verify.err
  467. dab899d 2026-09-03 auto-data-snapshot: 2026-09-03T06:01:09 (1 data files) — data/orphan-cleanup-20260716/latest.json
  468. a680e96 2026-09-03 auto-data-snapshot: 2026-09-03T01:36:04 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  469. 67ee239 2026-09-02 auto-data-snapshot: 2026-09-02T23:42:20 (1 data files) — data/orphan-cleanup-20260716/latest.json
  470. 9ad2e76 2026-09-02 auto-data-snapshot: 2026-09-02T21:48:54 (2 data files) — scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out
  471. fd91592 2026-09-02 Keep Stroheim breaker failures fail closed
  472. bff26d1 2026-09-02 Harden Stroheim settlement breaker state
  473. 795876a 2026-09-02 Add Stroheim Gemini 429 circuit breaker
  474. 3639736 2026-09-02 auto-data-snapshot: 2026-09-02T18:02:03 (1 data files) — data/orphan-cleanup-20260716/latest.json
  475. 24e392c 2026-09-02 auto-data-snapshot: 2026-09-02T16:45:26 (1 data files) — scripts/osborne-publish/data/publish-reversibility-435.jsonl
  476. 145b104 2026-09-02 auto-data-snapshot: 2026-09-02T16:03:42 (3 data files) — scripts/osborne-publish/data/publish-reversibility-435.jsonl scripts/osborne-publish/data/verify-state-2026-08-28-ARCHIVE.json scripts/osborne-publish/data/verify-state.json
  477. 23824b0 2026-09-02 auto-data-snapshot: 2026-09-02T12:07:47 (1 data files) — data/orphan-cleanup-20260716/latest.json
  478. 28066e8 2026-09-02 osborne roll-add-apply.mjs: prefer SHOPIFY_FULL_ACCESS_TOKEN for write_inventory (TK-11046)
  479. 9bce15d 2026-09-02 auto-data-snapshot: 2026-09-02T10:48:45 (4 data files) — scripts/colorway-title-anchor/out/malibu-comma44.txt scripts/colorway-title-anchor/out/tk11076-Malibu_Wallpaper-diff.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json
  480. ddeda43 2026-09-02 sanderson TK-11046: verify canary gains orphan detector (golive-done but not ACTIVE)
  481. e27a790 2026-09-02 auto-data-snapshot: 2026-09-02T10:09:29 (3 data files) — scripts/colorway-title-anchor/out/tk11076-Malibu_Wallpaper-diff.json scripts/sanderson-onboard/out/latest.json scripts/sanderson-onboard/out/verify-state.json
  482. 94be314 2026-09-02 tres-tintas-onboard: golive resolves SHOPIFY_FULL_ACCESS_TOKEN for write_inventory (TK-11046)
  483. d17c5f2 2026-09-02 fallingstar-onboard: golive resolves SHOPIFY_FULL_ACCESS_TOKEN for write_inventory (TK-11046)
  484. 8068bd7 2026-09-02 artmura-onboard: golive resolves SHOPIFY_FULL_ACCESS_TOKEN for write_inventory (TK-11046)
  485. d99146d 2026-09-02 osborne-onboard: golive uses SHOPIFY_FULL_ACCESS_TOKEN for write_inventory (TK-11046)
  486. 26fad31 2026-09-02 sanderson TK-11046: real daily verify canary (green) — read-only health check on the nightly 506 create->golive job
  487. 2fa623a 2026-09-02 auto-data-snapshot: 2026-09-02T09:35:20 (15 data files) — scripts/colorway-title-anchor/out/malibu-chunk-aa scripts/colorway-title-anchor/out/malibu-chunk-ab scripts/colorway-title-anchor/out/malibu-chunk-ac scripts/colorway-title-anchor/out/malibu-chunk-ad scripts/colorway-title-anchor/out/malibu-chunk-ae
  488. dd1b3aa 2026-09-02 auto-data-snapshot: 2026-09-02T09:04:08 (2 data files) — scripts/colorway-title-anchor/out/tk11076-Hollywood_Wallcoverings-diff.json scripts/colorway-title-anchor/out/tk11076-Malibu_Wallpaper-diff.json
  489. 674d2ab 2026-09-02 sanderson: advance .guard-seen 244->302 (guard.mjs first successful run under TK-11098 verification)
  490. 2d4faa3 2026-09-02 colorway-retag: add --only=h1,h2 handle filter so a pilot is code-bounded (no bare --vendor --apply overrun)
  491. e860e14 2026-09-02 sanderson daily-batch: fix NODE unbound under set -u so the post-golive guard + self-terminate actually run
  492. 3e5254b 2026-09-02 auto-data-snapshot: 2026-09-02T08:25:36 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  493. 038c26b 2026-09-02 auto-data-snapshot: 2026-09-02T05:54:41 (1 data files) — data/orphan-cleanup-20260716/latest.json
  494. 0c71dd1 2026-09-02 auto-data-snapshot: 2026-09-02T01:30:59 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  495. 60690df 2026-09-02 auto-data-snapshot: 2026-09-02T00:52:55 (5 data files) — scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out scripts/sanderson-onboard/out/golive-done.jsonl scripts/sanderson-onboard/out/golive-skipped.jsonl
  496. c210abf 2026-09-02 auto-data-snapshot: 2026-09-02T00:14:50 (1 data files) — data/orphan-cleanup-20260716/latest.json
  497. 523bf26 2026-09-01 auto-data-snapshot: 2026-09-01T21:07:52 (21 data files) — scripts/colorway-title-anchor/out/run-remaining-missing.out scripts/colorway-title-anchor/out/tk11076-Arte_International-diff.json scripts/colorway-title-anchor/out/tk11076-Brand_McKenzie-diff.json scripts/colorway-title-anchor/out/tk11076-Designers_Guild-diff.json scripts/colorway-title-anchor/out/tk11076-Graduate_Collection_UK-diff.json
  498. 354e090 2026-09-01 auto-data-snapshot: 2026-09-01T20:30:38 (9 data files) — scripts/colorway-title-anchor/out/run-remaining-missing.out scripts/colorway-title-anchor/out/tk11076-Daisy_Bennett-diff.json scripts/colorway-title-anchor/out/tk11076-Donghia-diff.json scripts/colorway-title-anchor/out/tk11076-Groundworks-diff.json scripts/colorway-title-anchor/out/tk11076-Mulberry-diff.json
  499. bd2002f 2026-09-01 auto-data-snapshot: 2026-09-01T19:53:19 (17 data files) — scripts/colorway-title-anchor/out/tk11076-Brand_McKenzie-diff.json scripts/colorway-title-anchor/out/tk11076-Hand_Crafted-diff.json scripts/colorway-title-anchor/out/tk11076-Kravet-diff.json scripts/colorway-title-anchor/out/tk11076-Madagascar_Walls-diff.json scripts/colorway-title-anchor/out/tk11076-Marburg-diff.json
  500. 4ccde7b 2026-09-01 auto-data-snapshot: 2026-09-01T19:16:04 (2 data files) — scripts/colorway-title-anchor/out/tk11076-Kravet-diff.json scripts/colorway-title-anchor/out/tk11076-Mind_the_Gap-diff.json
  501. ea31c48 2026-09-01 auto-data-snapshot: 2026-09-01T18:38:25 (2 data files) — scripts/colorway-title-anchor/out/tk11076-China_Seas-diff.json scripts/colorway-title-anchor/out/tk11076-Phillip_Jeffries-diff.json
  502. df4eff3 2026-09-01 auto-data-snapshot: 2026-09-01T18:00:51 (5 data files) — data/orphan-cleanup-20260716/latest.json package-lock.json scripts/colorway-title-anchor/out/tk11076-Marburg-diff.json scripts/colorway-title-anchor/out/tk11076-Rebel_Walls-diff.json scripts/sanderson-onboard/out/.guard-seen
  503. cb50cad 2026-09-01 TK-11076: SKIP comma-form titles whose pre-comma pattern is the brand name (Marburg, X — no real colorway)
  504. 8339f05 2026-09-01 chore: v0.1.9 (session close — sanderson daily-batch payload fix + anomaly guard)
  505. 98f971f 2026-09-01 TK-11076: sanitize commas in color: tag (Shopify splits tags on comma) — keep metafield verbatim
  506. 0d054c4 2026-09-01 TK-11070: hero-fix tool — re-upload correct per-colorway hero + reorder to pos1 on the 36 stale-image live Sanderson products (demote-only, reversible, rollback-mapped)
  507. f4eb073 2026-09-01 sanderson daily-batch: add post-golive anomaly guard (DTD verdict C) — halts via kill-switch on foreign-image/misprice/over-cap
  508. 9397fb1 2026-09-01 auto-data-snapshot: 2026-09-01T17:22:42 (11 data files) — scripts/colorway-title-anchor/out/tk11076-China_Seas-diff.json scripts/colorway-title-anchor/out/tk11076-Kravet-diff.json scripts/colorway-title-anchor/out/tk11076-Marburg-diff.json scripts/colorway-title-anchor/out/tk11076-Maya_Romanoff-diff.json scripts/colorway-title-anchor/out/tk11076-Mind_the_Gap-diff.json
  509. 24e3951 2026-09-01 sanderson daily-batch: use image-clean + 1.81-priced payloads-imgfixed.jsonl (2026-09-01)
  510. bee69fa 2026-09-01 auto-data-snapshot: 2026-09-01T16:44:49 (4 data files) — scripts/colorway-title-anchor/out/tk11076-Brunschwig_Fils-diff.json scripts/colorway-title-anchor/out/tk11076-GP_J_Baker-diff.json scripts/colorway-title-anchor/out/tk11076-Maya_Romanoff-diff.json scripts/colorway-title-anchor/out/tk11076-Ralph_Lauren-diff.json
  511. fdfca88 2026-09-01 TK-11070: modal-code hero correction (fixes inverted hero-selection) + delete-safety guard
  512. 6121aae 2026-09-01 auto-data-snapshot: 2026-09-01T16:07:10 (5 data files) — scripts/colorway-title-anchor/out/tk11076-Clarke_And_Clarke-diff.json scripts/colorway-title-anchor/out/tk11076-Gaston_Y_Daniela-diff.json scripts/colorway-title-anchor/out/tk11076-Harlequin-diff.json scripts/colorway-title-anchor/out/tk11076-Nina_Campbell-diff.json scripts/colorway-title-anchor/out/tk11076-Romo-diff.json
  513. c1eb1e9 2026-09-01 snapshot before TK-11070 hero-modal correction
  514. a27f48f 2026-09-01 auto-data-snapshot: 2026-09-01T14:52:01 (4 data files) — scripts/colorway-title-anchor/out/tk11076-Anna_French-diff.json scripts/colorway-title-anchor/out/tk11076-Scalamandre_Wallpaper-diff.json scripts/sanderson-onboard/out/created.five.jsonl scripts/sanderson-onboard/out/golive-done.jsonl
  515. da97eb6 2026-09-01 auto-data-snapshot: 2026-09-01T14:14:21 (2 data files) — scripts/colorway-title-anchor/out/tk11076-Cole_Son-diff.json scripts/colorway-title-anchor/out/tk11076-exclusion.json
  516. 062be9a 2026-09-01 auto-data-snapshot: 2026-09-01T13:36:10 (3 data files) — scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/golive-done.jsonl scripts/sanderson-onboard/out/golive-skipped.jsonl
  517. 801f3c5 2026-09-01 TK-11076: title-anchored colorway parser + fleet retag driver + rollback (canary DRY-RUN, no Shopify writes)
  518. 3d0551a 2026-09-01 auto-data-snapshot: 2026-09-01T12:55:30 (10 data files) — scripts/coleson-onboard/out/tk11076-skips.json scripts/malibu-onboard/out/tk11076-canary.json scripts/rebelwalls-onboard/out/tk11076-canary-diff.json scripts/rebelwalls-onboard/out/tk11076-skips.json scripts/sanderson-onboard/out/created.canary20.jsonl
  519. 9b0e128 2026-09-01 TK-11076 Anna French colorway retag: remediate+rollback+canary (stopped-canary-unsafe — strip cannot cleanly separate palette noise from real colors)
  520. a6fd514 2026-09-01 TK-11076: Rebel Walls AI-palette retag remediate+rollback (canary-safe, per-item reversible)
  521. 8e552b1 2026-09-01 TK-11076: Kravet colorway retag scripts + canary halt (anchor color_name is AI-derived, not vendor colorway)
  522. ce61a40 2026-09-01 TK-11076 China Seas retag: canary-first remediate+rollback scripts (STOPPED unsafe — color_name anchor unreliable vs title colorway)
  523. 672d319 2026-09-01 TK-11076: PJ retag halted at canary gate (stopped-canary-unsafe) — canary + rollback executor
  524. c3c3b07 2026-09-01 TK-11073 Wave2: Stout LIVE remediation — 180 products retagged
  525. 76fe1a2 2026-09-01 auto-data-snapshot: 2026-09-01T12:16:45 (5 data files) — data/orphan-cleanup-20260716/latest.json scripts/knoll-onboard/out/payloads.jsonl scripts/osborne-onboard/out/payloads.jsonl scripts/rigo-onboard/out/payloads.jsonl scripts/stout-onboard/out/tk11073-skips.json
  526. 5eebaac 2026-09-01 TK-11073 Wave4: fleetwide CSS-keyword artifact tag cleanup (32 products)
  527. e0cf48e 2026-09-01 TK-11073 Wave3: defensive image-keep filter + muralsource/rigo color-from-color_name
  528. 07a4911 2026-09-01 TK-11073 Wave2: Stout color: facet from real color_name, drop AI-palette bare-tags
  529. b61983c 2026-09-01 TK-11073 Wave1: Osborne LIVE remediation — 29 real-title products retagged
  530. 8950edf 2026-09-01 TK-11073 Wave1: Osborne color: facet from real colorway (title_core − pattern_name), drop AI-palette bare-tags
  531. 9b75f40 2026-09-01 auto-data-snapshot: 2026-09-01T10:56:56 (8 data files) — scripts/google-feed/data/google-feed/exclusions.json scripts/google-feed/data/google-feed/feed-clean.tsv scripts/google-feed/data/google-feed/report.json scripts/google-feed/data/google-feed/tk11061/commit.sha scripts/google-feed/data/google-feed/tk11061/restore-map.json
  532. 81226bf 2026-09-01 feat(gmc): exclude quote_only class from Google feed (Fentucci/Tokiwa 504, RIGO/CMO precedent)
  533. d3e1577 2026-09-01 Sanderson TK-11070 batch-remediation + rollback scripts
  534. 572262d 2026-09-01 Sanderson importer: repair X&Y pattern/color split for color: facet (TK-11070)
  535. 349d204 2026-09-01 Sanderson importer: fix color-tag source + selective image dedup (TK-11070)
  536. 4e55a40 2026-09-01 auto-data-snapshot: 2026-09-01T08:28:16 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  537. c9ca13a 2026-09-01 TK-11061 Fix A scan: 457 GMC leaks confirmed = all Fentucci Naturals $0 quote-only rolls, no confident retail -> SKIP all, zero Shopify writes
  538. aa004bd 2026-09-01 auto-data-snapshot: 2026-09-01T05:58:40 (1 data files) — data/orphan-cleanup-20260716/latest.json
  539. 7cf5e6a 2026-09-01 TK-11055: lib/shopify.mjs prefer SHOPIFY_FULL_ACCESS_TOKEN for write_inventory scope
  540. 8a770d7 2026-09-01 auto-data-snapshot: 2026-09-01T01:01:38 (7 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out
  541. 602b192 2026-09-01 auto-data-snapshot: 2026-09-01T00:24:29 (3 data files) — scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/daily-batch.err scripts/sanderson-onboard/out/daily-batch.out
  542. eb328ef 2026-08-31 auto-data-snapshot: 2026-08-31T23:47:36 (1 data files) — data/orphan-cleanup-20260716/latest.json
  543. 1496a4b 2026-08-31 auto-data-snapshot: 2026-08-31T18:15:28 (1 data files) — data/orphan-cleanup-20260716/latest.json
  544. 52e37c8 2026-08-31 auto-data-snapshot: 2026-08-31T15:44:48 (1 data files) — scripts/sanderson-onboard/out/golive-skipped.jsonl
  545. a1e25a3 2026-08-31 chore: add sanderson daily create->golive batch wrapper, v0.1.8 (session close)
  546. dbfa0d1 2026-08-31 sanderson onboard batch#1: 56 products created+activated live (58/506 now live)
  547. 9cbce45 2026-08-31 sanderson-onboard: golive uses SHOPIFY_FULL_ACCESS_TOKEN for write_inventory (TK-11046)
  548. 7afe903 2026-08-31 auto-data-snapshot: 2026-08-31T12:34:16 (1 data files) — board-light.png
  549. 50685e3 2026-08-31 auto-data-snapshot: 2026-08-31T11:55:57 (5 data files) — data/orphan-cleanup-20260716/latest.json scripts/sanderson-onboard/out/created.jsonl scripts/sanderson-onboard/out/golive-done.jsonl scripts/sanderson-onboard/out/golive-skipped.jsonl scripts/tk-00058-fentucci-needs-width/_resolved/fentucci-needs-width-before-2026-08-31T18-49-14-141Z.jsonl
  550. 2b62045 2026-08-31 Draft TK-10456 vendor pricing requests
  551. a150b98 2026-08-31 TK-00058 fix: rename const URL->API_URL in fentucci clear (TDZ shadowed global URL constructor; canary caught it)
  552. 1cd9880 2026-08-31 Add TK-10456 price recovery probe
  553. 71d3f69 2026-08-31 auto-data-snapshot: 2026-08-31T11:17:15 (2 data files) — scripts/sanderson-onboard/out/payloads.jsonl scripts/stroheim-onboard/out/settlement-attempts.jsonl
  554. 2b29af0 2026-08-31 TK-00058: publishable-only Sanderson payloads (506) + create --payloads flag; Fentucci needs_width clear script
  555. 8d88bcb 2026-08-31 auto-data-snapshot: 2026-08-31T10:38:49 (1 data files) — scripts/stroheim-onboard/out/settlement-attempts.jsonl
  556. 2901b2c 2026-08-31 auto-data-snapshot: 2026-08-31T08:15:07 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  557. 766bba3 2026-08-31 auto-data-snapshot: 2026-08-31T05:45:56 (1 data files) — data/orphan-cleanup-20260716/latest.json
  558. 9566cbe 2026-08-31 auto-data-snapshot: 2026-08-31T03:16:33 (2 data files) — scripts/osborne-relabel/data/enumerate-2026-08-31T10-11-38-794Z.json scripts/osborne-relabel/data/enumerate-latest.json
  559. 7c482eb 2026-08-31 auto-data-snapshot: 2026-08-31T01:22:16 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  560. 9ebc560 2026-08-31 auto-data-snapshot: 2026-08-31T00:07:16 (1 data files) — data/orphan-cleanup-20260716/latest.json
  561. 9f6b18c 2026-08-30 auto-data-snapshot: 2026-08-30T20:17:31 (1 data files) — data/orphan-cleanup-20260716/latest.json
  562. d22202c 2026-08-30 auto-data-snapshot: 2026-08-30T14:05:24 (1 data files) — data/orphan-cleanup-20260716/latest.json
  563. fce3887 2026-08-30 reconcile Stroheim monthly scheduler contract
  564. 13c9e25 2026-08-30 record TK-10965 full canary evidence
  565. a565806 2026-08-30 verify TK-10965 zero-price root cause
  566. c8b7084 2026-08-30 auto-data-snapshot: 2026-08-30T09:43:11 (1 data files) — verification/TK-10965-canonical-comparison.json
  567. c71677c 2026-08-30 auto-data-snapshot: 2026-08-30T08:29:04 (4 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/stroheim-onboard/out/settlement-attempts.jsonl
  568. 68ea201 2026-08-30 add redacted Stroheim Gemini diagnostics
  569. bb130ed 2026-08-30 record one-item Stroheim network canary
  570. 9dc3b11 2026-08-30 auto-data-snapshot: 2026-08-30T02:17:29 (1 data files) — data/orphan-cleanup-20260716/latest.json
  571. af739d7 2026-08-30 auto-data-snapshot: 2026-08-30T01:03:40 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  572. b1d7b3c 2026-08-29 auto-data-snapshot: 2026-08-29T20:09:38 (1 data files) — data/orphan-cleanup-20260716/latest.json
  573. 2211117 2026-08-29 fix Stroheim settlement hangs with bounded watchdog
  574. 6c4a2da 2026-08-29 auto-data-snapshot: 2026-08-29T14:38:58 (1 data files) — data/orphan-cleanup-20260716/latest.json
  575. 072f332 2026-08-29 auto-data-snapshot: 2026-08-29T12:47:37 (1 data files) — scripts/stroheim-onboard/out/launchd.err
  576. b200f87 2026-08-29 auto-data-snapshot: 2026-08-29T10:19:53 (1 data files) — scripts/stroheim-onboard/out/launchd.out
  577. ae3d5c8 2026-08-29 auto-data-snapshot: 2026-08-29T08:29:29 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  578. 4c317c1 2026-08-29 auto-data-snapshot: 2026-08-29T02:17:31 (1 data files) — data/orphan-cleanup-20260716/latest.json
  579. e617e89 2026-08-29 auto-data-snapshot: 2026-08-29T01:03:04 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  580. 48209fb 2026-08-28 auto-data-snapshot: 2026-08-28T20:07:34 (1 data files) — data/orphan-cleanup-20260716/latest.json
  581. daef592 2026-08-28 auto-data-snapshot: 2026-08-28T14:34:59 (1 data files) — data/orphan-cleanup-20260716/latest.json
  582. 77785ef 2026-08-28 auto-data-snapshot: 2026-08-28T08:24:14 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  583. c711eba 2026-08-28 auto-data-snapshot: 2026-08-28T02:11:10 (1 data files) — data/orphan-cleanup-20260716/latest.json
  584. 0012219 2026-08-28 auto-data-snapshot: 2026-08-28T01:33:48 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  585. 30f8e5c 2026-08-27 auto-data-snapshot: 2026-08-27T20:38:24 (1 data files) — data/orphan-cleanup-20260716/latest.json
  586. 70c6d1f 2026-08-27 TK-10209 Step B: publish 87 osborne products to Google&YouTube channel (canary-first, reversible)
  587. 4fc2cd6 2026-08-27 auto-data-snapshot: 2026-08-27T18:47:45 (1 data files) — scripts/osborne-relabel/data/last-run.json
  588. 1c93f8d 2026-08-27 auto-data-snapshot: 2026-08-27T18:10:50 (1 data files) — scripts/osborne-relabel/data/last-run.json
  589. ed27a2c 2026-08-27 auto-data-snapshot: 2026-08-27T14:29:15 (1 data files) — data/orphan-cleanup-20260716/latest.json
  590. 74c17af 2026-08-27 auto-data-snapshot: 2026-08-27T09:33:34 (1 data files) — scripts/osborne-relabel/data/last-run.json
  591. 845f432 2026-08-27 auto-data-snapshot: 2026-08-27T08:19:36 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  592. 8961e68 2026-08-27 auto-data-snapshot: 2026-08-27T02:12:20 (1 data files) — data/orphan-cleanup-20260716/latest.json
  593. cfcaa55 2026-08-27 auto-data-snapshot: 2026-08-27T01:35:35 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  594. c17a434 2026-08-26 auto-data-snapshot: 2026-08-26T20:07:56 (1 data files) — data/orphan-cleanup-20260716/latest.json
  595. fcffc7f 2026-08-26 fix(stroheim-onboard): settlement-gate.mjs:121 ReferenceError err->skip (job did all work then crashed on summary print, exit 1)
  596. 7e5f6ca 2026-08-26 auto-data-snapshot: 2026-08-26T14:02:58 (1 data files) — data/orphan-cleanup-20260716/latest.json
  597. c79d35c 2026-08-26 auto-data-snapshot: 2026-08-26T08:21:31 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  598. e5bc7de 2026-08-26 auto-data-snapshot: 2026-08-26T06:30:25 (1 data files) — data/orphan-cleanup-20260716/latest.json
  599. 937573f 2026-08-26 auto-data-snapshot: 2026-08-26T02:12:22 (1 data files) — data/orphan-cleanup-20260716/latest.json
  600. 9adddcb 2026-08-26 auto-data-snapshot: 2026-08-26T01:35:22 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  601. 32704a0 2026-08-25 auto-data-snapshot: 2026-08-25T20:06:24 (1 data files) — data/orphan-cleanup-20260716/latest.json
  602. 2f60133 2026-08-25 auto-data-snapshot: 2026-08-25T16:26:17 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  603. 05ed041 2026-08-25 auto-data-snapshot: 2026-08-25T14:34:54 (1 data files) — data/orphan-cleanup-20260716/latest.json
  604. 316c0d8 2026-08-25 auto-data-snapshot: 2026-08-25T11:28:19 (1 data files) — scripts/stroheim-onboard/out/launchd.out
  605. b77c294 2026-08-25 auto-data-snapshot: 2026-08-25T08:16:28 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  606. 953720f 2026-08-25 auto-data-snapshot: 2026-08-25T02:10:50 (1 data files) — data/orphan-cleanup-20260716/latest.json
  607. 4bc0bfb 2026-08-25 auto-data-snapshot: 2026-08-25T01:34:30 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  608. dc3ae45 2026-08-24 auto-data-snapshot: 2026-08-24T20:06:56 (1 data files) — data/orphan-cleanup-20260716/latest.json
  609. 46ae378 2026-08-24 auto-data-snapshot: 2026-08-24T14:29:57 (1 data files) — data/orphan-cleanup-20260716/latest.json
  610. 070d382 2026-08-24 auto-data-snapshot: 2026-08-24T08:30:43 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  611. ce046c1 2026-08-24 auto-data-snapshot: 2026-08-24T02:05:51 (1 data files) — data/orphan-cleanup-20260716/latest.json
  612. 2658f42 2026-08-24 auto-data-snapshot: 2026-08-24T01:01:55 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  613. d93b0c4 2026-08-23 auto-data-snapshot: 2026-08-23T20:15:05 (1 data files) — data/orphan-cleanup-20260716/latest.json
  614. e1ec9cc 2026-08-23 auto-data-snapshot: 2026-08-23T14:25:17 (1 data files) — data/orphan-cleanup-20260716/latest.json
  615. 3060bb7 2026-08-23 auto-data-snapshot: 2026-08-23T08:03:41 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  616. 12bd4e9 2026-08-23 auto-data-snapshot: 2026-08-23T02:11:51 (1 data files) — data/orphan-cleanup-20260716/latest.json
  617. 118f93b 2026-08-23 auto-data-snapshot: 2026-08-23T01:39:39 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  618. 22d1380 2026-08-23 auto-data-snapshot: 2026-08-23T01:07:55 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  619. f392b6d 2026-08-22 auto-data-snapshot: 2026-08-22T20:21:39 (1 data files) — data/orphan-cleanup-20260716/latest.json
  620. 3c7f8d5 2026-08-22 auto-data-snapshot: 2026-08-22T14:31:07 (1 data files) — data/orphan-cleanup-20260716/latest.json
  621. 806c1cd 2026-08-22 feat: carnegie-siltech-grain line-drafter (dry-run default, live-sourced, Cody-hardened) — session close
  622. 822c9a8 2026-08-22 auto-data-snapshot: 2026-08-22T08:08:28 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  623. 0cfecb5 2026-08-22 auto-data-snapshot: 2026-08-22T02:16:01 (1 data files) — data/orphan-cleanup-20260716/latest.json
  624. 1ceca93 2026-08-22 auto-data-snapshot: 2026-08-22T01:12:06 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  625. 3374943 2026-08-21 auto-data-snapshot: 2026-08-21T20:26:15 (1 data files) — data/orphan-cleanup-20260716/latest.json
  626. c515469 2026-08-21 auto-data-snapshot: 2026-08-21T14:05:07 (1 data files) — data/orphan-cleanup-20260716/latest.json
  627. 6127b0d 2026-08-21 auto-data-snapshot: 2026-08-21T08:13:58 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  628. a2b3c1b 2026-08-21 auto-data-snapshot: 2026-08-21T02:22:19 (1 data files) — data/orphan-cleanup-20260716/latest.json
  629. a87952d 2026-08-21 auto-data-snapshot: 2026-08-21T01:18:32 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  630. e7060de 2026-08-20 auto-data-snapshot: 2026-08-20T20:32:50 (1 data files) — data/orphan-cleanup-20260716/latest.json
  631. ef9a78d 2026-08-20 TK-10717: Stout monthly STAGE-ONLY refresh (stout_catalog only, no drafts/go-live); preserve old live-publish drip as .bak
  632. acc2d23 2026-08-20 auto-data-snapshot: 2026-08-20T14:07:04 (1 data files) — data/orphan-cleanup-20260716/latest.json
  633. 8e25402 2026-08-20 auto-data-snapshot: 2026-08-20T08:33:21 (1 data files) — data/orphan-cleanup-20260716/latest.json
  634. a662b3e 2026-08-20 auto-data-snapshot: 2026-08-20T08:00:08 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  635. 16feb3e 2026-08-20 auto-data-snapshot: 2026-08-20T02:33:47 (1 data files) — data/orphan-cleanup-20260716/latest.json
  636. c5ade93 2026-08-20 auto-data-snapshot: 2026-08-20T01:28:23 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  637. e0621e2 2026-08-19 auto-data-snapshot: 2026-08-19T20:02:37 (1 data files) — data/orphan-cleanup-20260716/latest.json
  638. d3a8ef0 2026-08-19 auto-data-snapshot: 2026-08-19T14:34:38 (1 data files) — data/orphan-cleanup-20260716/latest.json
  639. c2992db 2026-08-19 auto-data-snapshot: 2026-08-19T08:31:04 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  640. 225ffda 2026-08-19 auto-data-snapshot: 2026-08-19T02:11:16 (1 data files) — data/orphan-cleanup-20260716/latest.json
  641. acdb4d8 2026-08-19 auto-data-snapshot: 2026-08-19T01:07:41 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  642. 00df842 2026-08-18 auto-data-snapshot: 2026-08-18T20:23:18 (1 data files) — data/orphan-cleanup-20260716/latest.json
  643. 8f6b4e3 2026-08-18 auto-data-snapshot: 2026-08-18T16:40:41 (2 data files) — data/google-feed/exclusions.json data/google-feed/report.json
  644. 882a651 2026-08-18 auto-data-snapshot: 2026-08-18T14:32:35 (1 data files) — data/orphan-cleanup-20260716/latest.json
  645. ac58d66 2026-08-18 untrack 725 rigo-onboard scrape images (1.3G) — onboarding artifacts on Shopify+disk, not code-referenced; unblocks git-bloat history purge (TK-10648, Steve-approved)
  646. c2516b6 2026-08-18 auto-data-snapshot: 2026-08-18T11:17:58 (2 data files) — data/orphan-cleanup-20260716/guard-enforced-ledger.jsonl data/orphan-cleanup-20260716/latest.json
  647. 409e237 2026-08-18 auto-data-snapshot: 2026-08-18T08:10:11 (3 data files) — data/orphan-cleanup-20260716/latest.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  648. 7886d9c 2026-08-18 auto-data-snapshot: 2026-08-18T05:38:34 (1 data files) — data/orphan-cleanup-20260716/latest.json
  649. 73fc43a 2026-08-18 auto-data-snapshot: 2026-08-18T01:05:28 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  650. c911bba 2026-08-17 auto-data-snapshot: 2026-08-17T23:34:22 (1 data files) — data/orphan-cleanup-20260716/latest.json
  651. d761201 2026-08-17 chore(git-bloat): untrack GMC/feed/ref artifacts + gitignore (Step 1, reversible; TK-10608)
  652. e19c2fa 2026-08-17 snapshot before restart: bump sample-split-pilot submodule
  653. 1d601f8 2026-08-17 auto-data-snapshot: 2026-08-17T08:03:25 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  654. 09fa48a 2026-08-17 snapshot before restart: preserve in-flight work (auto-saved by /restart pre-reboot)
  655. 12c12d4 2026-08-17 auto-data-snapshot: 2026-08-17T04:29:37 (1 data files) — data/orphan-cleanup-20260716/latest.json
  656. da4fb3c 2026-08-17 auto-data-snapshot: 2026-08-17T01:26:57 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  657. 7a5ad89 2026-08-16 auto-data-snapshot: 2026-08-16T08:23:33 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  658. 8923246 2026-08-16 auto-data-snapshot: 2026-08-16T01:17:41 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  659. ad2505f 2026-08-15 auto-data-snapshot: 2026-08-15T12:16:23 (1 data files) — data/orphan-cleanup-20260716/latest.json
  660. 63818d8 2026-08-15 auto-data-snapshot: 2026-08-15T08:43:00 (3 data files) — data/orphan-cleanup-20260716/guard.err data/orphan-cleanup-20260716/guard.err.stale-20260806.bak data/orphan-cleanup-20260716/latest.json
  661. 0f883a3 2026-08-15 orphan-publish-guard: resolve psql to absolute path (version-independent), fixing launchd ENOENT class
  662. ec8b7e4 2026-08-15 auto-data-snapshot: 2026-08-15T08:12:28 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  663. 8857b20 2026-08-15 auto-data-snapshot: 2026-08-15T07:41:54 (1 data files) — data/orphan-cleanup-20260716/latest.json
  664. 7515e8d 2026-08-15 auto-data-snapshot: 2026-08-15T04:08:27 (1 data files) — data/orphan-cleanup-20260716/latest.json
  665. 9c0c140 2026-08-15 orphan-publish-guard: emit verdict PASS/WARN for fleet-health-rollup (TK-10546)
  666. a06648a 2026-08-15 auto-data-snapshot: 2026-08-15T01:05:21 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  667. 0947cd0 2026-08-14 auto-data-snapshot: 2026-08-14T08:19:45 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  668. 3936e38 2026-08-14 auto-data-snapshot: 2026-08-14T07:49:23 (1 data files) — data/orphan-cleanup-20260716/latest.json
  669. a0cf63c 2026-08-14 auto-data-snapshot: 2026-08-14T01:13:25 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  670. 7da2cfa 2026-08-13 auto-data-snapshot: 2026-08-13T08:21:55 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  671. 82b7512 2026-08-13 auto-data-snapshot: 2026-08-13T07:20:35 (1 data files) — data/orphan-cleanup-20260716/latest.json
  672. f7005c7 2026-08-13 auto-data-snapshot: 2026-08-13T04:16:27 (1 data files) — data/orphan-cleanup-20260716/latest.json
  673. fada67f 2026-08-13 TK-10518: Hollywood SKU leak — allocation mapping + gated migration script
  674. d7b2786 2026-08-13 TK-10493: orphan-publish-guard — add dw_sku_registry carve-out to prevent false-positive drafts
  675. d342a1b 2026-08-13 auto-data-snapshot: 2026-08-13T01:13:07 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  676. 996a7d7 2026-08-12 auto-data-snapshot: 2026-08-12T08:54:38 (1 data files) — data/orphan-cleanup-20260716/latest.json
  677. a0b0f06 2026-08-12 auto-data-snapshot: 2026-08-12T08:23:24 (4 data files) — package-lock.json scripts/maharam-onboard/out/golive-done.jsonl.bak-20260812-082233 scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  678. 0e397e8 2026-08-12 chore: v0.1.7 (session close) — TK-00060 maharam registry fix; lint+refactor clean, no code changes needed
  679. ec8a6c6 2026-08-12 TK-00060: register Maharam SKUs in dw_sku_registry (create-drafts + go-live) — stops orphan-publish-guard mis-drafting them
  680. b7ad7be 2026-08-12 auto-data-snapshot: 2026-08-12T07:20:53 (1 data files) — data/orphan-cleanup-20260716/latest.json
  681. d9717e6 2026-08-12 auto-data-snapshot: 2026-08-12T05:48:07 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  682. 2ed5f49 2026-08-12 auto-data-snapshot: 2026-08-12T05:17:20 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  683. dcd85cb 2026-08-12 auto-data-snapshot: 2026-08-12T01:09:56 (3 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/stroheim-onboard/out/launchd.out
  684. dd47908 2026-08-11 auto-data-snapshot: 2026-08-11T18:29:19 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  685. 7e44299 2026-08-11 auto-data-snapshot: 2026-08-11T13:51:52 (2 data files) — scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  686. 1a5900d 2026-08-11 auto-data-snapshot: 2026-08-11T08:06:39 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  687. 2544ab1 2026-08-11 auto-data-snapshot: 2026-08-11T07:35:48 (1 data files) — data/orphan-cleanup-20260716/latest.json
  688. 8496bb1 2026-08-11 auto-data-snapshot: 2026-08-11T06:02:59 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  689. cbe67cb 2026-08-11 auto-data-snapshot: 2026-08-11T05:32:12 (3 data files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  690. 7f1ac7a 2026-08-11 auto-data-snapshot: 2026-08-11T01:25:02 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  691. 242e042 2026-08-11 auto-data-snapshot: 2026-08-11T00:54:08 (1 data files) — scripts/stroheim-onboard/out/launchd.out
  692. c72145f 2026-08-10 TK-00060: drip go-live activates ALL pending drafts (drop --limit) — fixes rolling 10 stranded Maharam drafts on live store
  693. 9b1efc7 2026-08-10 auto-data-snapshot: 2026-08-10T18:13:07 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  694. 7a7d132 2026-08-10 auto-data-snapshot: 2026-08-10T14:04:54 (1 data files) — scripts/stroheim-onboard/out/launchd.out
  695. 40416f6 2026-08-10 auto-data-snapshot: 2026-08-10T13:34:07 (1 data files) — scripts/stout-onboard/out/launchd.out
  696. c561a04 2026-08-10 auto-data-snapshot: 2026-08-10T08:23:29 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  697. 6f3c826 2026-08-10 auto-data-snapshot: 2026-08-10T07:21:36 (1 data files) — data/orphan-cleanup-20260716/latest.json
  698. cc4f8e7 2026-08-10 auto-data-snapshot: 2026-08-10T05:48:56 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  699. 7c578f9 2026-08-10 auto-data-snapshot: 2026-08-10T05:18:11 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  700. 6be1245 2026-08-10 auto-data-snapshot: 2026-08-10T01:11:04 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  701. 9e872fd 2026-08-10 auto-data-snapshot: 2026-08-10T00:40:03 (1 data files) — scripts/stroheim-onboard/out/launchd.out
  702. 64f2f8d 2026-08-09 auto-data-snapshot: 2026-08-09T18:30:24 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  703. a49f924 2026-08-09 TK-10014: raised the final 94 residual DWKK rolls to MAP (Steve-approved; 0 fail; DWKK line now 100% MAP-compliant); reversibility ledger
  704. 4ad552e 2026-08-09 auto-data-snapshot: 2026-08-09T13:53:18 (2 data files) — scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  705. ab3e0f0 2026-08-09 TK-10014: read-only full-line DWKK MAP audit (bulk-op) -> exact 94 residual below-MAP (99.35% compliant); 5 egregious; ready list
  706. 8c7dd39 2026-08-09 TK-10014: MED 579 reprice run = verified no-op (all 579 already raised to MAP by parallel process; skip-safeguard 579/579, 0 writes)
  707. a4f6f44 2026-08-09 auto-data-snapshot: 2026-08-09T10:17:32 (2 data files) — shopify/scripts/data/kravet-map-pricing/med-579-reprice-ledger-2026-08-09.json shopify/scripts/data/kravet-map-pricing/med-956-reprice-ledger-2026-08-09.PARTIAL-run1.bak.json
  708. 9853700 2026-08-09 TK-10014: read-only live re-verify of 956 MED below-MAP -> 579 still below (actionable), 377 already at MAP; fresh ready list
  709. b3f5d07 2026-08-09 auto-data-snapshot: 2026-08-09T08:14:10 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  710. 8693b99 2026-08-09 auto-data-snapshot: 2026-08-09T07:43:22 (1 data files) — data/orphan-cleanup-20260716/latest.json
  711. 33baa9e 2026-08-09 auto-data-snapshot: 2026-08-09T05:39:14 (3 data files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  712. 5531a21 2026-08-09 auto-data-snapshot: 2026-08-09T01:32:05 (4 data files) — roll-scale-created.jsonl roll-scale-done2.txt roll-scale-skipped.jsonl shopify/scripts/data/kravet-map-pricing/med-956-reprice-ledger-2026-08-09.json
  713. dc48079 2026-08-09 auto-data-snapshot: 2026-08-09T01:01:19 (4 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/stroheim-onboard/out/launchd.out shopify/scripts/data/kravet-map-pricing/med-956-reprice-ledger-2026-08-09.json
  714. 2ad9895 2026-08-09 Restore run-roll-scale.sh + build-roll-scale.js (recovered from migration commit fbd994f) — fixes com.steve.roll-scale-daily exit 127
  715. e18878e 2026-08-08 auto-data-snapshot: 2026-08-08T18:20:18 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  716. 0839b37 2026-08-08 TK-10014: raised 966 HIGH below-MAP DWKK rolls to MAP (Steve-approved live; 175 skipped already>=MAP, 0 fail; verified; reversibility ledger)
  717. 6428164 2026-08-08 TK-10014: raised 6 egregious below-MAP DWKK rolls to MAP (Steve-approved live write, verified, reversibility ledger)
  718. 8b041ad 2026-08-08 TK-10014: live-verified DWKK below-MAP compliance cohort (2128 roll-basis; 1141 two-source high-conf; 6 egregious per-yd-on-roll) — read-only artifact, fix stays gated
  719. 2d3a9d3 2026-08-08 auto-data-snapshot: 2026-08-08T13:43:06 (2 data files) — scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  720. 5752060 2026-08-08 TK-10014: characterize DWKK no-MAP coverage gap (1441->183, all cost-less; 2 non-Kravet mis-prefix flagged for exclusion)
  721. f3cd3ee 2026-08-08 chore: gitignore .playwright-mcp/ verification artifacts (TK-10349 browser verify)
  722. 6b002f1 2026-08-08 auto-data-snapshot: 2026-08-08T09:04:57 (3 data files) — scripts/osborne-relabel/data/enumerate-2026-08-08T15-45-12-215Z.json scripts/osborne-relabel/data/enumerate-latest.json scripts/osborne-relabel/data/last-run.json
  723. f0ce5f7 2026-08-08 auto-data-snapshot: 2026-08-08T08:25:55 (2 data files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  724. 39d7a01 2026-08-08 auto-data-snapshot: 2026-08-08T07:24:16 (1 data files) — data/orphan-cleanup-20260716/latest.json
  725. 6ba3ec3 2026-08-08 auto-data-snapshot: 2026-08-08T05:52:59 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  726. 57b9cd0 2026-08-08 auto-data-snapshot: 2026-08-08T01:15:15 (4 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  727. 11a3a6d 2026-08-08 auto-data-snapshot: 2026-08-08T00:31:29 (2 data files) — scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  728. 4c8b3b9 2026-08-07 auto-data-snapshot: 2026-08-07T18:31:41 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  729. 8168d2e 2026-08-07 auto-data-snapshot: 2026-08-07T13:51:08 (2 data files) — scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  730. e8046a9 2026-08-07 auto-data-snapshot: 2026-08-07T09:37:33 (1 data files) — scripts/romo-verify/.passed
  731. 94c7006 2026-08-07 auto-data-snapshot: 2026-08-07T08:00:20 (3 data files) — data/kravet-cost/price-push-plan.json scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json
  732. 755f20c 2026-08-07 auto-data-snapshot: 2026-08-07T07:29:27 (1 data files) — data/orphan-cleanup-20260716/latest.json
  733. 8de97d1 2026-08-07 auto-data-snapshot: 2026-08-07T05:56:28 (1 data files) — scripts/kravet-spec-backfill-ledger.jsonl
  734. 4f8fabe 2026-08-07 auto-data-snapshot: 2026-08-07T05:25:40 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  735. 4316d88 2026-08-07 auto-data-snapshot: 2026-08-07T01:18:25 (2 data files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out
  736. cac68b0 2026-08-07 auto-data-snapshot: 2026-08-07T00:47:33 (1 data files) — scripts/stroheim-onboard/out/launchd.out
  737. eb3f6a6 2026-08-06 auto-data-snapshot: 2026-08-06T18:37:41 (2 data files) — scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  738. 52bf3ad 2026-08-06 chore: v0.1.6 (session close — orphan-publish-guard restore + scoped drafter)
  739. a80990c 2026-08-06 auto-data-snapshot: 2026-08-06T13:58:45 (2 data files) — scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  740. 9825244 2026-08-06 auto-data-snapshot: 2026-08-06T13:27:53 (3 data files) — data/orphan-cleanup-20260716/guard-enforced-ledger.jsonl data/orphan-cleanup-20260716/latest.json scripts/knoll-onboard/out/golive-done.jsonl
  741. f39ee23 2026-08-06 Add scoped orphan drafter (draft only reviewed IDs, dry-run default) for the 72-orphan review
  742. 50f482b 2026-08-06 go-live gate: require live manufacturer_sku before ACTIVE (TK-10303)
  743. 77b3068 2026-08-06 auto-data-snapshot: 2026-08-06T12:25:51 (2 data files) — data/orphan-cleanup-20260716/guard.err data/orphan-cleanup-20260716/latest.json
  744. f55e542 2026-08-06 Restore orphan-publish-guard (silent ~1wk death): recover script from git, add observability heartbeat, fix launchd psql PATH crash — detect-only, --enforce stays gated
  745. 87ae1ea 2026-08-06 auto-save: 2026-08-06T08:19:59 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  746. dbfba3d 2026-08-06 auto-save: 2026-08-06T07:49:47 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  747. d0e68d5 2026-08-06 auto-save: 2026-08-06T05:48:58 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  748. 3a6a159 2026-08-06 auto-save: 2026-08-06T05:18:46 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  749. e132c37 2026-08-06 auto-save: 2026-08-06T01:17:20 (3 files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  750. 4cbb10e 2026-08-06 auto-save: 2026-08-06T00:47:08 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  751. 29bc847 2026-08-05 auto-save: 2026-08-05T18:14:36 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  752. 111ccbc 2026-08-05 auto-save: 2026-08-05T13:42:25 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  753. d15fff1 2026-08-05 TK-10014 reprice 320 DWKK to MAP (0 err), TK-10068 archive 483 eur sample-only (0 err), TK-00034 Fentucci verified already-active; DTD basis-trap artifacts
  754. 7d9e1d6 2026-08-05 auto-save: 2026-08-05T11:41:42 (2 files) — scripts/sample-split-pilot scripts/tk-2026-08-05/data/
  755. b7c9695 2026-08-05 TK-00034/10014/10068: verify+write scripts for Fentucci activate, DWKK MAP reprice (DTD basis-safe), eur discontinue
  756. 6a6df0e 2026-08-05 auto-save: 2026-08-05T08:10:17 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  757. 1dab29f 2026-08-05 TK-10068: live eur- enumerator + segmented discontinue confirm list (no writes; 483 sample-only candidates vs 1429 keep-sellable)
  758. 3f5ba6e 2026-08-05 TK-10014: live DWKK price vs authoritative MAP comparator — 2076 mismatches (877 below-MAP), row-level confirm drafted (no writes)
  759. 666e936 2026-08-05 TK-10238/10210: verify no_roll_variant_price exclusions — 0 false positives across all 28545 (fix 0b4b249 already recovered 17534 into feed)
  760. 6b7ca7c 2026-08-05 auto-save: 2026-08-05T07:40:04 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  761. 216ed6c 2026-08-05 auto-save: 2026-08-05T05:39:25 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  762. f2715e5 2026-08-05 auto-save: 2026-08-05T04:08:53 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  763. 8f7dc52 2026-08-05 auto-save: 2026-08-05T01:07:57 (4 files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  764. 12b8fa9 2026-08-05 auto-save: 2026-08-05T00:37:47 (3 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot
  765. 0207620 2026-08-04 auto-save: 2026-08-04T18:05:34 (4 files) — data/google-feed/exclusions.json data/google-feed/feed-clean.tsv data/google-feed/report.json scripts/sample-split-pilot
  766. f0dd08e 2026-08-04 TK-10209: feed-eligibility tolerates absent /tmp/cost_map.tsv (was a hard crash; sparse-cost is by-design flagged)
  767. dcfb310 2026-08-04 auto-save: 2026-08-04T17:05:12 (5 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out scripts/osborne-relabel/data/enumerate-2026-08-04T23-40-30-461Z.json scripts/osborne-relabel/data/enumerate-latest.json
  768. 0b4b249 2026-08-04 TK-10209: fix false no_roll_variant_price on full-roll-priced sample-labeled variants
  769. 9db5f31 2026-08-04 TK-10209: canary-of-1 last-run (W7351-01 FIXED + verified feed-eligible)
  770. 2a09522 2026-08-04 TK-10209: Osborne & Little variant-relabel tool + read-only defect enumeration
  771. 9f1b4ec 2026-08-04 auto-save: 2026-08-04T14:04:01 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  772. 703d7ea 2026-08-04 auto-save: 2026-08-04T13:33:48 (2 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out
  773. eef8ded 2026-08-04 romo-rolls: resume-state artifacts from Sold-Per-Roll build across 6 brands (9 variants)
  774. 0aa4464 2026-08-04 build-romo-rolls: guard empty baseSku — skip products with no sample SKU so they never create a colliding '-Roll' variant
  775. 651d163 2026-08-04 TK-10168: RW image re-attach — 5 DRAFT products get correct colorway image (Steve-approved, canary-verified)
  776. e9b0570 2026-08-04 auto-save: 2026-08-04T08:01:22 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  777. 0d99a4e 2026-08-04 auto-save: 2026-08-04T07:31:10 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  778. 06fc071 2026-08-04 auto-save: 2026-08-04T06:00:27 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  779. 5976a36 2026-08-04 auto-save: 2026-08-04T03:59:36 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  780. e7484b6 2026-08-04 auto-save: 2026-08-04T02:59:16 (3 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot
  781. 78533c5 2026-08-04 auto-save: 2026-08-04T02:29:06 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  782. 2ed57bd 2026-08-04 auto-save: 2026-08-04T01:58:56 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  783. 7777211 2026-08-04 auto-save: 2026-08-04T01:28:47 (4 files) — scripts/knoll-onboard/out/created.jsonl scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  784. 9bee693 2026-08-04 auto-save: 2026-08-04T00:58:37 (3 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  785. f9e4bcf 2026-08-04 auto-save: 2026-08-04T00:28:28 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  786. 13c0c0a 2026-08-03 auto-save: 2026-08-03T16:55:48 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  787. dc6d095 2026-08-03 auto-save: 2026-08-03T13:54:39 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  788. 794b4bc 2026-08-03 auto-save: 2026-08-03T08:22:05 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  789. b407912 2026-08-03 auto-save: 2026-08-03T07:21:35 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  790. a45b3d8 2026-08-03 auto-save: 2026-08-03T05:50:52 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  791. 68538fa 2026-08-03 auto-save: 2026-08-03T04:20:12 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  792. f12b519 2026-08-03 restore build-romo-rolls.mjs from git history — was missing from working tree, causing romo-verify CRITICAL alerts
  793. b99b761 2026-08-03 auto-save: 2026-08-03T03:50:03 (3 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot
  794. a8b84d5 2026-08-03 auto-save: 2026-08-03T03:19:54 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  795. dc81986 2026-08-03 auto-save: 2026-08-03T02:49:45 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  796. bb02939 2026-08-03 auto-save: 2026-08-03T02:19:36 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  797. e8bf548 2026-08-03 auto-save: 2026-08-03T01:49:27 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  798. 03e9496 2026-08-03 auto-save: 2026-08-03T01:19:18 (4 files) — scripts/knoll-onboard/out/created.jsonl scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  799. 61250d8 2026-08-03 auto-save: 2026-08-03T00:49:10 (3 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  800. 610f0e5 2026-08-02 auto-save: 2026-08-02T17:16:50 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  801. 398127a 2026-08-02 auto-save: 2026-08-02T13:45:41 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  802. d206470 2026-08-02 auto-save: 2026-08-02T08:13:37 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  803. 2170cc0 2026-08-02 auto-save: 2026-08-02T07:43:26 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  804. b9ab47f 2026-08-02 auto-save: 2026-08-02T05:42:34 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  805. eaedf99 2026-08-02 auto-save: 2026-08-02T04:12:02 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  806. eeade2d 2026-08-02 auto-save: 2026-08-02T01:10:57 (5 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  807. 3e5a3e9 2026-08-02 auto-save: 2026-08-02T00:40:47 (3 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  808. 5fa73d2 2026-08-01 auto-save: 2026-08-01T17:08:10 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  809. 7ac97bc 2026-08-01 auto-save: 2026-08-01T14:07:16 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  810. d172a18 2026-08-01 auto-save: 2026-08-01T13:37:07 (2 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out
  811. 9ce57b6 2026-08-01 auto-save: 2026-08-01T08:05:12 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  812. 24d9c50 2026-08-01 auto-save: 2026-08-01T07:34:56 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  813. 0993ba3 2026-08-01 auto-save: 2026-08-01T06:03:58 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  814. 8d87a06 2026-08-01 auto-save: 2026-08-01T05:33:46 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  815. 88cfe06 2026-08-01 auto-save: 2026-08-01T04:03:15 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  816. ca46a6d 2026-08-01 auto-save: 2026-08-01T01:02:14 (6 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  817. 75cf838 2026-08-01 auto-save: 2026-08-01T00:32:05 (2 files) — scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  818. ecd8740 2026-07-31 auto-save: 2026-07-31T16:59:39 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  819. 7b21af2 2026-07-31 auto-save: 2026-07-31T13:58:19 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  820. dbedddb 2026-07-31 auto-save: 2026-07-31T08:25:30 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  821. 872476f 2026-07-31 auto-save: 2026-07-31T07:25:03 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  822. ff61f6a 2026-07-31 auto-save: 2026-07-31T05:54:17 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  823. 3a4ad56 2026-07-31 auto-save: 2026-07-31T03:53:30 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  824. e0e90e1 2026-07-31 auto-save: 2026-07-31T01:22:41 (3 files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  825. 0e3fc9b 2026-07-31 auto-save: 2026-07-31T00:52:31 (4 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  826. 5facd1b 2026-07-31 auto-save: 2026-07-31T00:22:20 (3 files) — scripts/greenland-onboard/out/created.jsonl scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  827. 2217d8b 2026-07-30 auto-save: 2026-07-30T17:19:46 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  828. b26f537 2026-07-30 auto-save: 2026-07-30T13:48:32 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  829. 2aad140 2026-07-30 auto-save: 2026-07-30T08:16:08 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  830. 5f52e82 2026-07-30 auto-save: 2026-07-30T07:45:45 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  831. 0b494a2 2026-07-30 auto-save: 2026-07-30T05:45:00 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  832. bd6394d 2026-07-30 auto-save: 2026-07-30T04:14:30 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  833. 1c75211 2026-07-30 auto-save: 2026-07-30T01:13:34 (3 files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  834. 1f4e299 2026-07-30 auto-save: 2026-07-30T00:43:24 (5 files) — scripts/greenland-onboard/out/created.jsonl scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out scripts/stroheim-onboard/out/launchd.out
  835. 7aed36c 2026-07-30 auto-save: 2026-07-30T00:13:16 (2 files) — scripts/greenland-onboard/out/created.jsonl scripts/sample-split-pilot
  836. 66ef25c 2026-07-29 auto-save: 2026-07-29T17:10:49 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  837. f7e4e11 2026-07-29 auto-save: 2026-07-29T14:09:46 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  838. d75461e 2026-07-29 auto-save: 2026-07-29T13:39:36 (4 files) — scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  839. 62e6674 2026-07-29 auto-save: 2026-07-29T08:07:14 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  840. 9198d40 2026-07-29 TK-10039: 4 push-*-live.js (zoffany/tres-tintas/fallingstar/artmura) write specs to metafields at create + prose-only body; artmura now writes metafields (text-safe mapper removes the 422 fear)
  841. 4cdd756 2026-07-29 auto-save: 2026-07-29T07:37:00 (8 files) — data/orphan-cleanup-20260716/guard.err scripts/knoll-onboard/out/payloads.jsonl scripts/osborne-onboard/out/payloads.jsonl scripts/sample-split-pilot scripts/sanderson-onboard/out/payloads.jsonl
  842. 0dfafce 2026-07-29 upstream fix (TK-10039): 8 more onboard generators write specs to metafields + prose-only body (knoll/stout/maharam/rigo/stroheim/muralsource/osborne/sanderson) via shared mapper; 0 tables, originals preserved
  843. db4134b 2026-07-29 upstream fix: greenland-onboard writes specs to metafields (shared _spec-to-metafields mapper) + prose-only body (no spec table)
  844. 7d37b95 2026-07-29 auto-save: 2026-07-29T05:36:12 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  845. e549117 2026-07-29 romo-verify: report MODULE_NOT_FOUND as CRITICAL (builder file missing), not WARN
  846. 1704223 2026-07-29 auto-save: 2026-07-29T04:05:35 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  847. 4c280f1 2026-07-29 auto-save: 2026-07-29T01:04:33 (6 files) — scripts/knoll-onboard/out/golive-done.jsonl scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot scripts/stout-onboard/out/launchd.out
  848. e0e0539 2026-07-29 auto-save: 2026-07-29T00:34:23 (5 files) — scripts/greenland-onboard/out/launchd.err scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  849. 5e555a5 2026-07-28 auto-save: 2026-07-28T17:01:56 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out
  850. d4a6e26 2026-07-28 auto-save: 2026-07-28T16:31:43 (2 files) — package-lock.json scripts/sample-split-pilot
  851. 5f2d4d7 2026-07-28 chore: v0.1.4 → v0.1.5 (session close — dropped dead wallco.ai from canaries)
  852. 8a11c09 2026-07-28 Drop dead wallco.ai from tls-expiry + robots-sitemap canary watch-lists
  853. 3446a10 2026-07-28 auto-save: 2026-07-28T14:01:00 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out
  854. 6b5e998 2026-07-28 auto-save: 2026-07-28T13:30:51 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  855. be810bc 2026-07-28 auto-save: 2026-07-28T13:00:43 (2 files) — scripts/greenland-onboard/out/launchd.err scripts/sample-split-pilot
  856. 1b10d1e 2026-07-28 auto-save: 2026-07-28T10:29:49 (10 files) — data/google-feed/exclusions.json data/google-feed/feed-clean.tsv data/google-feed/punch-list.csv data/google-feed/punch-list.md data/google-feed/report.json
  857. a6728c9 2026-07-28 auto-save: 2026-07-28T09:59:38 (5 files) — scripts/sample-split-pilot data/google-feed/exclusions.json.jun15bak data/google-feed/punch-list.csv.jun15bak data/google-feed/report.json.jun15bak data/google-feed/unpublish-list.csv.jun15bak
  858. 66daf22 2026-07-28 auto-save: 2026-07-28T08:28:39 (3 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot
  859. 5ad42be 2026-07-28 auto-save: 2026-07-28T07:28:16 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  860. bf3d5d2 2026-07-28 auto-save: 2026-07-28T05:57:47 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  861. 3d795dc 2026-07-28 auto-save: 2026-07-28T04:27:17 (4 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.err scripts/stroheim-onboard/out/launchd.out scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  862. af0917c 2026-07-28 auto-save: 2026-07-28T03:57:08 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  863. ccbd1d4 2026-07-28 auto-save: 2026-07-28T03:26:56 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  864. 43caa42 2026-07-28 auto-save: 2026-07-28T02:56:47 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  865. 80329a6 2026-07-28 auto-save: 2026-07-28T01:56:27 (3 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/launchd.out scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  866. af2491c 2026-07-28 auto-save: 2026-07-28T01:26:17 (3 files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  867. 05d0dd8 2026-07-28 auto-save: 2026-07-28T00:56:07 (7 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  868. 75de3bb 2026-07-28 auto-save: 2026-07-28T00:25:56 (3 files) — scripts/greenland-onboard/out/launchd.err scripts/knoll-onboard/out/created.jsonl scripts/sample-split-pilot
  869. 9746c0c 2026-07-27 auto-save: 2026-07-27T18:53:10 (2 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/settlement-verdicts.jsonl
  870. 8446069 2026-07-27 auto-save: 2026-07-27T18:22:43 (4 files) — package-lock.json scripts/sample-split-pilot scripts/stroheim-onboard/out/settlement-verdicts.jsonl scripts/stroheim-onboard/out/settlement-verdicts.jsonl.messy-bak
  871. d1387ed 2026-07-27 chore: v0.1.3 → v0.1.4 (session close — stroheim budget lane TK-00039)
  872. cfe1c67 2026-07-27 stroheim onboard (TK-00039): dedicated 'stroheim' variant-budget lane + create-drafts wiring
  873. f301a94 2026-07-27 auto-save: 2026-07-27T17:52:34 (5 files) — scripts/sample-split-pilot scripts/stroheim-onboard/out/payloads.jsonl scripts/stroheim-onboard/settlement-gate.mjs scripts/stroheim-onboard/out/settlement-verdicts.jsonl scripts/stroheim-onboard/out/settlement-verdicts.jsonl.buggy-bak
  874. 0a1e570 2026-07-27 auto-save: 2026-07-27T17:22:24 (2 files) — package-lock.json scripts/sample-split-pilot
  875. 3be371b 2026-07-27 chore: v0.1.3 (session close — finite stout budget category + drip)
  876. f364685 2026-07-27 auto-save: 2026-07-27T16:52:13 (2 files) — scripts/sample-split-pilot scripts/variant-budget/budget.cjs.bak.20260727-163334
  877. 686bcc4 2026-07-27 budget.cjs: add finite 'stout' category (mirrors maharam TK-00060) so the Stout drip can't be starved by the backlog drain
  878. 2c99fec 2026-07-27 auto-save: 2026-07-27T16:21:58 (2 files) — scripts/sample-split-pilot data/gmc-a1-canary-rollback.jsonl
  879. 1673fe4 2026-07-27 Stout daily-drip wrapper + plist (draft, mirrors Maharam TK-00060; gated install memo in pending-approval)
  880. f57c2ef 2026-07-27 TK-00060: contrarian FIX-FIRST fixes on maharam budget (round-2 SHIP IT)
  881. 51f493f 2026-07-27 TK-00060: give Maharam onboard its own finite 'maharam' variant-budget category (DTD-A)
  882. fdb553b 2026-07-27 auto-save: 2026-07-27T13:51:03 (3 files) — scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  883. b9cf537 2026-07-27 auto-save: 2026-07-27T13:20:51 (2 files) — scripts/greenland-onboard/out/launchd.err scripts/sample-split-pilot
  884. d4de376 2026-07-27 auto-save: 2026-07-27T08:19:05 (4 files) — scripts/price-sheets/schu-watch/data/history.json scripts/price-sheets/schu-watch/data/latest.json scripts/sample-split-pilot data/price-sheets/schu-reconcile-held.jsonl
  885. 941feb7 2026-07-27 auto-save: 2026-07-27T07:48:56 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  886. 4dd6c0c 2026-07-27 auto-save: 2026-07-27T05:48:20 (2 files) — scripts/kravet-spec-backfill-ledger.jsonl scripts/sample-split-pilot
  887. c12b268 2026-07-27 auto-save: 2026-07-27T01:17:03 (3 files) — scripts/osborne-onboard/out/canary-latest.json scripts/osborne-onboard/out/canary.cron.out scripts/sample-split-pilot
  888. aff9a46 2026-07-27 auto-save: 2026-07-27T00:46:55 (5 files) — scripts/knoll-onboard/out/created.jsonl scripts/knoll-onboard/out/golive-done.jsonl scripts/sample-split-pilot scripts/stout-onboard/out/launchd.err scripts/stout-onboard/out/launchd.out
  889. 9a9e3a4 2026-07-27 auto-save: 2026-07-27T00:16:47 (3 files) — scripts/greenland-onboard/out/launchd.err scripts/sample-split-pilot scripts/greenland-onboard/out/created.jsonl
  890. 9eed58c 2026-07-26 auto-save: 2026-07-26T20:45:50 (2 files) — package-lock.json scripts/sample-split-pilot
  891. b8c09b2 2026-07-26 chore: lint, refactor, v0.1.2 (session close) — DRY build-payloads (SAMPLE_PRICE/RE_BRAND/patLabel), visible dbWriteBack + pid/handle safety belts, fail-loud drip.sh
  892. 7326d7f 2026-07-26 auto-save: 2026-07-26T20:15:38 (2 files) — package-lock.json scripts/sample-split-pilot
  893. cd221ca 2026-07-26 maharam-onboard: dedicated daily drip runner + launchd plist (draft) — trickle 1429 sample-only wallcoverings daily, backlog-metered, task-spec titles + PG write-back
  894. cce4e0e 2026-07-26 chore: lint, refactor, v0.1.1 (session close) — execFileSync + negative-limit guards + set -e + error log on stroheim-onboard
  895. 070d63e 2026-07-26 recover wiped scripts/ tree: restore 325 untracked source files from git (revive DW Shopify upload pipeline dead ~2 days post Jul-24 wipe)
  896. 87b8ad7 2026-07-26 stout-onboard: fix stale docs — double-roll (not single), Gemini 2.5 model/cost, live collection-rule reality note
  897. c1b05ec 2026-07-26 Stroheim onboard: read-only price/coverage canary (auto-resume signal on price-landing); DTD 3/2, launchd install deferred (gated)
  898. cbf2f3f 2026-07-26 Stroheim onboard: add settlement-gate + go-live (Steve-gated) + resume.sh — pipeline one-command-ready (DTD 5/5, yolo-plus)
  899. 04f54b6 2026-07-26 auto-save: 2026-07-26T16:44:36 (215 files) — scripts/sample-split-pilot scripts/_lib/ scripts/activate-1838/ scripts/af-reimage/ scripts/ai-preamble-leak-sweep/
  900. 7fab2b3 2026-07-26 sanderson-onboard: DWXH- drafts (dual mfr_sku mf, retail Roll + $4.25 sample, PG-first) + gated/armed go-live trickle (settlement CLEAR + 5-field, no Google)
  901. 41fc5b7 2026-07-26 Stroheim onboard: ready-to-run DRAFT scripts (DWST, BUDGET_CAT=backlog); HELD on price per DTD
  902. 3945cde 2026-07-26 stout-onboard: fix Sirv (cdn.estout.com) image fetch — add stouttextiles referer+UA, strip thumbnail query (was 403→fail-closed BLOCK on all 180)
  903. 6b5b3ed 2026-07-26 stout-onboard: full engine (build-payloads/create-drafts/go-live/settlement-gate/resume.sh/plist) + price scraper; 180 SKUs priced+staged, DRAFTS+gated trickle ready
  904. 9f10edf 2026-07-26 auto-save: 2026-07-26T16:14:26 (2 files) — scripts/sample-split-pilot scripts/stout-onboard/
  905. 6d06d40 2026-07-26 auto-save: 2026-07-26T13:43:45 (3 files) — scripts/knoll-onboard/out/launchd.err scripts/sample-split-pilot scripts/muralsource-onboard/out/
  906. a16c9d6 2026-07-26 auto-save: 2026-07-26T13:13:36 (2 files) — scripts/greenland-onboard/out/launchd.err scripts/sample-split-pilot
  907. c9fca02 2026-07-26 auto-save: 2026-07-26T09:12:24 (2 files) — scripts/sample-split-pilot scripts/muralsource-onboard/
  908. 9238087 2026-07-26 maharam-onboard: knoll-model sample-only pipeline (1429 wallcoverings, dedup mfr_sku, PG-first shopify_product_id write-back, draft->gated trickle-activate) — DRY-RUN verified, $0, nothing live
  909. 04cf73b 2026-07-26 auto-save: 2026-07-26T07:41:30 (2 files) — data/orphan-cleanup-20260716/guard.err scripts/sample-split-pilot
  910. 12a8755 2026-07-26 auto-save: 2026-07-26T01:09:40 (2 files) — scripts/osborne-onboard/out/canary.cron.err scripts/sample-split-pilot
  911. 28deb3b 2026-07-26 auto-save: 2026-07-26T00:39:31 (3 files) — scripts/greenland-onboard/out/launchd.err scripts/knoll-onboard/out/launchd.err scripts/sample-split-pilot
  912. 1a3f7cd 2026-07-25 auto-save: 2026-07-25T13:36:34 (2 files) — scripts/knoll-onboard/out/launchd.err scripts/sample-split-pilot
  913. 862eac9 2026-07-25 auto-save: 2026-07-25T13:06:24 (2 files) — scripts/sample-split-pilot scripts/greenland-onboard/
  914. 10576db 2026-07-25 auto-save: 2026-07-25T07:34:42 (2 files) — scripts/sample-split-pilot data/orphan-cleanup-20260716/
  915. 2f1d618 2026-07-25 auto-save: 2026-07-25T01:02:17 (2 files) — scripts/osborne-onboard/out/canary.cron.err scripts/sample-split-pilot
  916. 501745a 2026-07-25 auto-save: 2026-07-25T00:32:03 (2 files) — scripts/knoll-onboard/out/launchd.err scripts/sample-split-pilot
  917. c6f5540 2026-07-24 auto-save: 2026-07-24T23:30:18 (21 files) — .newwall-ref/ artmura-site/ data/google-feed/ data/kravet-cost/ data/price-sheets/
  918. 2525445 2026-06-01 hero/ideas: single big full-bleed hero (remove 2x2 four-square grid + hero-4grid.js/json + inert CSS), collapse Ideas to one rail
  919. 8eb1ccd 2026-05-31 Add per-site favicon (kills /favicon.ico 404)
  920. b4b5920 2026-05-28 scrub vendor name leaks from products.json source (176 products: title/vendor/tags cleaned per sku-redact denylist)
  921. 7ace082 2026-05-13 polish: tech-violet palette, editorial hero, 3-step how-it-works section
  922. 579e226 2026-05-12 dw site: log Gemini image-classify usage to cost-tracker
  923. f29cf27 2026-05-10 deploy: pm2 port 9925 + nginx :80 vhost, gemini env loader
  924. 469fcec 2026-05-10 initial scaffold + GA gtag — designerwallcoverings.ai room-match landing

Authors

Agents used

  • none detected

Skills used

  • /out601
  • /latest265
  • /orphan-cleanup-20260716192
  • /data164
  • /sanderson-onboard155
  • /claude149
  • /code149
  • /launchd140
  • /stroheim-onboard133
  • /sample-split-pilot133
  • /osborne-onboard128
  • /price-sheets125
  • /schu-watch122
  • /canary66
  • /canary-latest62
  • /history61
  • /colorway-title-anchor54
  • /tk11076-45
  • /created41
  • /knoll-onboard41
  • /google-feed39
  • /daily-batch37
  • /mfr-backfill-tk1016234
  • /stout-onboard32
  • /verify-state28
  • /verify25
  • /dwpw-grs-migrate22
  • /golive-done22
  • /kravet-spec-backfill-ledger21
  • /guard15

Creative ideas + design notes

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

eebb452 · 2026-09-26 · TK-11856 rc-propagation (SHOPIFY): gimmersta-romo-rolls run.sh propagates first failed roll-builder rc
Exit-code ONLY, no behavior change (Steve ruling 2026-09-26 Q1/Q2): every step still runs as
before; the wrapper now exits with the first nonzero rc of its side-effecting step(s) instead of
swallowing it, so cron-fire-canary's exit corroboration can see a failed run. No heartbeat file added.
Revert: git -C /Users/macstudio3/Projects/designerwallcoverings revert <this sha>

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YaiWjfgEuKQLTb5cdDreS3
2b739ed · 2026-09-26 · TK-12333: drop Scalamandre — unpublish list 4409 rows, dw-showroom-hide.js 12544 ids (NOT deployed), rollback --limit, rollback evidence
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018HHVEexYEwkT1HYJzkvv66
9335a6a · 2026-09-26 · TK-11860: save prior 8120-id dw-showroom-hide.js (rollback reference)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018HHVEexYEwkT1HYJzkvv66
f19568f · 2026-09-26 · TK-11860: ShowroomOnly stamped on 4,842 ACTIVE (JS/MTG/Sandberg/Scalamandre) + regenerated dw-showroom-hide.js (12,962 ids, NOT deployed)
Evidence: restore-maps, applied logs, Google-channel showroom unpublish list (4,827). Undo tags: apply-showroomonly-tk11860.mjs --rollback --apply. Undo asset: git revert.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018HHVEexYEwkT1HYJzkvv66
2eb7e2e · 2026-09-26 · TK-11860: ShowroomOnly tag stamper for approved showroom vendors + pre-write restore-map (4,842 ACTIVE, dry-run)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018HHVEexYEwkT1HYJzkvv66
0e0f070 · 2026-09-26 · TK-11860: sell-mode segmentation evidence (sample/quote NOT-MEASURED by design)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018HHVEexYEwkT1HYJzkvv66
820535f · 2026-09-25 · TK-12267: tripwire enumerate uses read-only ADMIN-first seam (read-lib.mjs); 0-of-0 population guard; lib.mjs write loader untouched
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01D7LB6rCwpA7ubJTqYzqXEX
f47fd6c · 2026-09-25 · TK-11076: Option B — undo DELETEs a metafield the forward run created (absent != empty)
- forward records metafield_preexisted (presence, not value), first-write-wins
- rollback deletes via metafieldsDelete only when preexisted===false AND the live
  value is still exactly the forward-written value (never deletes a foreign edit);
  legacy records without the flag keep write-empty
- delete-mode verify polls (<=15s) and demands ABSENT; empty residue reads FAIL
- forward gains --max-fail circuit breaker (default 3) + non-zero exit on any failure
- both scripts ship --self-test with negative tests proven RED on injected faults
Reviewed: local qwen (points refuted), Kimi k3 (2 real holes folded in).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H5X9Z41EQourT4mYoq57Np
590af0c · 2026-09-25 · TK-10484: word-boundary settlement matcher + negative test + gated flag correction (dry-run default, --expect guard, exact --rollback)
The 2026-09-24 sweep's keyword matcher was never committed; this reconstructs it as
mode:'legacy' (reproduces 96/97 applied labels, 1/1162 population disagreement) and ships
the fixed mode:'word' (\b-anchored with explicit plurals/compounds). Palmero/Fernanda/Bayleaf
false positives removed; birds/songbird/hummingbird/boughs now caught. DWAA-510300 held
(Steve's final DISAPPROVE). No DB writes; apply is gated.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RgbJjouBQ3xFfkmBq17Jik
40908be · 2026-09-25 · TK-10484: dry-run-default staging script for 8 recovered Jeffrey Stevens codes (gated apply + rollback)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RgbJjouBQ3xFfkmBq17Jik
d57e691 · 2026-09-25 · TK-11483: Phase-2 pre-flight evidence (76 ACTIVE Fentucci dupes verified live, fire script + negative-tested preflight)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RwMMHSLW95fpUPagXhWh7R
cb3710a · 2026-09-24 · lib/shopify: probe SHOPIFY_FULL_ACCESS_TOKEN once, fall back to SHOPIFY_ADMIN_TOKEN on a definitive 401
The preferred token (…2ea5) is dead, which broke all 88 importers. Only a 401 triggers
the fallback; network errors and other statuses keep the preferred token.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SrEDNvrmHyv2QgB23Lm151
398290e · 2026-09-24 · night-pdp-verify: unknown expected price -> NOT-MEASURED, keep catch error reason
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LfkajczsrHUsBBKvhRwcCG
6012860 · 2026-09-24 · TK-12129: extend live verify to 6 controls + final-pre baseline (ship blocked pending Steve)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QQaFKAfbJjN9erDvXCq6NY
3f78311 · 2026-09-24 · TK-12129 rollout: 320 Harlequin WC metafields written; live theme edit reverted on check (c) fail; sold_per-gate fix proven on preview
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QQaFKAfbJjN9erDvXCq6NY
30f26d7 · 2026-09-24 · TK-10484: activate 14 Jeffrey Stevens NuWallpaper drafts on live DW store (update-only, restore maps + rollback)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LSbNqkYWZiCRzvVe6mGz94
886e350 · 2026-09-23 · Retire: README-RETIRED banners for 7 dormant image-scan scripts (TK-12090)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XekrHFx4WVTS1Sui5nhXmQ
5624b21 · 2026-09-23 · TK-11397: swap dead SHOPIFY_FULL_ACCESS_TOKEN for live ADMIN token, fail-loud on 401/403 across GMC-404 batch scripts
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0144GfLFF14MFmAnCREHST5n
5776161 · 2026-09-23 · TK-11323: importer stamps 8/8 whole-bolt rule + canonical The Naturals Collection tag; token probe falls back to a live token
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011LAC9zUVqzfo6MsW5y7tAN
33f8b4f · 2026-09-23 · TK-11552: 2026-09-23 rescue — back up 8 imminent info@ drafts, manifest + report
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E1xReXdF9rRznsRv8hyTve
9b5b1df · 2026-09-23 · TK-11397: fix variant-id extraction in resolve-variants.mjs + correct audit note
resolve-variants.mjs line 23 used match(/\d+/).pop() which extracted the
FIRST digit run (the product id) instead of the variant id from GMC offer keys
shaped shopify_US_<productId>_<variantId>. All 77 prefixed rows failed the
Shopify variant lookup (product_gid/cur_handle/status = null).

Fixed to mirror the robust check-unpub.mjs extraction: take the trailing
variant id via end-anchored match(/_(\d{6,})$/), fall back to bare key.
Verified: all 77 now extract the correct variant id; all 84 bare keys stable;
0 mis-extractions.

Also corrected AUDIT-SUMMARY.md which mis-attributed the nulls to the
canary keying rows with the product id; the key carries both ids — the
script grabbed the wrong one. Note now states the bug, the recovery path,
and that it's been fixed.
43488cd · 2026-09-22 · Fix Innovations over-archive: classify unloaded-pattern SKUs UNMEASURED (never DISCONTINUED) and log real prior Shopify status
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DP24DdLpG6PHXgmjr47TVb
5efaa44 · 2026-09-22 · Collapse tautological try/catch pg require to plain require('pg') in 5 scripts
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DP24DdLpG6PHXgmjr47TVb
f0f90e1 · 2026-09-22 · Make inventory-stamp-guard.mjs shim portable (TK-11786 review): resolve shared master via DW_SHARED_GUARDS/homedir, not hardcoded /Users/macstudio3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G3ChReG53fwpNgUESv4SY7
3418680 · 2026-09-17 · TK-11871: Wallcovering guard default 3.0 -> 2.0 lb (live catalog norm)
TYPE_DEFAULT_LB Wallcovering family (Wallcovering/Wallcoverings/Wallpaper/
Metallic/Commercial) 3.0 -> 2.0 across the guard sync-group (mjs canonical +
py twin) and the guard tests. Ratified by TK-11803 DTD verdict A (2,299-
variant live sample: 2 lb 91.9% / 3 lb 0.7% / 1 lb 0.4%) + Cody red-team
(freight asymmetry: overcharge kills checkout, slight undercharge invisible).
FALLBACK_LB stays 2.0, so unknown-type and Wallcovering now agree.
Samples stay 0.25 lb; all other type defaults unchanged. Go-forward code
default only — no Shopify/dw_unified writes, no historical re-stamp.
Restore map: ticket-system/evidence/TK-11871/restore-map-20260917-1700/.
Tests: py 14/14 OK, mjs 52/52 PASS.
526f5cc · 2026-09-17 · wm-reprice: guard applied.csv against clobber by a zero-write run (TK-11814)
A concurrent/duplicate APPLY run that drift-skips everything wrote a
header-only applied.csv, destroying a prior run's reversal record. Observed
live on the morrisco batch (run1 wrote:3, run2 drift-skip:3 clobbered the
record; recovered from restore-map). Now only rewrite applied.csv when
wrote>0, so the undo trail self-protects.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011WJBZbEV1wuUcnB8g5Qqg3
09ce7d6 · 2026-09-17 · tk11732 PJ showroom rollback: mirror tk11307's two load-bearing guards (code review)
The 'identical doctrine' sibling was missing both guards tk11307 documents as necessary:
(1) resolveBaseline now skips restore maps whose source_list != this run's TARGET_FILE (the data/
dir could be shared across showroom lines), and (2) toRemove/preserved now hard-intersect with the
current targetGids so a stray/legacy baseline row can never tagsRemove outside this line. Latent
today (own data/ dir + hardcoded TARGET_FILE) but the divergence made the doctrine claim false.
Second-model review (grok-4.5): no regressions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XqefKZFeg2E4pEzpR4xpkv
dd1ed81 · 2026-09-17 · maya-romanoff logo-hero: a failed reorder is a PARTIAL, not done (code review)
productReorderMedia userErrors left the logo placeholder still the featured hero — the exact
defect TK-11750 fixes — yet the row was recorded to the restore map and counted in done++.
Now: featured flag gates the count (attachedNotFeatured bucket, not done), the map row records
featured:false, and the LIMIT break counts it so the cap isn't under-counted. Second-model
review (grok-4.5, OpenAI spend-limited): no regressions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XqefKZFeg2E4pEzpR4xpkv
9d50ba1 · 2026-09-17 · wm-reprice: fix wrong-variant reprice + over-reverting undo (code review)
reprice.mjs resolve(): drop the `|| edges[0]` fallback. Shopify sku: search
tokenizes on hyphens and this catalog has cross-product duplicate SKUs, so a
non-exact result set could reprice a DIFFERENT variant (the drift guard rechecks
the same wrong variant and passes). No exact match now returns null -> UNRESOLVED.

revert.mjs: read applied.csv (variants actually written) instead of the planned
restore-map.csv superset, with a restore-map fallback; and only revert a variant
still at the price we set (live == new_price), so it never clobbers a drift-skipped
or since-changed variant. Reports drift/not-found skips.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011WJBZbEV1wuUcnB8g5Qqg3
7a1a14c · 2026-09-16 · TK-11758: gate snapshot write to --apply only; --undo reads only apply snapshots (Cody FIX FIRST)
Dry-run no longer writes a snapshot (read-only by contract); newestSnapshot() filters to
snapshot-apply-*.json so --undo can never restore a stale/post-write dry-run map.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EGzAvFJiSQ9qXCyjNQ6mjq
eafc12e · 2026-09-16 · TK-11673: exhaustive post-apply verification (read-only) — replaces the 40-row sample
The apply was verified with a random 40-row live sample = 0.5% of 8,369 live product
titles, which cannot distinguish a full apply from a partial one. This measures the
whole population, and adds the assertion nobody made: that the 5,787 over60_only rows
Steve explicitly HELD were not touched, proving apply.mjs respected --scope=defect.

Result: APPLIED 8,369/8,369 as expected, HELD 5,787/5,787 untouched, 0 corrector misses.
One residual (dwsa-305801-1) is an UPSTREAM defect in the product title itself
("Do the Can CanWallcovering Retro" glues the word, so collapseDupWc correctly declined
to touch it) — attributed, not blamed, so it reports WARN rather than a false FAIL.

Carries the TK-11574 provenance guard: fails hard if it attaches to a bulk op another
session started.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
0a57a1d · 2026-09-16 · TK-11357: fix three holes the contrarian found in my own tripwire fix
My fix for the fabricated-receipt bug shipped with the same disease in the
opposite direction, plus a regression I introduced. All three found by a
separate reviewer, all confirmed by me against source before fixing.

1. LOCALE-DEPENDENT PARSE (would have made the fix lie about FAILURE).
   tripwire.sh keyed its real write count off apply.mjs's pretty output,
   "levels SET → 0 : N", via `grep -Eo 'levels SET . 0…'`. The `.` is one
   byte; `→` is three. The installed plist has no EnvironmentVariables block,
   so launchd supplies no LANG — and under `env -i` that grep returns rc=1, no
   match. The wrapper would then have reported NOT MEASURED forever and never
   ledgered a real remediation: a permanent false WARN, which trains the reader
   to ignore it. My own earlier "verified under C and unset locale" check was
   invalid — I ran it in an interactive shell where LANG still leaked in, so it
   never reproduced the launchd environment.
   Fix: apply.mjs now emits stable ASCII counters `LEVELS_SET:N` /
   `APPLY_ERRORS:N` beside the pretty line, and the wrapper keys off those.
   Parsing prose for an outcome was the same proxy-signal mistake that caused
   the original defect; a fancier regex would have been a reskin, not a cure.

2. DUPLICATE RECEIPT. apply.mjs already appends its own honest ledger line
   (blast_radius = its real didSet) on every --apply run, so the wrapper
   writing a second one meant two undo records for one write. It was only
   unreachable because hole 1 short-circuited it — two bugs cancelling out is
   luck, not design. The wrapper no longer ledgers at all: apply.mjs owns the
   receipt, the wrapper owns the verdict.

3. REGRESSION I INTRODUCED. Partitioning on `tracked === true` silently bucketed
   a row with a MISSING tracked field as "unactionable", so the new script would
   have refused work the old one did. Now three buckets, not two: a row missing
   inventory_policy or tracked is UNKNOWN — still ATTEMPTED (zeroing a $0
   orderable variant is never harmful) but it can never yield PASS.

Also: a write ACK is not a post-condition, so the script no longer claims PASS
in the same pass as a write. It reports WARN "not yet re-verified"; the next
run's enumerate re-tests the live predicate and PASSes only on an empty cohort.
(Codex review.)

Correction to the previous commit message, which disagreed with itself: the
ledger holds 170 "OUTCOME tripwire fired" lines ever — 167 with the fabricated
blast_radius 6 (09-14 → 09-16) and 3 with blast_radius 1255 from 09-11, an
earlier and plausibly real bulk event. "171 consecutive, blast_radius 6 every
time" was wrong. The substance stands: apply.mjs's parallel honest log records
zero real writes across the fabrication window.

test-tripwire.sh: 9 cases / 28 assertions, every one executed under `env -i`
with no LANG — the environment launchd actually provides. Case 2 is the
regression test for hole 1 (apply prints only the unicode line -> must read NOT
MEASURED, never a silent pass); case 6 covers hole 3. The first suite ran only
in an interactive shell, which is exactly why it passed 22/22 while the fix was
broken in production.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HZzmXGxo9CPc8YnVkvFcqg
0b26a67 · 2026-09-16 · chore: lint, refactor, v0.1.17 (TK-00038 session close)
Quality gate on the one file this session wrote (pdp-verify-final.mjs):
- lint: no linter configured in repo, so node --check + manual pass.
  One safe fix — unused catch binding in the storefront retry loop -> optional
  catch binding.
- refactor: removed write-only adminUnmeasured/seen bookkeeping. Verified
  behavior-preserving myself rather than on the agent's word: an id absent
  from the admin Map already falls through checkAdminNode's NOT-MEASURED
  guard, which the negative test asserts directly.
- All four deliberate guards confirmed intact: VAR_PAGE full-page ->
  NOT-MEASURED, storefront identity join, 429-retry-then-NOT-MEASURED,
  and verdictOf (unmeasured can never be PASS).

Re-ran BOTH gates on the shipped file after the edits: --test 23/23, and a
full live pass 502/502 MEASURED-OK on both planes, 0 bad, 0 not-measured
=> PASS. Not reporting a result for code that no longer exists.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P9JdVA5oKccJQWkG5Qwiz5
85ec636 · 2026-09-16 · TK-00038: harden the Sanderson PDP verifier (2 measurement holes from 2nd-model review)
Second-model review (grok-4.5; codex path is spend-capped) agreed the 09-14
report was a false green and named two ways a broken product could still
read PASS. Both closed:

1. Variant page truncation. variants(first:20) silently treated anything
   beyond page 1 as fine. A full page now returns NOT-MEASURED — we cannot
   prove we saw every variant. Live max is 2/502 so this is a future guard,
   not a live fix.
2. Storefront identity join. The .json we measure must BE the product we
   asked about; a mismatched id is now NOT-MEASURED, so a wrong-handle
   orphan can't be counted as someone else's pass.

Negative test extended 20 -> 23 assertions, both new guards covered with
a passing control beside each.

Re-ran live with the guards on: 502/502 MEASURED-OK on both planes, 0 bad,
0 not-measured => PASS, identity join enforced on all 502.

Scope note: this verifies catalog invariants + storefront data plane, NOT
the full buy path (image bytes, add-to-cart, checkout) — stated rather
than implied.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P9JdVA5oKccJQWkG5Qwiz5
ef068c8 · 2026-09-16 · TK-11357: stop the action-C tripwire fabricating success receipts
The tripwire logged "OUTCOME tripwire fired: re-zeroed N ... self-heal" with
blast_radius = the count enumerate.mjs DETECTED and errors = apply.mjs's exit
code. apply.mjs skips every inventory level already at 0 and still exits 0, so
for a $0 variant at qty 0 with inventoryPolicy CONTINUE and availableForSale
true it wrote nothing and the wrapper claimed a fix.

Result: 171 consecutive fabricated receipts, blast_radius 6 every time, ~every
15 min from 2026-09-14 to 2026-09-16, against the 6 Latigo Real Cork variants
(CORK-92700/92702/92703/92704/92705/92706) — which are STILL $0.00 + CONTINUE
+ availableForSale=true on the live store. apply.mjs's own summary said
"levels SET -> 0 : 0 / already-0 levels skipped: 6" the whole time. The
detector shared the predicate it audited: it measured "did apply exit 0",
never "is the variant still orderable". enumerate.mjs even prints the warning
"inventory_policy!=DENY -- qty->0 alone will NOT flip availableForSale", but a
console line is not a failure, so the loop sailed past its own red-team signal.
Those phantom receipts also carry undo_cmd rollback.mjs --apply, which would
RESTORE stock for writes that never happened.

Honesty contract now enforced:
- partition the cohort into ACTIONABLE (DENY + tracked, where qty->0 really
  removes orderability) vs UNACTIONABLE (CONTINUE/untracked) BEFORE acting;
- an all-unactionable cohort reports WARN "CANNOT ACT" and names the SKUs and
  the correct gated remedy (CONTINUE->DENY) instead of running a no-op apply;
- blast_radius is apply.mjs's real "levels SET" count, never the detected one;
- ledger ONLY when a write actually happened; partial runs record unremediated;
- unparseable apply output / failed enumerate = NOT MEASURED, never PASS;
- emit data/latest.json (PASS/WARN/FAIL) to a new skill dir so fleet-health-
  rollup can see it — the 3-day stuck loop was invisible because this
  instrument had no heartbeat at all.

Severity maps to CAPABILITY, not counts: PASS = cohort empty or fully
remediated; WARN = cannot act this pass, or not measured; FAIL = enumerate
failed or a write errored.

test-tripwire.sh: 22 assertions, 7 cases, all on fixtures (no Shopify call, no
real ledger, no real heartbeat) — 22/22 green. Case 1 is the injected fault:
6 CONTINUE variants must yield WARN + exit 2 + ZERO ledger lines, which is
precisely what the old script got wrong. Testability seam is behind an
explicit --test flag that the installed plist does not pass (verified:
ProgramArguments is [/bin/bash, tripwire.sh]) and that refuses to run without
TRIPWIRE_TEST_DIR, which redirects the ledger and heartbeat to a temp dir.

Live verification against the real cohort: exit 2, verdict WARN, detected 6 /
actionable 0 / unactionable 6 / levels_set 0, the 6 SKUs named, and no ledger
line written — versus the old script's fabricated blast_radius 6 five minutes
earlier.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HZzmXGxo9CPc8YnVkvFcqg
71fc81e · 2026-09-16 · TK-11644: write-ahead the rollback row before the gated delete
The ledger append sat inside the same try as the Shopify delete, so a delete that
SUCCEEDED followed by a failing append would lose the undo record for a completed
live customer-facing write (unrecoverable) and double-count the row as an error
after ok++ had already run. Now the undo row is written BEFORE the delete, in its
own try: a ledger failure aborts that row's delete entirely (fail-safe), and a
write-ahead row for a delete that then fails is harmless because its undo re-sets
the value to what it already is. Also guards the per-row gql() __err shape.

Dry-run re-verified identical: 5 DELETE / 6 LEAVE / 0 skipped, no write fired.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NbiFp4yxwRthCmDhbkwQnu
d8ce050 · 2026-09-16 · TK-11644: add missing gql() error-object guard to postfix-verify + identity-fix
Both scripts dereference the bulk-op / batch-query response immediately after
calling gql() without checking for the {__err} shape gql() returns on a
non-throttled GraphQL error, so a malformed query or permission error would
crash with an opaque TypeError instead of a clear message. Added a 3-line
guard at each un-try/catch'd call site (startBulk/poll in postfix-verify,
the batch query in identity-fix). Purely additive on an error path dry-run
never exercises; both scripts' dry-run output is confirmed byte-identical
before/after (identity-fix: 5 DELETE/6 LEAVE/0 skipped; postfix-verify:
PASS, 0 survivors of 31,191). No --apply run, no behavior/API change.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NbiFp4yxwRthCmDhbkwQnu
571a382 · 2026-09-16 · TK-00038: refresh Sanderson rollback map to match the verified live state
built_at 09-14 -> 09-16. 506 golive ids -> 502 ACTIVE + 4 missing (the
deliberately tombstoned dedup residue). Cross-confirms the independent
pdp-verify-FINAL read exactly: 502 ACTIVE, 0 defects.
Prior map kept at out/rollback-map-TK-11046.json.pre-20260916.bak.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P9JdVA5oKccJQWkG5Qwiz5
7f0bf67 · 2026-09-16 · TK-00038: complete the Sanderson final PDP verify (was 60/502 measured)
The 09-14 pass wrote bad=0/notfound=0 while 442 of 502 products returned a
bare HTTP 429 — it looked clean but measured only 12% of the population
(CLAUDE.md TK-11431 amd-1 false-green class: an unmeasured input is never PASS).
Cause: the public storefront was hammered with no pacing.

pdp-verify-final.mjs verifies two planes with THREE states each
(MEASURED-OK / MEASURED-BAD / NOT-MEASURED):
  - Admin GraphQL, 50 products/call, asserts the DW go-live invariants
    (ACTIVE+published, has image, sellable price > 0, no $4.25 leak,
     sample = $4.25, non-zero weight, manufacturer_sku metafield,
     >=2 tags, non-empty description)
  - public storefront PDP .json for every product, paced 220ms with
    exponential backoff, so a 429 becomes a retry, not a phantom pass

Result: 502/502 measured on BOTH planes, 0 bad, 0 not-measured => PASS.
Ships with a --test negative test (20 assertions, offline, guarded so no
scheduled run can measure a fixture) proving it reddens on 12 injected
faults and that the 09-14 shape (60 ok / 442 unmeasured) maps to WARN,
not PASS.

Read-only against Shopify. The 4 missing_from_shopify ids are the
deliberately tombstoned dedup residue, excluded by design.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P9JdVA5oKccJQWkG5Qwiz5
236e4a6 · 2026-09-16 · TK-11644: exhaustive post-fix verification (PASS, 0 survivors of 31,191) + gated identity-residual executor (5 of 11 adjudicated DELETE, dry-run default)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NbiFp4yxwRthCmDhbkwQnu
c843942 · 2026-09-16 · WM/SDG reprice pt2: +36 William Morris (exact-code), Morris & Co verified already-priced (TK-11829)
36 extra WM repriced +17.2% (wrote:36 err:0). Morris & Co dry-run: 657/661 already correct,
only 3 fuzzy-match-noise diffs -> NOT repriced (verify-before-acting). reprice.mjs/revert.mjs
now take PLAN+SUF env for multiple cohorts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
6def336 · 2026-09-16 · TK-11758: reversible CONTINUE->DENY fix tool for 6 $0 Latigo cork variants (dry-run verified)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Szengr4hMUDtYdw3jSCfA
c7cb7c8 · 2026-09-16 · WM reprice: add one-command revert.mjs (restores old prices from restore-map, TK-11814)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017DsSmHLJqGWrvjf65UNVQx
41d4d1e · 2026-09-16 · WM reprice: 375 William Morris products to cost/0.65/0.85 (+17.5%, TK-11814)
Steve-approved Option B 2026-09-16. $108,719 -> $127,799 list. wrote:375 err:0.
Reversible: scripts/wm-reprice/restore-map.csv holds every old price.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017DsSmHLJqGWrvjf65UNVQx
0b42942 · 2026-09-15 · TK-11750: fix re-run guard — match rehosted image by basename not source domain
productCreateMedia rehosts on Shopify CDN, so the assets.mayaromanoff.com
domain check never matched and re-ran a duplicate on the canary product.
Now guards on the real image basename. (Duplicate on maya-50039 already cleaned.)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0145uBwAMQGsYkhx1rrDUfbW
950de98 · 2026-09-14 · TK-11750: Maya Romanoff logo-hero fix — gated attach/reorder script + resolved images
3 ACTIVE products showing mayalogohold placeholder as hero. Real images
resolved feed-first from mayaromanoff.com (name-matched, 2500px). GATED:
default dry-run, EXECUTE=1 required. Reversible (local logo backup + undo.mjs).
Folds in Kimi review: poll READY before any delete; never leave zero-image window.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0145uBwAMQGsYkhx1rrDUfbW
c16eadd · 2026-09-14 · tk11323-twil-8yd: remove dead/malformed unused mutation string in delMetafield()
delMetafield() built a local `const m = ...` GraphQL string (singular
$mf misused inside metafields:[$mf]) that was never used — the real call
beside it uses the correct list form ($ids:[MetafieldIdentifierInput!]!).
Dead code + a landmine if someone later wired `m` in. Removed it; kept a
corrected comment. No behavior change; rollback path unaffected.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X7mfnaSD5EB3DGZcaamU8A
484a4a8 · 2026-09-14 · Scope showroom-tag rollback/verify per line (fix SHOWROOM_TARGETS cross-contamination)
apply-showroomonly.mjs gained a SHOWROOM_TARGETS override so any showroom line
can be tagged, but DATA/ stayed shared and rollback read it globally: a rollback
for one line would tagsRemove 'ShowroomOnly' from every line whose restore maps
sat in the dir (already mixed on disk: MDC 4728 + Phillip Jeffries 3392),
un-hiding a line the operator never touched.

- resolveBaseline: skip restore maps whose source_id_list != the active MAP_FILE
- rollback: hard-intersect toRemove/preserved with the current target gid set
- doVerify: count per-line via prescan instead of a store-wide productsCount,
  which returned a false MISMATCH (and misled the rollback abort-guard) once
  more than one line was tagged

Verified: MDC rollback now scopes to 4728 (PJ untouched); PJ rollback scopes to
3392 (MDC untouched). Local code only; nothing run against Shopify.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FTQanBRpHfVRuReimUagK5
73440d7 · 2026-09-14 · TK-11732: extend showroom hide to Phillip Jeffries (env-driven target list)
apply-showroomonly.mjs now honors SHOWROOM_TARGETS to point the proven
tagsAdd/restore-map/ledger machinery at any showroom line; used it to tag
3,392 PJ ShowroomOnly (live-verified 3392/3392). Regenerated dw-showroom-hide.js
to 8,120 ids (MDC 4,728 + PJ 3,392); deployed to live theme 145556635699.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
bb1980f · 2026-09-14 · TK-11673: extract June title_tag corrector to transform.mjs + negative test
Extract the de-dup/de-truncate corrector (fix/classes + predicates) verbatim from
build-map.mjs into a single-source transform.mjs, and wire build-map.mjs to import it
so the map builder, apply/rollback, and the test all exercise the SAME corrector (no
drifting copy). Add transform.test.mjs: fixes a doubled fixture + a truncated-ellipsis
fixture, leaves a clean title untouched, never emits banned 'Wallpaper', an injected-fault
red-test proving the harness catches a broken corrector, and a 14,156-row replay proving
fix() reproduces every committed map.json new_title_tag with 0 residual defects.

Behavior of build-map.mjs is unchanged (transform copied verbatim; replay proves parity).
No Shopify write. Live title_tag apply stays GATED.

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

File tree

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

Other build journals

← Designerssalesreps  ·  all 4 projects  ·  Designtradelive →

Export

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

rendered in 54ms