{"slug":"tk-10965-zero-price-analysis","total":20,"limit":100,"offset":0,"since":null,"commits":[{"hash":"2525621","date":"2026-09-22 17:52:59 -0700","author":"Steve Abrams","subject":"Fix: prevention test imports canonical master, not stale local copy (TK-11786)","body":"Replace the 75-line vendored inventory-stamp-guard.mjs with a portable shim\nthat re-exports from the canonical master at ~/Projects/_shared/dw-guards/.\nThe prevention test now validates against the current guard implementation,\nnot a diverged local snapshot.\n\nThe portable shim resolves via DW_SHARED_GUARDS env or home-dir fallback,\nenabling the guard to work on Kamatera (/root), Mac1, and any other machine.\n\nESM consumers (import) work correctly. CJS consumers (require) fail safely\nwith ERR_REQUIRE_ASYNC_MODULE, preventing silent bad defaults.\n\nAll 8 test cases pass: guard correctly stamps 0 on the $0-orderable class,\n2026 otherwise.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01WoD95uATtwJXUZvQ7PNPsB"},{"hash":"c57e84a","date":"2026-09-08 05:59:33 -0700","author":"Steve Abrams","subject":"Reload fixture truth and serialize competing Vienna CLI writers","body":""},{"hash":"7645583","date":"2026-09-08 05:52:25 -0700","author":"Steve Abrams","subject":"Freeze Vienna executor scope and journal offline mutations safely","body":""},{"hash":"7fb358c","date":"2026-09-08 04:48:13 -0700","author":"Steve","subject":"Reject unsafe inventory CLI arguments before initialization","body":""},{"hash":"55f8804","date":"2026-08-31 00:57:53 -0700","author":"Steve Abrams","subject":"chore: lint, refactor, v1.1.1 (session close)","body":""},{"hash":"7709f2c","date":"2026-08-30 23:15:38 -0700","author":"Steve Abrams","subject":"isolate fixture runs from canary heartbeat","body":""},{"hash":"ee159c0","date":"2026-08-30 21:20:24 -0700","author":"codex-10965","subject":"fix(A): execute on_hand=0 remediation on 1743 live variants — verify CLEAN, reversible via restore-maps","body":""},{"hash":"bb56e7c","date":"2026-08-30 21:16:30 -0700","author":"vp-dw-commerce","subject":"TK-10965 Fix A executed: 1,743 zero-price sellable variants set on_hand=0 (non-orderable); env-override for sanctioned inventory token; verify CLEAN","body":"- apply-fix.mjs: prefer SHOPIFY_ADMIN_ACCESS_TOKEN (write_inventory) via env override\n- run-with-inventory-token.sh: loads sanctioned importer token, injects into child env\n- runs/: restore-maps for canary(50) + all(1693) — full reversibility\n- verify.mjs RESULT: CLEAN (exit 0), all 4 vendors 0 zero-price-orderable\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"0bf5296","date":"2026-08-30 20:55:22 -0700","author":"codex-10965","subject":"feat: Fix B prevention guard (inventory-stamp invariant) + test + apply guide, v1.1.0","body":""},{"hash":"f46558f","date":"2026-08-30 17:41:20 -0700","author":"Steve Abrams","subject":"paginate zero-price canary variants","body":""},{"hash":"6696093","date":"2026-08-30 17:40:45 -0700","author":"Steve Abrams","subject":"snapshot concurrent zero-price remediation evidence","body":""},{"hash":"ae6d884","date":"2026-08-30 15:20:14 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-08-30T15:20:13 (1 data files) — tk10964-canary-guard/data/latest.json","body":""},{"hash":"7f8dbb2","date":"2026-08-30 15:02:03 -0700","author":"steve@designerwallcoverings.com","subject":"chore: syntax-validate + VERSION 1.0.0 (session close)","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"7e1dd31","date":"2026-08-30 14:42:49 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-08-30T14:42:48 (4 data files) — tk10964-canary-guard/README.md tk10964-canary-guard/com.steve.zero-price-orderable-canary.plist tk10964-canary-guard/rollback/TK-10974-preinstall/com.steve.zero-price-orderable-canary.plist tk10964-canary-guard/rollback/TK-10974-preinstall/failed-bootstrap-library-copy.plist","body":""},{"hash":"2a6ecb4","date":"2026-08-30 14:31:26 -0700","author":"Steve Abrams","subject":"make zero-price canary scheduler-visible","body":""},{"hash":"db7f993","date":"2026-08-30 14:30:56 -0700","author":"Steve Abrams","subject":"snapshot live zero-price evidence before canary install","body":""},{"hash":"3b4e9b8","date":"2026-08-30 11:27:26 -0700","author":"Steve Abrams","subject":"add hardened zero-price orderable canary guard","body":""},{"hash":"7eb582b","date":"2026-08-30 10:07:41 -0700","author":"steve@designerwallcoverings.com","subject":"Add apply-fix.mjs (restore-map-first, canary-batched, rollback) — needs write_inventory scope","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"31761c3","date":"2026-08-30 09:41:01 -0700","author":"steve@designerwallcoverings.com","subject":"Add multi-location caveat (Kimi second-model confirm) to remediation","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"8b81bcc","date":"2026-08-30 09:38:25 -0700","author":"steve@designerwallcoverings.com","subject":"TK-10965: zero-price-orderable root-cause analysis + verify harness","body":"Root cause: all 1281 flagged PR variants are DENY + qty=2026 + tracked\n(year-literal stamped by setInventory2026), NOT inventory_policy=CONTINUE\nas previously diagnosed. True blast radius = 1743 (PR 1281 + Fentucci 462);\ncanary undercounts by 462 (Fentucci not tagged quote-only). READ-ONLY.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n"}]}