← back to Gmc Titlefix
TK-11449: read-only final verification sweep — 61 deletions hold, 5/5 price fixes serving, residual-3 orphans down to 1 (inert)
3c8960676d853bce513155516cf7f4e8f98f00d2 · 2026-09-13 01:24:23 -0700 · Steve Abrams
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GVWLj6gbs5W5uaJTJqpUFC
Files touched
A data/tk11449-final-verify.jsonA tk11449-final-verify.mjs
Diff
commit 3c8960676d853bce513155516cf7f4e8f98f00d2
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Sun Sep 13 01:24:23 2026 -0700
TK-11449: read-only final verification sweep — 61 deletions hold, 5/5 price fixes serving, residual-3 orphans down to 1 (inert)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GVWLj6gbs5W5uaJTJqpUFC
---
data/tk11449-final-verify.json | 961 +++++++++++++++++++++++++++++++++++++++++
tk11449-final-verify.mjs | 72 +++
2 files changed, 1033 insertions(+)
diff --git a/data/tk11449-final-verify.json b/data/tk11449-final-verify.json
new file mode 100644
index 0000000..7ac2006
--- /dev/null
+++ b/data/tk11449-final-verify.json
@@ -0,0 +1,961 @@
+{
+ "generated_at": "2026-09-13T08:15:49.481Z",
+ "enumeration_complete": true,
+ "offers_scanned": 62275,
+ "resurrected": [],
+ "tobacco": [
+ {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-19T23:34:11.626Z",
+ "lastUpdateDate": "2026-09-11T22:41:01.690600Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ },
+ {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-19T23:24:41.097Z",
+ "lastUpdateDate": "2026-09-11T22:59:15.527470Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ },
+ {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-19T23:31:28.369Z",
+ "lastUpdateDate": "2026-09-11T23:20:18.074227Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ },
+ {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-19T23:34:13.787Z",
+ "lastUpdateDate": "2026-09-11T23:30:26.501667Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ },
+ {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-19T23:34:17.630Z",
+ "lastUpdateDate": "2026-09-11T23:45:55.441623Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ },
+ {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-19T23:34:15.635Z",
+ "lastUpdateDate": "2026-09-12T00:40:40.007758Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ }
+ ],
+ "new_orphans": [
+ {
+ "offerId": "43605859270707",
+ "price": {
+ "amountMicros": "195000000",
+ "currencyCode": "USD"
+ },
+ "link": "https://www.designerwallcoverings.com/products/pico-stripe-margot-magenta-1",
+ "status": {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "approvedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "approvedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "approvedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "approvedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "approvedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "approvedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-20T01:09:11.236Z",
+ "lastUpdateDate": "2026-09-11T22:51:23.518941Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ }
+ },
+ {
+ "offerId": "43605859696691",
+ "price": {
+ "amountMicros": "195000000",
+ "currencyCode": "USD"
+ },
+ "link": "https://www.designerwallcoverings.com/products/pico-stripe-golden-1",
+ "status": {
+ "destinationStatuses": [
+ {
+ "reportingContext": "SHOPPING_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DISPLAY_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "FREE_LISTINGS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "VIDEO_ADS",
+ "disapprovedCountries": [
+ "US"
+ ]
+ },
+ {
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "disapprovedCountries": [
+ "US"
+ ]
+ }
+ ],
+ "itemLevelIssues": [
+ {
+ "code": "illegal_drugs_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Illegal drugs",
+ "detail": "Recreational drugs, drug-related equipment, or instructional content about illicit drug use are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#rec",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "illegal_drugs_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Illegal drugs",
+ "detail": "Recreational drugs, drug-related equipment, or instructional content about illicit drug use are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#rec",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "illegal_drugs_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Illegal drugs",
+ "detail": "Recreational drugs, drug-related equipment, or instructional content about illicit drug use are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#rec",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "illegal_drugs_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Illegal drugs",
+ "detail": "Recreational drugs, drug-related equipment, or instructional content about illicit drug use are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#rec",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "illegal_drugs_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Illegal drugs",
+ "detail": "Recreational drugs, drug-related equipment, or instructional content about illicit drug use are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#rec",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "illegal_drugs_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Illegal drugs",
+ "detail": "Recreational drugs, drug-related equipment, or instructional content about illicit drug use are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#rec",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "SHOPPING_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DISPLAY_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "FREE_LISTINGS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "VIDEO_ADS",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ },
+ {
+ "code": "tobacco_policy_violation",
+ "severity": "DISAPPROVED",
+ "resolution": "merchant_action",
+ "reportingContext": "DEMAND_GEN_ADS_DISCOVER_SURFACE",
+ "description": "Tobacco products & related equipment",
+ "detail": "Tobacco-containing products, their components, or any related equipment are not allowed",
+ "documentation": "https://support.google.com/merchants/answer/6150004#tobacco",
+ "applicableCountries": [
+ "US"
+ ]
+ }
+ ],
+ "creationDate": "2026-08-20T01:08:48.213Z",
+ "lastUpdateDate": "2026-09-11T23:09:10.076139Z",
+ "googleExpirationDate": "2026-10-11T22:03:45Z"
+ }
+ },
+ null
+ ]
+}
\ No newline at end of file
diff --git a/tk11449-final-verify.mjs b/tk11449-final-verify.mjs
new file mode 100644
index 0000000..89a7dd0
--- /dev/null
+++ b/tk11449-final-verify.mjs
@@ -0,0 +1,72 @@
+#!/usr/bin/env node
+// TK-11449 — READ-ONLY final verification sweep. Fires nothing. $0.
+// (1) 61 orphan deletions still absent? (2) 5 price fixes still live?
+// (3) 6 tobacco offers moved? (4) 3 NEW orphans from the residual-3 dedup: serving?
+import fs from 'fs';
+const HOME = process.env.HOME;
+const MERCHANT = '146735262';
+const SHOP = 'designer-laboratory-sandbox';
+const shopTok = fs.readFileSync(HOME + '/Projects/secrets-manager/.env','utf8').match(/^SHOPIFY_FULL_ACCESS_TOKEN=(.+)$/m)[1];
+const b64 = b => Buffer.from(b).toString('base64').replace(/=/g,'').replace(/\+/g,'-').replace(/\//g,'_');
+async function mcToken(){
+ const SA = JSON.parse(fs.readFileSync(HOME+'/Projects/secrets-manager/gmc-sa-146735262.json','utf8'));
+ const now = Math.floor(Date.now()/1000);
+ const si = b64(JSON.stringify({alg:'RS256',typ:'JWT'}))+'.'+b64(JSON.stringify({iss:SA.client_email,scope:'https://www.googleapis.com/auth/content',aud:'https://oauth2.googleapis.com/token',iat:now,exp:now+3600}));
+ const crypto = await import('crypto');
+ const s = crypto.createSign('RSA-SHA256'); s.update(si); const jwt = si+'.'+b64(s.sign(SA.private_key));
+ const r = await fetch('https://oauth2.googleapis.com/token',{method:'POST',headers:{'Content-Type':'application/x-www-form-urlencoded'},body:new URLSearchParams({grant_type:'urn:ietf:params:oauth:grant-type:jwt-bearer',assertion:jwt})});
+ const j = await r.json(); if(!j.access_token) throw new Error('mc token fail'); return j.access_token;
+}
+async function mcGet(url,H){ for(let a=0;a<6;a++){ try{ const r=await fetch(url,{headers:H,signal:AbortSignal.timeout(30000)}); if(r.status===429||r.status>=500){await new Promise(z=>setTimeout(z,2000*(a+1)));continue;} return {status:r.status, json:await r.json()}; }catch(e){ await new Promise(z=>setTimeout(z,2000*(a+1))); } } throw new Error('mc get exhausted '+url); }
+
+const TOBACCO = ['44588462440499','44587694358579','44588454772787','44588462506035','44588462637107','44588462571571'];
+const PRICEFIX = { '44299251581043':'Mayenne', '44578580300019':'Maizan', '44578580365555':'Sufera' }; // best-effort; resolved below from memo if absent
+const NEW_ORPHANS = ['43605859270707','43605859696691','43605859663923'];
+const SURVIVORS = ['43608487526451','43672712511539','43608500699187'];
+
+(async () => {
+ const H = { Authorization: 'Bearer ' + (await mcToken()) };
+ // FULL enumeration — the only complete instrument (never a single GET).
+ let pt=null, all=[], pages=0;
+ do { const url=`https://merchantapi.googleapis.com/products/v1/accounts/${MERCHANT}/products?pageSize=1000`+(pt?`&pageToken=${pt}`:'');
+ const {json:j}=await mcGet(url,H); for(const p of (j.products||[])) all.push(p); pt=j.nextPageToken||null; pages++; } while(pt);
+ const complete = !pt;
+ console.log(`ENUMERATION: ${all.length} offers / ${pages} pages / complete=${complete}`);
+ if(!complete || all.length===0){ console.log('NOT_MEASURED — incomplete enumeration'); process.exit(2); }
+ const byOffer = new Map(all.map(p=>[p.offerId,p]));
+
+ // (1) 61 deleted still absent
+ let delList=[];
+ try{ const sel=JSON.parse(fs.readFileSync(HOME+'/Projects/gmc-titlefix/data/tk11449-orphan-select.json','utf8'));
+ delList=(sel.to_delete||[]).map(x=>x.offerId||String(x.mc_id||'').split(':').pop()).filter(Boolean); }catch(e){}
+ const resurrected = delList.filter(o=>byOffer.has(o));
+ console.log(`\n(1) PRIOR ORPHAN DELETIONS: list=${delList.length} still-absent=${delList.length-resurrected.length} RESURRECTED=${resurrected.length}`);
+ if(resurrected.length) console.log(' RESURRECTED IDS:', resurrected.join(','));
+
+ const show = (label, ids) => {
+ console.log(`\n${label}`);
+ for(const o of ids){
+ const p = byOffer.get(o);
+ if(!p){ console.log(` ${o} ABSENT from feed`); continue; }
+ const a=p.productAttributes||{}, st=p.productStatus||{};
+ const price = a.price? (parseInt(a.price.amountMicros,10)/1e6).toFixed(2)+' '+a.price.currencyCode : 'NULL';
+ const dest = (st.destinationStatuses||[]).map(d=>`${d.reportingContext}:${(d.approvedCountries||[]).length?'APPROVED':(d.disapprovedCountries||[]).length?'DISAPPROVED':(d.pendingCountries||[]).length?'PENDING':'-'}`).join(',');
+ const iss = [...new Set((st.itemLevelIssues||[]).map(i=>i.severity+'|'+i.code))].join(' ');
+ console.log(` ${o} ${price} upd=${st.lastUpdateDate||'?'}\n title=${(a.title||'').slice(0,70)}\n link=${a.link||''}\n dest=[${dest}]\n issues=[${iss}]`);
+ }
+ };
+ show('(2) PRICE-FIX COHORT (3 via API + Batik/Glambeads via paste):', Object.keys(PRICEFIX));
+ show('(3) TOBACCO 6 (appeal candidates) — has anything moved?', TOBACCO);
+ show('(4) NEW ORPHANS created by the 06:47 residual-3 dedup:', NEW_ORPHANS);
+ show('(4b) their SURVIVOR counterparts:', SURVIVORS);
+
+ // Shopify state of residual-3
+ const rows = fs.readFileSync(HOME+'/Projects/gmc-titlefix/data/tk11449-residual3-RESTOREMAP-2026-09-13T06-41-33-083Z.jsonl','utf8').trim().split('\n').map(l=>JSON.parse(l));
+ const ids = rows.flatMap(r=>[r.orig_id,r.surv_id]);
+ const q = `query($ids:[ID!]!){ nodes(ids:$ids){ ... on Product { id handle status title } } }`;
+ const r = await fetch(`https://${SHOP}.myshopify.com/admin/api/2024-10/graphql.json`,{method:'POST',headers:{'X-Shopify-Access-Token':shopTok,'Content-Type':'application/json'},body:JSON.stringify({query:q,variables:{ids}})});
+ const j = await r.json();
+ console.log('\n(5) SHOPIFY residual-3 state:');
+ (j.data?.nodes||[]).forEach(n=>n&&console.log(` ${n.status.padEnd(8)} ${n.handle} ${n.title.slice(0,55)}`));
+ fs.writeFileSync(HOME+'/Projects/gmc-titlefix/data/tk11449-final-verify.json', JSON.stringify({generated_at:new Date().toISOString(),enumeration_complete:complete,offers_scanned:all.length,resurrected,tobacco:TOBACCO.map(o=>byOffer.get(o)?.productStatus||null),new_orphans:NEW_ORPHANS.map(o=>{const p=byOffer.get(o);return p?{offerId:o,price:p.productAttributes?.price,link:p.productAttributes?.link,status:p.productStatus}:null;})},null,1));
+})().catch(e=>{console.error('FATAL',e);process.exit(1);});
← f939270 TK-11449: residual-3 dedup follow-on orphan check — 3 new Go
·
back to Gmc Titlefix
·
auto-data-snapshot: 2026-09-13T02:36:34 (1 data files) — dat 3d1db1c →