← back to Dw Color Image Audit
PR raw-930 close-out: Gemini-vision spot-check on 40 strongest chromatic candidates = 0 confirmed wrong-image defects (1 low-conf WATCH row Oswego-Plum, DTD B 2/3); $0.0240 actual
7b31afd1bbf4a023c098ac641d9deb39506acca3 · 2026-06-21 17:10:59 -0700 · SteveStudio2
Files touched
A results/pr_raw930_vision_spotcheck.csvA results/pr_raw930_vision_spotcheck.jsonlA scripts/pr_raw930_vision_spotcheck.py
Diff
commit 7b31afd1bbf4a023c098ac641d9deb39506acca3
Author: SteveStudio2 <steve@designerwallcoverings.com>
Date: Sun Jun 21 17:10:59 2026 -0700
PR raw-930 close-out: Gemini-vision spot-check on 40 strongest chromatic candidates = 0 confirmed wrong-image defects (1 low-conf WATCH row Oswego-Plum, DTD B 2/3); $0.0240 actual
---
results/pr_raw930_vision_spotcheck.csv | 41 ++++++
results/pr_raw930_vision_spotcheck.jsonl | 40 ++++++
scripts/pr_raw930_vision_spotcheck.py | 238 +++++++++++++++++++++++++++++++
3 files changed, 319 insertions(+)
diff --git a/results/pr_raw930_vision_spotcheck.csv b/results/pr_raw930_vision_spotcheck.csv
new file mode 100644
index 0000000..6646327
--- /dev/null
+++ b/results/pr_raw930_vision_spotcheck.csv
@@ -0,0 +1,41 @@
+spid,vendor,declared,declared_word,declared_family,image_family,real_hex,chroma,dashed,strength,classify_reason,filename_words,gate,vision_dominant,vision_matches,which_matched,vision_confidence,vision_note,image_url
+7796281344051,Phillipe Romano,Blue Marlin - Goldenrod Phthalate Free Vinyl,Goldenrod Phthalate Free Vinyl,blue,orange,#DCA050,0.549,True,1065,non-adjacent hue (dist 6),sunflower,OK_CONSISTENT,light yellow-orange,True,declared,0.9,"Color is a muted yellow-orange, consistent with goldenrod.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Nuvtex_Big-Bird_Sunflower.jpg?v=1773219062
+7421443866675,Phillipe Romano,Cairn - Ink Blue Blue By Phillipe Romano,Ink Blue Blue By Phillipe Romano,blue,red,#C8B4B4,0.078,True,1055,non-adjacent hue (dist 5),,OK_CONSISTENT,blue,True,declared,0.9,The blue triangles are consistent with 'Ink Blue Blue'.,https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WTN1057_WT_0c8b6538-1b9c-4889-ba62-534c58220105.jpg?v=1753307165
+7421443899443,Phillipe Romano,Cairn - Ink Bluep Blue By Phillipe Romano,Ink Bluep Blue By Phillipe Romano,blue,red,#C8B4B4,0.078,True,1055,non-adjacent hue (dist 5),,OK_CONSISTENT,dark blue,True,Cairn - Ink Bluep Blue By Phillipe Romano,0.9,The dark blue triangles are consistent with 'Ink Blue'.,https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WTN1057P_WT_5c53a848-d080-4995-b30d-43c804bff4d5.jpg?v=1753307163
+6936691081267,Phillipe Romano Wide Textures,Peekskill-Peacock Cop Durable Vinyl,Peekskill-Peacock Cop Durable Vinyl,teal,red,#643C3C,0.157,False,1050,non-adjacent hue (dist 5),,OK_CONSISTENT,teal and rust,True,declared,0.9,"Teal is consistent with peacock, rust with copper.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-ET-23_96d24dfc-1ad6-4fa4-a6f5-017ffd763fd5.jpg?v=1733891279
+1501554049136,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,red,#A0503C,0.392,True,1045,non-adjacent hue (dist 4),,OK_CONSISTENT,reddish-brown,True,declared,0.9,"The color is a reddish-brown with metallic hints, consistent with the name.",https://edge.arte-international.com/media/6913ebe0-e95b-4804-a857-c976f16ea851/conversions/Antigua_Tintura_33025_Packshot_Web_HR-thumb-two-thirds.jpg
+1501554376816,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,red,#A07878,0.157,True,1045,non-adjacent hue (dist 4),,OK_CONSISTENT,rose gold,True,declared,0.9,The wallcovering has a metallic sheen and a rosy hue.,https://edge.arte-international.com/media/3763e3c4-b2f5-4b6c-a829-96bf233b2351/conversions/Antigua_Tintura_33026_Roomshot_Web_HR-medium-two-thirds.jpg
+1501560504432,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,red,#B48C8C,0.157,True,1045,non-adjacent hue (dist 4),,DEFECT,pink,False,none,0.1,"The color is pink, not metal leaf.",https://edge.arte-international.com/media/90ed55ea-fc36-45b1-8bec-cee0ea081f54/conversions/Antigua_Pentagono_33046_Roomshot_Web_LR-medium-two-thirds.jpg
+1501556801648,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,red,#DCC8C8,0.078,True,1045,non-adjacent hue (dist 4),,DEFECT,off-white,False,none,0.1,"The color is off-white, not metallic leaf.",https://edge.arte-international.com/media/90979003-6a2d-4335-aa4b-d1982c68351d/conversions/Antigua_Tintura_33033_Packshot_Web_HR-thumb-two-thirds.jpg
+1496109121648,Phillipe Romano,Zuberista On Mylar - Floral and Birds on Gold Shiny Mylar,Floral and Birds on Gold Shiny Mylar,yellow,pink,#B45078,0.392,True,1035,non-adjacent hue (dist 3),,DEFECT,magenta,False,none,0.9,"The wallcovering is magenta, not gold.",https://edge.arte-international.com/media/3e65ac87-1a1d-4b3a-ad18-567669b3b4dc/conversions/Kanso_Yugen_72500_Roomshot_Web_LR-medium-two-thirds.jpg
+1501549625456,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,orange,#8C503C,0.314,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,reddish-brown,True,declared,0.9,,https://edge.arte-international.com/media/a75c8adb-1e15-4f05-b815-f6e901c7fe0a/conversions/Antigua_Stagionato_33011_Roomshot_Web_LR-medium-two-thirds.jpg
+1501548249200,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,orange,#DCB48C,0.314,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,gold,True,declared,0.9,"The gold color is consistent with ""Renaissance Metal Leaf"".",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c001a71c02b94d664c54068a330b8140.jpg?v=1572310588
+1501564993648,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,orange,#DCC8A0,0.235,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,gold,True,declared,1.0,"The wallcovering is a metallic gold, consistent with the name.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/eb7b13553b10622413afa9ee1ea33378.jpg?v=1572310603
+1501551755376,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,orange,#DCC8A0,0.235,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,gold,True,declared,1.0,"The wallcovering is a metallic gold, consistent with 'Renaissance Metal Leaf'.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/cb08814e3f800c88c5d25942fdca3796.jpg?v=1572310601
+7792235806771,Philippe Romano Fabrics,Native - Lilac Sustainable Bio-Based,Lilac Sustainable Bio-Based,violet,red,#8C6464,0.157,True,1035,non-adjacent hue (dist 3),lilac,DEFECT,mauve,False,none,0.9,"Color is mauve, not lilac.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Native_Lilac_5b154f92-0ff9-4976-bbdd-00aca8d02d94.jpg?v=1772654778
+7791174484019,Philippe Romano Fabrics,Native - Lilac Sustainable Bio-Based,Lilac Sustainable Bio-Based,violet,red,#8C6464,0.157,True,1035,non-adjacent hue (dist 3),lilac,DEFECT,mauve,False,none,0.9,"Color is mauve, not lilac.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Native_Lilac.jpg?v=1772570026
+7792233218099,Philippe Romano Fabrics,Maho Bay - Peacock Phthalate Free Vinyl,Peacock Phthalate Free Vinyl,teal,indigo,#28283C,0.078,True,1035,non-adjacent hue (dist 3),,DEFECT,dark blue,False,none,0.9,"Color is dark blue, not peacock.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Si_Muse_Harbor_43ffc3c9-1531-4343-a376-7b24423c9b7e.jpg?v=1772654603
+7421434789939,Phillipe Romano,Grasscloth Texture - Eugene Light Blue By Phillipe Romano,Eugene Light Blue By Phillipe Romano,blue,green,#B4C8B4,0.078,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,light blue,True,Eugene Light Blue By Phillipe Romano,0.95,The texture has fine horizontal lines of light blue and white.,https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WTK15302_WT_5277106e-bc83-439b-a9bf-78f4d862fc78.jpg?v=1753307730
+7421395238963,Phillipe Romano,Lena - Sky Light Blue By Phillipe Romano,Sky Light Blue By Phillipe Romano,blue,green,#C8DCC8,0.078,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,pale blue and yellow,True,Lena - Sky Light Blue By Phillipe Romano,0.9,The wallcovering is a pale blue with yellow accents.,https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WNS5514_WT_5e36e34c-d6e3-42cc-8652-8857e0084c86.jpg?v=1753318081
+7791127330867,Philippe Romano Fabrics,Crushed Coral - Mauve Phthalate Free Vinyl,Mauve Phthalate Free Vinyl,violet,red,#3C2828,0.078,True,1035,non-adjacent hue (dist 3),garnet,OK_CONSISTENT,deep reddish-purple,True,alt,0.9,"Color is a deep reddish-purple, closer to garnet.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Verdi_Velvet_Crushed_Garnet_ccbab17b-9052-4589-94d9-b059f3eaab90.jpg?v=1772568326
+7791144566835,Philippe Romano Fabrics,Guana Island - Slate Phthalate Free Vinyl,Slate Phthalate Free Vinyl,blue,magenta,#3C283C,0.078,True,1035,non-adjacent hue (dist 3),,OK_CONSISTENT,dark gray,True,Slate Phthalate Free Vinyl,0.9,"Dominant color is a dark, muted gray.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Verdi_Grove_Storm_e887cc78-8e9b-42da-acb6-367fb0a7c5cf.jpg?v=1772569058
+1496108957808,Phillipe Romano,Zuberista Wallpapeon Shiny Mylar- Floral & Birds on Gold Mylarr,Zuberista Wallpapeon Shiny Mylar- Floral & Birds on Gold Mylarr,yellow,pink,#B45078,0.392,False,1030,non-adjacent hue (dist 3),,DEFECT,magenta,False,none,0.1,"The wallcovering is magenta, not gold.",https://edge.arte-international.com/media/3e65ac87-1a1d-4b3a-ad18-567669b3b4dc/conversions/Kanso_Yugen_72500_Roomshot_Web_LR-medium-two-thirds.jpg
+6936708481075,Phillipe Romano Wide Textures,Hudson Vine-French Lilac Durable Vinyl,Hudson Vine-French Lilac Durable Vinyl,violet,red,#A07878,0.157,False,1030,non-adjacent hue (dist 3),,OK_CONSISTENT,mauve,True,declared,0.9,"The color is a muted, dusty rose or mauve, consistent with French Lilac.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-VT-39_c8469395-4e22-4a9a-a16f-e5bf17fa22f9.jpg?v=1733890063
+6936694194227,Phillipe Romano Wide Textures,Hornell-Plum Sheen Durable Vinyl,Hornell-Plum Sheen Durable Vinyl,violet,red,#8C6464,0.157,False,1030,non-adjacent hue (dist 3),,DEFECT,brown,False,none,0.1,"The dominant color is brown, not plum.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-GO-07_5fcebf4c-83d5-4c80-8d17-130bfc0ad0dc.jpg?v=1733891085
+6936692260915,Phillipe Romano Wide Textures,Oswego-Plum Durable Vinyl,Oswego-Plum Durable Vinyl,violet,cyan,#285050,0.157,False,1030,non-adjacent hue (dist 3),,DEFECT,teal,False,none,0.1,"The dominant color is teal, not plum.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-GD-03_9776e01f-244a-4eab-b3eb-721a29b734d7.jpg?v=1733891214
+6936692555827,Phillipe Romano Wide Textures,Oswego-Peeking Plum Durable Vinyl,Oswego-Peeking Plum Durable Vinyl,violet,red,#8C6464,0.157,False,1030,non-adjacent hue (dist 3),,OK_CONSISTENT,mauve,True,declared,0.9,"The color is a muted reddish-purple, consistent with plum.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-GD-11_60e4691d-57ca-493f-b0d9-27d060d9890d.jpg?v=1733891199
+6936700780595,Phillipe Romano Wide Textures,Portsmouth-Dreamy Lilac Durable Vinyl,Portsmouth-Dreamy Lilac Durable Vinyl,violet,red,#C8B4B4,0.078,False,1030,non-adjacent hue (dist 3),,DEFECT,grey and beige,False,none,0.1,"The pattern is grey and beige, not lilac.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-LU-05_940090f2-233d-4451-acab-374f91a37b70.jpg?v=1733890658
+6936686657587,Phillipe Romano Wide Textures,Troy-Intricate Plum Durable Vinyl,Troy-Intricate Plum Durable Vinyl,violet,red,#3C2828,0.078,False,1030,non-adjacent hue (dist 3),,DEFECT,brown,False,none,0.1,"The wallcovering is brown, not plum.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-CN-34_a67cca22-d583-47f8-96fb-4dad4156c92e.jpg?v=1733891521
+6936706908211,Phillipe Romano Wide Textures,Exeter Ombre-Navy Rose Durable Vinyl,Exeter Ombre-Navy Rose Durable Vinyl,pink,indigo,#28283C,0.078,False,1030,non-adjacent hue (dist 3),,OK_CONSISTENT,navy blue and rose,True,declared,0.9,"Dominant navy blue with rose accents, consistent with name.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-SS-08_726a065e-5353-4866-bdf2-0f1e4ceae3ee.jpg?v=1733890181
+7792246915123,Philippe Romano Fabrics,Smooth Pebble Grain Deep Teal,Smooth Pebble Grain Deep Teal,teal,indigo,#28283C,0.078,False,1030,non-adjacent hue (dist 3),,OK_CONSISTENT,dark blue-green,True,declared,0.95,Color is a deep teal with a subtle pebble grain texture.,https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Pointe_Aire-Suede-Sedona_Tidepool.jpg?v=1772655642
+7792232398899,Philippe Romano Fabrics,Montego - Fern Phthalate Free Vinyl,Fern Phthalate Free Vinyl,green,yellow,#A07828,0.471,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,greenish-yellow,True,declared,0.9,"Dominant color is a muted, earthy green-yellow.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EVOFABRIC-VIRTUAL-MISTRAL_LEMONGRASS_777dfb18-65d2-405a-9be7-82b6ed566969.jpg?v=1772654546
+1501547888752,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,yellow,#DCB464,0.471,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,gold,True,declared,1.0,"The wallcovering is a metallic gold with brown undertones, matching the name.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/ab2e0482f233159b30bce95bc371baa3.jpg?v=1572310588
+7421423222835,Phillipe Romano,Metallic Sisal - Lemon Grass By Phillipe Romano,Lemon Grass By Phillipe Romano,green,yellow,#C8B464,0.392,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,pale yellow green,True,Lemon Grass By Phillipe Romano,0.9,"The color is a muted, pale yellow-green, consistent with lemongrass.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WSS4528_WT_85557222-3d6a-47c6-8087-2935e50a7162.jpg?v=1753308461
+1501547167856,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,yellow,#DCC878,0.392,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,gold,True,declared,1.0,The wallcovering is a metallic gold leaf pattern.,https://cdn.shopify.com/s/files/1/0015/4117/7456/products/0670b8d1cc26eef63d9bec2768433f7c.jpg?v=1572310588
+1501547593840,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,yellow,#DCC878,0.392,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,gold,True,declared,1.0,"The gold color is consistent with ""Renaissance Metal Leaf"".",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/9f08b4211957344b636da237f5d1d34c.jpg?v=1572310588
+7791145222195,Philippe Romano Fabrics,Hawksbill - Peacock Phthalate Free Vinyl,Peacock Phthalate Free Vinyl,teal,blue,#145064,0.314,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,teal,True,Peacock Phthalate Free Vinyl,0.9,,https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Habitat_Pesca.jpg?v=1772569106
+1501557358704,Phillipe Romano Metals,Phillipe Romano - Renaissance Metal Leaf,Renaissance Metal Leaf,green,yellow,#DCC88C,0.314,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,gold,True,declared,1.0,The wallcovering is a metallic gold leaf pattern.,https://cdn.shopify.com/s/files/1/0015/4117/7456/products/88ddb8156c84ad3ad53170d3b462862e.jpg?v=1572310602
+7791145254963,Philippe Romano Fabrics,Hawksbill - Lagoon Phthalate Free Vinyl,Lagoon Phthalate Free Vinyl,teal,blue,#3C788C,0.314,True,1025,non-adjacent hue (dist 2),,OK_CONSISTENT,teal,True,Lagoon Phthalate Free Vinyl,1.0,"Dominant color is a shade of teal, consistent with 'Lagoon'.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Habitat_Pooltide.jpg?v=1772569109
+7792228368435,Philippe Romano Fabrics,Linen Island - Fern Phthalate Free Vinyl,Fern Phthalate Free Vinyl,green,yellow,#786428,0.314,True,1025,non-adjacent hue (dist 2),linen|straw,OK_CONSISTENT,brown,True,alt,0.9,"Color is a muted brown, consistent with straw.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZIRO-LINEN-STRAW.jpg?v=1772654246
+1496307892336,Phillipe Romano,Lagos - Copper Gold,Copper Gold,yellow,red,#B46478,0.314,True,1025,non-adjacent hue (dist 2),,DEFECT,pink,False,none,0.1,"The dominant color is pink, not copper gold.",https://cdn.shopify.com/s/files/1/0015/4117/7456/products/d0be88fb26ac0d984f54967aaa7a4cd1_c3ed38ef-bed5-45b0-b2c9-4944071863ec.jpg?v=1572309251
+7792227844147,Philippe Romano Fabrics,Linen Island - Sage Phthalate Free Vinyl,Sage Phthalate Free Vinyl,green,yellow,#786428,0.314,True,1025,non-adjacent hue (dist 2),linen|grass,OK_CONSISTENT,olive green,True,declared,0.9,"Color is a muted, earthy green, consistent with sage.",https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZIRO-LINEN-GRASS.jpg?v=1772654212
diff --git a/results/pr_raw930_vision_spotcheck.jsonl b/results/pr_raw930_vision_spotcheck.jsonl
new file mode 100644
index 0000000..c93cbd8
--- /dev/null
+++ b/results/pr_raw930_vision_spotcheck.jsonl
@@ -0,0 +1,40 @@
+{"spid": "7796281344051", "vendor": "Phillipe Romano", "declared": "Blue Marlin - Goldenrod Phthalate Free Vinyl", "real_hex": "#DCA050", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Nuvtex_Big-Bird_Sunflower.jpg?v=1773219062", "declared_family": "blue", "image_family": "orange", "chroma": 0.549, "classify_reason": "non-adjacent hue (dist 6)", "dashed": true, "strength": 1065, "declared_word": "Goldenrod Phthalate Free Vinyl", "filename_words": ["sunflower"], "gate": "OK_CONSISTENT", "vision_dominant": "light yellow-orange", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "Color is a muted yellow-orange, consistent with goldenrod."}
+{"spid": "7421443866675", "vendor": "Phillipe Romano", "declared": "Cairn - Ink Blue Blue By Phillipe Romano", "real_hex": "#C8B4B4", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WTN1057_WT_0c8b6538-1b9c-4889-ba62-534c58220105.jpg?v=1753307165", "declared_family": "blue", "image_family": "red", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 5)", "dashed": true, "strength": 1055, "declared_word": "Ink Blue Blue By Phillipe Romano", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "blue", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "The blue triangles are consistent with 'Ink Blue Blue'."}
+{"spid": "7421443899443", "vendor": "Phillipe Romano", "declared": "Cairn - Ink Bluep Blue By Phillipe Romano", "real_hex": "#C8B4B4", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WTN1057P_WT_5c53a848-d080-4995-b30d-43c804bff4d5.jpg?v=1753307163", "declared_family": "blue", "image_family": "red", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 5)", "dashed": true, "strength": 1055, "declared_word": "Ink Bluep Blue By Phillipe Romano", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "dark blue", "vision_matches": true, "which_matched": "Cairn - Ink Bluep Blue By Phillipe Romano", "vision_confidence": 0.9, "vision_note": "The dark blue triangles are consistent with 'Ink Blue'."}
+{"spid": "6936691081267", "vendor": "Phillipe Romano Wide Textures", "declared": "Peekskill-Peacock Cop Durable Vinyl", "real_hex": "#643C3C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-ET-23_96d24dfc-1ad6-4fa4-a6f5-017ffd763fd5.jpg?v=1733891279", "declared_family": "teal", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 5)", "dashed": false, "strength": 1050, "declared_word": "Peekskill-Peacock Cop Durable Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "teal and rust", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "Teal is consistent with peacock, rust with copper."}
+{"spid": "1501554049136", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#A0503C", "image_url": "https://edge.arte-international.com/media/6913ebe0-e95b-4804-a857-c976f16ea851/conversions/Antigua_Tintura_33025_Packshot_Web_HR-thumb-two-thirds.jpg", "declared_family": "green", "image_family": "red", "chroma": 0.392, "classify_reason": "non-adjacent hue (dist 4)", "dashed": true, "strength": 1045, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "reddish-brown", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "The color is a reddish-brown with metallic hints, consistent with the name."}
+{"spid": "1501554376816", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#A07878", "image_url": "https://edge.arte-international.com/media/3763e3c4-b2f5-4b6c-a829-96bf233b2351/conversions/Antigua_Tintura_33026_Roomshot_Web_HR-medium-two-thirds.jpg", "declared_family": "green", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 4)", "dashed": true, "strength": 1045, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "rose gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "The wallcovering has a metallic sheen and a rosy hue."}
+{"spid": "1501560504432", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#B48C8C", "image_url": "https://edge.arte-international.com/media/90ed55ea-fc36-45b1-8bec-cee0ea081f54/conversions/Antigua_Pentagono_33046_Roomshot_Web_LR-medium-two-thirds.jpg", "declared_family": "green", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 4)", "dashed": true, "strength": 1045, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "DEFECT", "vision_dominant": "pink", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The color is pink, not metal leaf."}
+{"spid": "1501556801648", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCC8C8", "image_url": "https://edge.arte-international.com/media/90979003-6a2d-4335-aa4b-d1982c68351d/conversions/Antigua_Tintura_33033_Packshot_Web_HR-thumb-two-thirds.jpg", "declared_family": "green", "image_family": "red", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 4)", "dashed": true, "strength": 1045, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "DEFECT", "vision_dominant": "off-white", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The color is off-white, not metallic leaf."}
+{"spid": "1496109121648", "vendor": "Phillipe Romano", "declared": "Zuberista On Mylar - Floral and Birds on Gold Shiny Mylar", "real_hex": "#B45078", "image_url": "https://edge.arte-international.com/media/3e65ac87-1a1d-4b3a-ad18-567669b3b4dc/conversions/Kanso_Yugen_72500_Roomshot_Web_LR-medium-two-thirds.jpg", "declared_family": "yellow", "image_family": "pink", "chroma": 0.392, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Floral and Birds on Gold Shiny Mylar", "filename_words": [], "gate": "DEFECT", "vision_dominant": "magenta", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.9, "vision_note": "The wallcovering is magenta, not gold."}
+{"spid": "1501549625456", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#8C503C", "image_url": "https://edge.arte-international.com/media/a75c8adb-1e15-4f05-b815-f6e901c7fe0a/conversions/Antigua_Stagionato_33011_Roomshot_Web_LR-medium-two-thirds.jpg", "declared_family": "green", "image_family": "orange", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "reddish-brown", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": null}
+{"spid": "1501548249200", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCB48C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/c001a71c02b94d664c54068a330b8140.jpg?v=1572310588", "declared_family": "green", "image_family": "orange", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "The gold color is consistent with \"Renaissance Metal Leaf\"."}
+{"spid": "1501564993648", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCC8A0", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/eb7b13553b10622413afa9ee1ea33378.jpg?v=1572310603", "declared_family": "green", "image_family": "orange", "chroma": 0.235, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 1.0, "vision_note": "The wallcovering is a metallic gold, consistent with the name."}
+{"spid": "1501551755376", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCC8A0", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/cb08814e3f800c88c5d25942fdca3796.jpg?v=1572310601", "declared_family": "green", "image_family": "orange", "chroma": 0.235, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 1.0, "vision_note": "The wallcovering is a metallic gold, consistent with 'Renaissance Metal Leaf'."}
+{"spid": "7792235806771", "vendor": "Philippe Romano Fabrics", "declared": "Native - Lilac Sustainable Bio-Based", "real_hex": "#8C6464", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Native_Lilac_5b154f92-0ff9-4976-bbdd-00aca8d02d94.jpg?v=1772654778", "declared_family": "violet", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Lilac Sustainable Bio-Based", "filename_words": ["lilac"], "gate": "DEFECT", "vision_dominant": "mauve", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.9, "vision_note": "Color is mauve, not lilac."}
+{"spid": "7791174484019", "vendor": "Philippe Romano Fabrics", "declared": "Native - Lilac Sustainable Bio-Based", "real_hex": "#8C6464", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Native_Lilac.jpg?v=1772570026", "declared_family": "violet", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Lilac Sustainable Bio-Based", "filename_words": ["lilac"], "gate": "DEFECT", "vision_dominant": "mauve", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.9, "vision_note": "Color is mauve, not lilac."}
+{"spid": "7792233218099", "vendor": "Philippe Romano Fabrics", "declared": "Maho Bay - Peacock Phthalate Free Vinyl", "real_hex": "#28283C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Si_Muse_Harbor_43ffc3c9-1531-4343-a376-7b24423c9b7e.jpg?v=1772654603", "declared_family": "teal", "image_family": "indigo", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Peacock Phthalate Free Vinyl", "filename_words": [], "gate": "DEFECT", "vision_dominant": "dark blue", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.9, "vision_note": "Color is dark blue, not peacock."}
+{"spid": "7421434789939", "vendor": "Phillipe Romano", "declared": "Grasscloth Texture - Eugene Light Blue By Phillipe Romano", "real_hex": "#B4C8B4", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WTK15302_WT_5277106e-bc83-439b-a9bf-78f4d862fc78.jpg?v=1753307730", "declared_family": "blue", "image_family": "green", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Eugene Light Blue By Phillipe Romano", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "light blue", "vision_matches": true, "which_matched": "Eugene Light Blue By Phillipe Romano", "vision_confidence": 0.95, "vision_note": "The texture has fine horizontal lines of light blue and white."}
+{"spid": "7421395238963", "vendor": "Phillipe Romano", "declared": "Lena - Sky Light Blue By Phillipe Romano", "real_hex": "#C8DCC8", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WNS5514_WT_5e36e34c-d6e3-42cc-8652-8857e0084c86.jpg?v=1753318081", "declared_family": "blue", "image_family": "green", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Sky Light Blue By Phillipe Romano", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "pale blue and yellow", "vision_matches": true, "which_matched": "Lena - Sky Light Blue By Phillipe Romano", "vision_confidence": 0.9, "vision_note": "The wallcovering is a pale blue with yellow accents."}
+{"spid": "7791127330867", "vendor": "Philippe Romano Fabrics", "declared": "Crushed Coral - Mauve Phthalate Free Vinyl", "real_hex": "#3C2828", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Verdi_Velvet_Crushed_Garnet_ccbab17b-9052-4589-94d9-b059f3eaab90.jpg?v=1772568326", "declared_family": "violet", "image_family": "red", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Mauve Phthalate Free Vinyl", "filename_words": ["garnet"], "gate": "OK_CONSISTENT", "vision_dominant": "deep reddish-purple", "vision_matches": true, "which_matched": "alt", "vision_confidence": 0.9, "vision_note": "Color is a deep reddish-purple, closer to garnet."}
+{"spid": "7791144566835", "vendor": "Philippe Romano Fabrics", "declared": "Guana Island - Slate Phthalate Free Vinyl", "real_hex": "#3C283C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Verdi_Grove_Storm_e887cc78-8e9b-42da-acb6-367fb0a7c5cf.jpg?v=1772569058", "declared_family": "blue", "image_family": "magenta", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": true, "strength": 1035, "declared_word": "Slate Phthalate Free Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "dark gray", "vision_matches": true, "which_matched": "Slate Phthalate Free Vinyl", "vision_confidence": 0.9, "vision_note": "Dominant color is a dark, muted gray."}
+{"spid": "1496108957808", "vendor": "Phillipe Romano", "declared": "Zuberista Wallpapeon Shiny Mylar- Floral & Birds on Gold Mylarr", "real_hex": "#B45078", "image_url": "https://edge.arte-international.com/media/3e65ac87-1a1d-4b3a-ad18-567669b3b4dc/conversions/Kanso_Yugen_72500_Roomshot_Web_LR-medium-two-thirds.jpg", "declared_family": "yellow", "image_family": "pink", "chroma": 0.392, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Zuberista Wallpapeon Shiny Mylar- Floral & Birds on Gold Mylarr", "filename_words": [], "gate": "DEFECT", "vision_dominant": "magenta", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The wallcovering is magenta, not gold."}
+{"spid": "6936708481075", "vendor": "Phillipe Romano Wide Textures", "declared": "Hudson Vine-French Lilac Durable Vinyl", "real_hex": "#A07878", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-VT-39_c8469395-4e22-4a9a-a16f-e5bf17fa22f9.jpg?v=1733890063", "declared_family": "violet", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Hudson Vine-French Lilac Durable Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "mauve", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "The color is a muted, dusty rose or mauve, consistent with French Lilac."}
+{"spid": "6936694194227", "vendor": "Phillipe Romano Wide Textures", "declared": "Hornell-Plum Sheen Durable Vinyl", "real_hex": "#8C6464", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-GO-07_5fcebf4c-83d5-4c80-8d17-130bfc0ad0dc.jpg?v=1733891085", "declared_family": "violet", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Hornell-Plum Sheen Durable Vinyl", "filename_words": [], "gate": "DEFECT", "vision_dominant": "brown", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The dominant color is brown, not plum."}
+{"spid": "6936692260915", "vendor": "Phillipe Romano Wide Textures", "declared": "Oswego-Plum Durable Vinyl", "real_hex": "#285050", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-GD-03_9776e01f-244a-4eab-b3eb-721a29b734d7.jpg?v=1733891214", "declared_family": "violet", "image_family": "cyan", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Oswego-Plum Durable Vinyl", "filename_words": [], "gate": "DEFECT", "vision_dominant": "teal", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The dominant color is teal, not plum."}
+{"spid": "6936692555827", "vendor": "Phillipe Romano Wide Textures", "declared": "Oswego-Peeking Plum Durable Vinyl", "real_hex": "#8C6464", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-GD-11_60e4691d-57ca-493f-b0d9-27d060d9890d.jpg?v=1733891199", "declared_family": "violet", "image_family": "red", "chroma": 0.157, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Oswego-Peeking Plum Durable Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "mauve", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "The color is a muted reddish-purple, consistent with plum."}
+{"spid": "6936700780595", "vendor": "Phillipe Romano Wide Textures", "declared": "Portsmouth-Dreamy Lilac Durable Vinyl", "real_hex": "#C8B4B4", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-LU-05_940090f2-233d-4451-acab-374f91a37b70.jpg?v=1733890658", "declared_family": "violet", "image_family": "red", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Portsmouth-Dreamy Lilac Durable Vinyl", "filename_words": [], "gate": "DEFECT", "vision_dominant": "grey and beige", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The pattern is grey and beige, not lilac."}
+{"spid": "6936686657587", "vendor": "Phillipe Romano Wide Textures", "declared": "Troy-Intricate Plum Durable Vinyl", "real_hex": "#3C2828", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-CN-34_a67cca22-d583-47f8-96fb-4dad4156c92e.jpg?v=1733891521", "declared_family": "violet", "image_family": "red", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Troy-Intricate Plum Durable Vinyl", "filename_words": [], "gate": "DEFECT", "vision_dominant": "brown", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The wallcovering is brown, not plum."}
+{"spid": "6936706908211", "vendor": "Phillipe Romano Wide Textures", "declared": "Exeter Ombre-Navy Rose Durable Vinyl", "real_hex": "#28283C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/T2-SS-08_726a065e-5353-4866-bdf2-0f1e4ceae3ee.jpg?v=1733890181", "declared_family": "pink", "image_family": "indigo", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Exeter Ombre-Navy Rose Durable Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "navy blue and rose", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "Dominant navy blue with rose accents, consistent with name."}
+{"spid": "7792246915123", "vendor": "Philippe Romano Fabrics", "declared": "Smooth Pebble Grain Deep Teal", "real_hex": "#28283C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Pointe_Aire-Suede-Sedona_Tidepool.jpg?v=1772655642", "declared_family": "teal", "image_family": "indigo", "chroma": 0.078, "classify_reason": "non-adjacent hue (dist 3)", "dashed": false, "strength": 1030, "declared_word": "Smooth Pebble Grain Deep Teal", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "dark blue-green", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.95, "vision_note": "Color is a deep teal with a subtle pebble grain texture."}
+{"spid": "7792232398899", "vendor": "Philippe Romano Fabrics", "declared": "Montego - Fern Phthalate Free Vinyl", "real_hex": "#A07828", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/EVOFABRIC-VIRTUAL-MISTRAL_LEMONGRASS_777dfb18-65d2-405a-9be7-82b6ed566969.jpg?v=1772654546", "declared_family": "green", "image_family": "yellow", "chroma": 0.471, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Fern Phthalate Free Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "greenish-yellow", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "Dominant color is a muted, earthy green-yellow."}
+{"spid": "1501547888752", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCB464", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/ab2e0482f233159b30bce95bc371baa3.jpg?v=1572310588", "declared_family": "green", "image_family": "yellow", "chroma": 0.471, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 1.0, "vision_note": "The wallcovering is a metallic gold with brown undertones, matching the name."}
+{"spid": "7421423222835", "vendor": "Phillipe Romano", "declared": "Metallic Sisal - Lemon Grass By Phillipe Romano", "real_hex": "#C8B464", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/WSS4528_WT_85557222-3d6a-47c6-8087-2935e50a7162.jpg?v=1753308461", "declared_family": "green", "image_family": "yellow", "chroma": 0.392, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Lemon Grass By Phillipe Romano", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "pale yellow green", "vision_matches": true, "which_matched": "Lemon Grass By Phillipe Romano", "vision_confidence": 0.9, "vision_note": "The color is a muted, pale yellow-green, consistent with lemongrass."}
+{"spid": "1501547167856", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCC878", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/0670b8d1cc26eef63d9bec2768433f7c.jpg?v=1572310588", "declared_family": "green", "image_family": "yellow", "chroma": 0.392, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 1.0, "vision_note": "The wallcovering is a metallic gold leaf pattern."}
+{"spid": "1501547593840", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCC878", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/9f08b4211957344b636da237f5d1d34c.jpg?v=1572310588", "declared_family": "green", "image_family": "yellow", "chroma": 0.392, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 1.0, "vision_note": "The gold color is consistent with \"Renaissance Metal Leaf\"."}
+{"spid": "7791145222195", "vendor": "Philippe Romano Fabrics", "declared": "Hawksbill - Peacock Phthalate Free Vinyl", "real_hex": "#145064", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Habitat_Pesca.jpg?v=1772569106", "declared_family": "teal", "image_family": "blue", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Peacock Phthalate Free Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "teal", "vision_matches": true, "which_matched": "Peacock Phthalate Free Vinyl", "vision_confidence": 0.9, "vision_note": null}
+{"spid": "1501557358704", "vendor": "Phillipe Romano Metals", "declared": "Phillipe Romano - Renaissance Metal Leaf", "real_hex": "#DCC88C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/88ddb8156c84ad3ad53170d3b462862e.jpg?v=1572310602", "declared_family": "green", "image_family": "yellow", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Renaissance Metal Leaf", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "gold", "vision_matches": true, "which_matched": "declared", "vision_confidence": 1.0, "vision_note": "The wallcovering is a metallic gold leaf pattern."}
+{"spid": "7791145254963", "vendor": "Philippe Romano Fabrics", "declared": "Hawksbill - Lagoon Phthalate Free Vinyl", "real_hex": "#3C788C", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Aire-Bio_Habitat_Pooltide.jpg?v=1772569109", "declared_family": "teal", "image_family": "blue", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Lagoon Phthalate Free Vinyl", "filename_words": [], "gate": "OK_CONSISTENT", "vision_dominant": "teal", "vision_matches": true, "which_matched": "Lagoon Phthalate Free Vinyl", "vision_confidence": 1.0, "vision_note": "Dominant color is a shade of teal, consistent with 'Lagoon'."}
+{"spid": "7792228368435", "vendor": "Philippe Romano Fabrics", "declared": "Linen Island - Fern Phthalate Free Vinyl", "real_hex": "#786428", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZIRO-LINEN-STRAW.jpg?v=1772654246", "declared_family": "green", "image_family": "yellow", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Fern Phthalate Free Vinyl", "filename_words": ["linen", "straw"], "gate": "OK_CONSISTENT", "vision_dominant": "brown", "vision_matches": true, "which_matched": "alt", "vision_confidence": 0.9, "vision_note": "Color is a muted brown, consistent with straw."}
+{"spid": "1496307892336", "vendor": "Phillipe Romano", "declared": "Lagos - Copper Gold", "real_hex": "#B46478", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/d0be88fb26ac0d984f54967aaa7a4cd1_c3ed38ef-bed5-45b0-b2c9-4944071863ec.jpg?v=1572309251", "declared_family": "yellow", "image_family": "red", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Copper Gold", "filename_words": [], "gate": "DEFECT", "vision_dominant": "pink", "vision_matches": false, "which_matched": "none", "vision_confidence": 0.1, "vision_note": "The dominant color is pink, not copper gold."}
+{"spid": "7792227844147", "vendor": "Philippe Romano Fabrics", "declared": "Linen Island - Sage Phthalate Free Vinyl", "real_hex": "#786428", "image_url": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ZIRO-LINEN-GRASS.jpg?v=1772654212", "declared_family": "green", "image_family": "yellow", "chroma": 0.314, "classify_reason": "non-adjacent hue (dist 2)", "dashed": true, "strength": 1025, "declared_word": "Sage Phthalate Free Vinyl", "filename_words": ["linen", "grass"], "gate": "OK_CONSISTENT", "vision_dominant": "olive green", "vision_matches": true, "which_matched": "declared", "vision_confidence": 0.9, "vision_note": "Color is a muted, earthy green, consistent with sage."}
diff --git a/scripts/pr_raw930_vision_spotcheck.py b/scripts/pr_raw930_vision_spotcheck.py
new file mode 100644
index 0000000..b058153
--- /dev/null
+++ b/scripts/pr_raw930_vision_spotcheck.py
@@ -0,0 +1,238 @@
+#!/usr/bin/env python3
+"""
+PR raw-930 vision spot-check (CLOSE-OUT measurement for the disposition memo).
+Selects the ~40 STRONGEST chromatic PR raw-HIGH candidates under the CORRECTED mapper
+and runs a Gemini 2.5-flash-lite YES/NO vision check implementing the memo's exact
+genuine-defect test:
+
+ genuine wrong-IMAGE defect <=> the image's dominant color is inconsistent with
+ BOTH (a) the DW declared color name AND (b) the upstream-source color word parsed
+ from the product image filename.
+
+READ-ONLY: only GETs the public Shopify image + calls Gemini. Writes NOTHING to
+dw_unified / Shopify. Privacy: only color WORDS (emerald/ocean/...) from the public
+image filename are used; the upstream private-label company name is never referenced.
+"""
+import csv, json, os, sys, time, base64, urllib.request, urllib.error, re, subprocess
+sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__))))
+import reextract2 as M # corrected mapper: name_family, fam, classify, is_chrom, hue_dist
+# reextract2 loads its color lexicon from sys.argv[1] at import; on import that's empty,
+# so hydrate it explicitly from the shipped lexicon file (else every name maps to None).
+_LEX = os.path.join(os.path.dirname(os.path.abspath(__file__)), "name_family.json")
+M.NAME_FAMILY = json.loads(open(_LEX).read())
+
+ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+OUT_JSONL = os.path.join(ROOT, "results", "pr_raw930_vision_spotcheck.jsonl")
+OUT_CSV = os.path.join(ROOT, "results", "pr_raw930_vision_spotcheck.csv")
+MODEL = "gemini-2.5-flash-lite"
+COST_PER_CALL = 0.0006
+N_TARGET = 40
+
+PR_VENDORS = ("Phillipe Romano","Philippe Romano Fabrics","Phillipe Romano Wide Textures",
+ "Phillipe Romano Naturals","Phillipe Romano Metals","Phillipe Romano Vinyls",
+ "Phillipe Romano Wallpaper","Phillipe Romano Type 2 Vinyls") # excl Maya Romanoff
+
+def get_key():
+ env = os.path.expanduser("~/Projects/secrets-manager/.env")
+ with open(env) as f:
+ for line in f:
+ if line.startswith("GEMINI_API_KEY="):
+ return line.split("=",1)[1].strip().strip('"').strip("'")
+ sys.exit("no GEMINI_API_KEY")
+
+API_KEY = get_key()
+URL = f"https://generativelanguage.googleapis.com/v1beta/models/{MODEL}:generateContent?key={API_KEY}"
+
+def hex2rgb(h):
+ h=h.lstrip('#'); return tuple(int(h[i:i+2],16) for i in (0,2,4))
+
+def filename_color_words(image_url):
+ """Color tokens from the public image filename slug (the upstream-source color word)."""
+ base = image_url.split('/')[-1].split('?')[0]
+ base = re.sub(r'\.(jpg|jpeg|png|webp|gif)$','',base,flags=re.I)
+ # strip trailing shopify uuid / version hashes
+ base = re.sub(r'_[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}.*$','',base,flags=re.I)
+ toks = re.split(r'[-_]', base.lower())
+ words=[]
+ for t in toks:
+ if t in M.NAME_FAMILY and t not in M.MATERIAL_STOPWORDS:
+ words.append(t)
+ # dedupe, preserve order
+ seen=set(); out=[]
+ for w in words:
+ if w not in seen: seen.add(w); out.append(w)
+ return out
+
+def pull_rows():
+ vlist = ",".join("'"+v.replace("'","''")+"'" for v in PR_VENDORS)
+ q = (f"SELECT shopify_product_id, vendor, declared, real_hex, image_url "
+ f"FROM product_colors_v2 WHERE verdict='HIGH' AND lower(status)='active' "
+ f"AND vendor IN ({vlist}) AND real_hex IS NOT NULL AND real_hex<>'';")
+ p = subprocess.run(["psql","-d","dw_color_staging","-F","\t","-A","-t","-c",q],
+ capture_output=True, text=True)
+ if p.returncode!=0: sys.exit("psql: "+p.stderr)
+ rows=[]
+ for line in p.stdout.splitlines():
+ if not line.strip(): continue
+ spid,vendor,declared,real_hex,image_url = line.split("\t")
+ rows.append(dict(spid=spid,vendor=vendor,declared=declared,
+ real_hex=real_hex,image_url=image_url))
+ return rows
+
+def declared_color_word(declared):
+ seg = M._colorway_segment(declared)
+ return seg.strip()
+
+def select_strongest(rows):
+ cand=[]
+ seen=set()
+ for r in rows:
+ if r["spid"] in seen: continue
+ try: rgb=hex2rgb(r["real_hex"])
+ except Exception: continue
+ imf,s,l = M.fam(*rgb)
+ chroma=(max(rgb)-min(rgb))/255.0
+ df = M.name_family(r["declared"])
+ if not df: continue
+ verdict,reason = M.classify(df,imf,chroma,l)
+ if verdict!="HIGH": continue
+ dashed = " - " in r["declared"]
+ dC, iC = M.is_chrom(df), M.is_chrom(imf)
+ # strength score: pure chromatic-vs-chromatic conflict is the strongest defect signal
+ if dC and iC:
+ strength = 1000 + M.hue_dist(df,imf)*10 + (5 if dashed else 0)
+ elif dC and imf in ("beige","brown") and df in ("blue","indigo","violet","cyan","teal","green"):
+ strength = 500 + int(chroma*100) + (5 if dashed else 0) # cool name vs warm-neutral
+ elif dC and imf in ("gray","black"):
+ strength = 300 + int(chroma*100) + (5 if dashed else 0) # chromatic name, dark-neutral
+ else:
+ strength = 100 + int(chroma*50)
+ seen.add(r["spid"])
+ cand.append(dict(**r, declared_family=df, image_family=imf,
+ chroma=round(chroma,3), classify_reason=reason,
+ dashed=dashed, strength=strength,
+ declared_word=declared_color_word(r["declared"]),
+ filename_words=filename_color_words(r["image_url"])))
+ cand.sort(key=lambda c:(-c["strength"], -c["chroma"]))
+ return cand[:N_TARGET]
+
+def fetch_image(url, tries=3):
+ for i in range(tries):
+ try:
+ req=urllib.request.Request(url, headers={"User-Agent":"Mozilla/5.0"})
+ with urllib.request.urlopen(req, timeout=30) as r:
+ data=r.read(); ct=r.headers.get("Content-Type","image/jpeg")
+ if "image" not in ct: ct="image/jpeg"
+ return data,ct
+ except Exception as e:
+ if i==tries-1: return None,str(e)
+ time.sleep(2)
+ return None,"exhausted"
+
+PROMPT_TMPL = (
+ "This is a product photo of a wallcovering/fabric. Look ONLY at the actual "
+ "wallcovering/fabric surface and IGNORE any white studio background, border, or "
+ "room-scene props. The product is merchandised under the color name \"{declared}\".{alt} "
+ "Question: is the DOMINANT color of the wallcovering itself plausibly consistent with "
+ "the declared color name \"{declared_word}\"{alt_q}? A busy/multi-color pattern where that "
+ "color is plausibly one of the inks counts as CONSISTENT. Answer matches=false ONLY if the "
+ "wallcovering is unmistakably a different color than ANY of those names imply. "
+ "Respond with STRICT JSON only, no prose: "
+ '{{"dominant_color":"<plain english>","matches":true|false,'
+ '"which_name_matched":"<declared|alt|none>","confidence":<0.0-1.0>,"note":"<=12 words"}}'
+)
+
+def ask_gemini(img_bytes, ct, declared, declared_word, alt_words):
+ alts = [w for w in alt_words if w.lower()!=declared_word.lower()]
+ if alts:
+ alt = (" The same item also carries the alternate color term"
+ f" \"{', '.join(alts)}\" in its source filename.")
+ alt_q = f" OR the alternate color term \"{', '.join(alts)}\""
+ else:
+ alt=""; alt_q=""
+ prompt = PROMPT_TMPL.format(declared=declared, declared_word=declared_word, alt=alt, alt_q=alt_q)
+ body={"contents":[{"parts":[{"text":prompt},
+ {"inline_data":{"mime_type":ct,"data":base64.b64encode(img_bytes).decode()}}]}],
+ "generationConfig":{"temperature":0,"maxOutputTokens":200}}
+ req=urllib.request.Request(URL,data=json.dumps(body).encode(),
+ headers={"Content-Type":"application/json"})
+ for i in range(3):
+ try:
+ with urllib.request.urlopen(req,timeout=60) as r:
+ resp=json.loads(r.read())
+ txt=resp["candidates"][0]["content"]["parts"][0]["text"]
+ mt=re.search(r"\{.*\}",txt,re.S)
+ if mt: return json.loads(mt.group(0)),None
+ return None,"no-json:"+txt[:120]
+ except urllib.error.HTTPError as e:
+ err=e.read().decode()[:200]
+ if e.code==429: time.sleep(15); continue
+ if i==2: return None,f"http{e.code}:{err}"
+ time.sleep(3)
+ except Exception as e:
+ if i==2: return None,str(e)[:160]
+ time.sleep(3)
+ return None,"exhausted"
+
+def main():
+ rows=pull_rows()
+ print(f"PR-family raw-HIGH live rows pulled: {len(rows)}", file=sys.stderr)
+ cand=select_strongest(rows)
+ print(f"strongest chromatic candidates selected: {len(cand)}", file=sys.stderr)
+ results=[]; calls=0
+ for i,c in enumerate(cand,1):
+ img,ct=fetch_image(c["image_url"])
+ rec=dict(c)
+ if img is None:
+ rec.update(gate="ERROR", error="fetch:"+str(ct))
+ else:
+ out,err=ask_gemini(img,ct,c["declared"],c["declared_word"],c["filename_words"])
+ calls+=1
+ if out is None:
+ rec.update(gate="ERROR", error=err)
+ else:
+ matches=bool(out.get("matches"))
+ rec.update(gate="DEFECT" if not matches else "OK_CONSISTENT",
+ vision_dominant=out.get("dominant_color"),
+ vision_matches=matches,
+ which_matched=out.get("which_name_matched"),
+ vision_confidence=out.get("confidence"),
+ vision_note=out.get("note"))
+ results.append(rec)
+ print(f"[{i}/{len(cand)}] {rec.get('gate'):13s} str={c['strength']:4d} "
+ f"{c['vendor'][:20]:20s} declared='{c['declared'][:34]:34s}' "
+ f"df={c['declared_family']:8s} imf={c['image_family']:7s} "
+ f"alt={','.join(w for w in c['filename_words'] if w!=c['declared_word'].lower()) or '-':10s} "
+ f"vision='{rec.get('vision_dominant','')}'", file=sys.stderr)
+ time.sleep(0.3)
+ os.makedirs(os.path.dirname(OUT_JSONL), exist_ok=True)
+ with open(OUT_JSONL,"w") as f:
+ for r in results: f.write(json.dumps(r)+"\n")
+ fields=["spid","vendor","declared","declared_word","declared_family","image_family",
+ "real_hex","chroma","dashed","strength","classify_reason","filename_words",
+ "gate","vision_dominant","vision_matches","which_matched","vision_confidence",
+ "vision_note","image_url"]
+ with open(OUT_CSV,"w",newline="") as f:
+ w=csv.DictWriter(f,fieldnames=fields,extrasaction="ignore")
+ w.writeheader()
+ for r in results:
+ rr=dict(r); rr["filename_words"]="|".join(r.get("filename_words",[]))
+ w.writerow(rr)
+ defects=[r for r in results if r.get("gate")=="DEFECT"]
+ okc=[r for r in results if r.get("gate")=="OK_CONSISTENT"]
+ errs=[r for r in results if r.get("gate")=="ERROR"]
+ print("\n==== PR RAW-930 VISION SPOT-CHECK SUMMARY ====", file=sys.stderr)
+ print(f"candidates={len(results)} OK_CONSISTENT={len(okc)} DEFECT={len(defects)} ERROR={len(errs)}", file=sys.stderr)
+ print(f"gemini model={MODEL} calls={calls} actual cost=${calls*COST_PER_CALL:.4f}", file=sys.stderr)
+ if defects:
+ print("\n--- GENUINE WRONG-IMAGE DEFECT CANDIDATES ---", file=sys.stderr)
+ for d in defects:
+ print(f" SKU/spid={d['spid']} declared='{d['declared']}' "
+ f"vision='{d.get('vision_dominant')}' conf={d.get('vision_confidence')} "
+ f"url={d['image_url']}", file=sys.stderr)
+ print(json.dumps(dict(candidates=len(results),ok_consistent=len(okc),
+ defects=len(defects),errors=len(errs),calls=calls,
+ actual_cost_usd=round(calls*COST_PER_CALL,4))))
+
+if __name__=="__main__":
+ main()
← 30306bf color-image-audit: refine no-dash mapper — demote pattern/pl
·
back to Dw Color Image Audit
·
resolved: $0-price emergency (33 demoted DRAFT, verified liv 2b896ad →