← back to Harlequin Sample Price Analysis
chore: add package.json v1.0.0 (session close) — 25 tests green, dependency-free
ea54ff5a24244247493e5b3597cc201b3b191bab · 2026-08-31 01:23:13 -0700 · Steve Abrams
Files touched
A artifacts/tk10992/restore-map.jsonA artifacts/tk10992/rollback.sqlA artifacts/tk10992/snapshot-before-20260831T010404.jsonA artifacts/tk10992/spurious-rows-cleared.jsonA package.json
Diff
commit ea54ff5a24244247493e5b3597cc201b3b191bab
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Mon Aug 31 01:23:13 2026 -0700
chore: add package.json v1.0.0 (session close) — 25 tests green, dependency-free
---
artifacts/tk10992/restore-map.json | 102 +++++++++
artifacts/tk10992/rollback.sql | 28 +++
.../tk10992/snapshot-before-20260831T010404.json | 1 +
artifacts/tk10992/spurious-rows-cleared.json | 227 +++++++++++++++++++++
package.json | 8 +
5 files changed, 366 insertions(+)
diff --git a/artifacts/tk10992/restore-map.json b/artifacts/tk10992/restore-map.json
new file mode 100644
index 0000000..b95da8d
--- /dev/null
+++ b/artifacts/tk10992/restore-map.json
@@ -0,0 +1,102 @@
+[
+ {
+ "id": 56010,
+ "old_shopify_product_id": "7865265389619"
+ },
+ {
+ "id": 56480,
+ "old_shopify_product_id": "7865265455155"
+ },
+ {
+ "id": 56014,
+ "old_shopify_product_id": "7865265520691"
+ },
+ {
+ "id": 56016,
+ "old_shopify_product_id": "7865265553459"
+ },
+ {
+ "id": 56486,
+ "old_shopify_product_id": "7865272500275"
+ },
+ {
+ "id": 56025,
+ "old_shopify_product_id": "7865272565811"
+ },
+ {
+ "id": 56028,
+ "old_shopify_product_id": "7865272631347"
+ },
+ {
+ "id": 56031,
+ "old_shopify_product_id": "7865272696883"
+ },
+ {
+ "id": 56044,
+ "old_shopify_product_id": "7865282002995"
+ },
+ {
+ "id": 56046,
+ "old_shopify_product_id": "7865282068531"
+ },
+ {
+ "id": 56048,
+ "old_shopify_product_id": "7865282134067"
+ },
+ {
+ "id": 56051,
+ "old_shopify_product_id": "7865282199603"
+ },
+ {
+ "id": 56495,
+ "old_shopify_product_id": "7865282265139"
+ },
+ {
+ "id": 56497,
+ "old_shopify_product_id": "7865288720435"
+ },
+ {
+ "id": 56057,
+ "old_shopify_product_id": "7865288818739"
+ },
+ {
+ "id": 56060,
+ "old_shopify_product_id": "7865288884275"
+ },
+ {
+ "id": 56501,
+ "old_shopify_product_id": "7865288949811"
+ },
+ {
+ "id": 56064,
+ "old_shopify_product_id": "7865289015347"
+ },
+ {
+ "id": 56503,
+ "old_shopify_product_id": "7865293176883"
+ },
+ {
+ "id": 56069,
+ "old_shopify_product_id": "7865293242419"
+ },
+ {
+ "id": 56506,
+ "old_shopify_product_id": "7865293340723"
+ },
+ {
+ "id": 56507,
+ "old_shopify_product_id": "7865293439027"
+ },
+ {
+ "id": 56134,
+ "old_shopify_product_id": "7865293504563"
+ },
+ {
+ "id": 56135,
+ "old_shopify_product_id": "7865301663795"
+ },
+ {
+ "id": 56511,
+ "old_shopify_product_id": "7865301729331"
+ }
+]
\ No newline at end of file
diff --git a/artifacts/tk10992/rollback.sql b/artifacts/tk10992/rollback.sql
new file mode 100644
index 0000000..5d3d988
--- /dev/null
+++ b/artifacts/tk10992/rollback.sql
@@ -0,0 +1,28 @@
+-- TK-10992 rollback: restore spurious thibaut_catalog shopify_product_ids
+BEGIN;
+UPDATE thibaut_catalog SET shopify_product_id='7865265389619' WHERE id=56010;
+UPDATE thibaut_catalog SET shopify_product_id='7865265455155' WHERE id=56480;
+UPDATE thibaut_catalog SET shopify_product_id='7865265520691' WHERE id=56014;
+UPDATE thibaut_catalog SET shopify_product_id='7865265553459' WHERE id=56016;
+UPDATE thibaut_catalog SET shopify_product_id='7865272500275' WHERE id=56486;
+UPDATE thibaut_catalog SET shopify_product_id='7865272565811' WHERE id=56025;
+UPDATE thibaut_catalog SET shopify_product_id='7865272631347' WHERE id=56028;
+UPDATE thibaut_catalog SET shopify_product_id='7865272696883' WHERE id=56031;
+UPDATE thibaut_catalog SET shopify_product_id='7865282002995' WHERE id=56044;
+UPDATE thibaut_catalog SET shopify_product_id='7865282068531' WHERE id=56046;
+UPDATE thibaut_catalog SET shopify_product_id='7865282134067' WHERE id=56048;
+UPDATE thibaut_catalog SET shopify_product_id='7865282199603' WHERE id=56051;
+UPDATE thibaut_catalog SET shopify_product_id='7865282265139' WHERE id=56495;
+UPDATE thibaut_catalog SET shopify_product_id='7865288720435' WHERE id=56497;
+UPDATE thibaut_catalog SET shopify_product_id='7865288818739' WHERE id=56057;
+UPDATE thibaut_catalog SET shopify_product_id='7865288884275' WHERE id=56060;
+UPDATE thibaut_catalog SET shopify_product_id='7865288949811' WHERE id=56501;
+UPDATE thibaut_catalog SET shopify_product_id='7865289015347' WHERE id=56064;
+UPDATE thibaut_catalog SET shopify_product_id='7865293176883' WHERE id=56503;
+UPDATE thibaut_catalog SET shopify_product_id='7865293242419' WHERE id=56069;
+UPDATE thibaut_catalog SET shopify_product_id='7865293340723' WHERE id=56506;
+UPDATE thibaut_catalog SET shopify_product_id='7865293439027' WHERE id=56507;
+UPDATE thibaut_catalog SET shopify_product_id='7865293504563' WHERE id=56134;
+UPDATE thibaut_catalog SET shopify_product_id='7865301663795' WHERE id=56135;
+UPDATE thibaut_catalog SET shopify_product_id='7865301729331' WHERE id=56511;
+COMMIT;
diff --git a/artifacts/tk10992/snapshot-before-20260831T010404.json b/artifacts/tk10992/snapshot-before-20260831T010404.json
new file mode 100644
index 0000000..e80605e
--- /dev/null
+++ b/artifacts/tk10992/snapshot-before-20260831T010404.json
@@ -0,0 +1 @@
+[{"id":56010,"mfr_sku":"9010","pattern_name":"Tosca","color_name":"Beige","dw_sku":"DWTT-72982","status":"active","shopify_product_id":"7865265389619"}, {"id":56012,"mfr_sku":"9012","pattern_name":"Tosca","color_name":"Gunmetal","dw_sku":"DWTT-72983","status":"active","shopify_product_id":"7865265455155"}, {"id":56014,"mfr_sku":"9020","pattern_name":"Aida","color_name":"Beige on Blue","dw_sku":"DWTT-72984","status":"active","shopify_product_id":"7865265520691"}, {"id":56016,"mfr_sku":"9021","pattern_name":"Aida","color_name":"Blue on Beige","dw_sku":"DWTT-72985","status":"active","shopify_product_id":"7865265553459"}, {"id":56018,"mfr_sku":"9022","pattern_name":"Aida","color_name":"Brown on Beige","dw_sku":"DWTT-72986","status":"active","shopify_product_id":"7865272434739"}, {"id":56021,"mfr_sku":"9055","pattern_name":"Macbeth Mural","color_name":"Blue/Green","dw_sku":"DWTT-72987","status":"active","shopify_product_id":"7865272500275"}, {"id":56025,"mfr_sku":"9070","pattern_name":"Unito Aida","color_name":"Taupe","dw_sku":"DWTT-72988","status":"active","shopify_product_id":"7865272565811"}, {"id":56028,"mfr_sku":"9071","pattern_name":"Unito Aida","color_name":"Grey/Green","dw_sku":"DWTT-72989","status":"active","shopify_product_id":"7865272631347"}, {"id":56031,"mfr_sku":"9072","pattern_name":"Unito Aida","color_name":"Grey","dw_sku":"DWTT-72990","status":"active","shopify_product_id":"7865272696883"}, {"id":56044,"mfr_sku":"9073","pattern_name":"Unito Aida","color_name":"Beige","dw_sku":"DWTT-72991","status":"active","shopify_product_id":"7865282002995"}, {"id":56046,"mfr_sku":"9090","pattern_name":"Unito Faust","color_name":"Cream","dw_sku":"DWTT-72992","status":"active","shopify_product_id":"7865282068531"}, {"id":56048,"mfr_sku":"9091","pattern_name":"Unito Faust","color_name":"Grey","dw_sku":"DWTT-72993","status":"active","shopify_product_id":"7865282134067"}, {"id":56051,"mfr_sku":"9200","pattern_name":"Louvre","color_name":"Grey","dw_sku":"DWTT-72994","status":"active","shopify_product_id":"7865282199603"}, {"id":56053,"mfr_sku":"9201","pattern_name":"Louvre","color_name":"Cream","dw_sku":"DWTT-72995","status":"active","shopify_product_id":"7865282265139"}, {"id":56055,"mfr_sku":"9202","pattern_name":"Louvre","color_name":"Light Grey","dw_sku":"DWTT-72996","status":"active","shopify_product_id":"7865288720435"}, {"id":56057,"mfr_sku":"9203","pattern_name":"Louvre","color_name":"Beige","dw_sku":"DWTT-72997","status":"active","shopify_product_id":"7865288818739"}, {"id":56060,"mfr_sku":"9205","pattern_name":"Louvre","color_name":"Taupe","dw_sku":"DWTT-72998","status":"active","shopify_product_id":"7865288884275"}, {"id":56062,"mfr_sku":"9220","pattern_name":"Montmartre","color_name":"Pewter","dw_sku":"DWTT-72999","status":"active","shopify_product_id":"7865288949811"}, {"id":56064,"mfr_sku":"9221","pattern_name":"Montmartre","color_name":"ivory","dw_sku":"DWTT-73000","status":"active","shopify_product_id":"7865289015347"}, {"id":56067,"mfr_sku":"9222","pattern_name":"Montmartre","color_name":"Beige","dw_sku":"DWTT-73001","status":"active","shopify_product_id":"7865293176883"}, {"id":56069,"mfr_sku":"9223","pattern_name":"Montmartre","color_name":"Grey","dw_sku":"DWTT-73002","status":"active","shopify_product_id":"7865293242419"}, {"id":56072,"mfr_sku":"9224","pattern_name":"Montmartre","color_name":"Blue","dw_sku":"DWTT-73003","status":"active","shopify_product_id":"7865293340723"}, {"id":56133,"mfr_sku":"9250","pattern_name":"Trocadero","color_name":"White","dw_sku":"DWTT-73004","status":"active","shopify_product_id":"7865293439027"}, {"id":56134,"mfr_sku":"9251","pattern_name":"Trocadero","color_name":"Taupe","dw_sku":"DWTT-73005","status":"active","shopify_product_id":"7865293504563"}, {"id":56135,"mfr_sku":"9256","pattern_name":"Trocadero","color_name":"Beige","dw_sku":"DWTT-73006","status":"active","shopify_product_id":"7865301663795"}, {"id":56137,"mfr_sku":"9260","pattern_name":"Versailles","color_name":"Aqua","dw_sku":"DWTT-73007","status":"active","shopify_product_id":"7865301729331"}, {"id":56479,"mfr_sku":"AT1402","pattern_name":"Birch Cork","color_name":"beige","dw_sku":"DWTT-72982","status":"transferred_to_anna_french","shopify_product_id":"7865265389619"}, {"id":56480,"mfr_sku":"AT1401","pattern_name":"Birch Cork","color_name":"Silver","dw_sku":"DWTT-72983","status":"transferred_to_anna_french","shopify_product_id":"7865265455155"}, {"id":56482,"mfr_sku":"AT1405","pattern_name":"Barafundle","color_name":"Metallic Champagne","dw_sku":"DWTT-72984","status":"transferred_to_anna_french","shopify_product_id":"7865265520691"}, {"id":56483,"mfr_sku":"AT1406","pattern_name":"Barafundle","color_name":"Aqua","dw_sku":"DWTT-72985","status":"transferred_to_anna_french","shopify_product_id":"7865265553459"}, {"id":56484,"mfr_sku":"AT1411","pattern_name":"Spot On","color_name":"Beige and Pearl","dw_sku":"DWTT-72986","status":"transferred_to_anna_french","shopify_product_id":"7865272434739"}, {"id":56486,"mfr_sku":"AT1413","pattern_name":"Spot On","color_name":"pale olive","dw_sku":"DWTT-72987","status":"transferred_to_anna_french","shopify_product_id":"7865272500275"}, {"id":56487,"mfr_sku":"AT1433","pattern_name":"Salina Ribbon","color_name":"Linen","dw_sku":"DWTT-72988","status":"transferred_to_anna_french","shopify_product_id":"7865272565811"}, {"id":56488,"mfr_sku":"AT1440","pattern_name":"Durham Dot","color_name":"Off White","dw_sku":"DWTT-72989","status":"transferred_to_anna_french","shopify_product_id":"7865272631347"}, {"id":56489,"mfr_sku":"AT1441","pattern_name":"Lucian","color_name":"pale yellow","dw_sku":"DWTT-72990","status":"transferred_to_anna_french","shopify_product_id":"7865272696883"}, {"id":56490,"mfr_sku":"AT1442","pattern_name":"Lucian","color_name":"Beige","dw_sku":"DWTT-72991","status":"transferred_to_anna_french","shopify_product_id":"7865282002995"}, {"id":56492,"mfr_sku":"AT1443","pattern_name":"Lucian","color_name":"Metallic on Lilac","dw_sku":"DWTT-72992","status":"transferred_to_anna_french","shopify_product_id":"7865282068531"}, {"id":56493,"mfr_sku":"AT1446","pattern_name":"Lucian","color_name":"gray","dw_sku":"DWTT-72993","status":"transferred_to_anna_french","shopify_product_id":"7865282134067"}, {"id":56494,"mfr_sku":"AT1447","pattern_name":"Lucian","color_name":"pale blue","dw_sku":"DWTT-72994","status":"transferred_to_anna_french","shopify_product_id":"7865282199603"}, {"id":56495,"mfr_sku":"AT1449","pattern_name":"Arran","color_name":"Metallic on Dark Taupe","dw_sku":"DWTT-72995","status":"transferred_to_anna_french","shopify_product_id":"7865282265139"}, {"id":56497,"mfr_sku":"AT1450","pattern_name":"Arran","color_name":"Cream","dw_sku":"DWTT-72996","status":"transferred_to_anna_french","shopify_product_id":"7865288720435"}, {"id":56498,"mfr_sku":"AT1451","pattern_name":"Arran","color_name":"Metallic Gold","dw_sku":"DWTT-72997","status":"transferred_to_anna_french","shopify_product_id":"7865288818739"}, {"id":56499,"mfr_sku":"AT1453","pattern_name":"Francis","color_name":"Metallic on Plum","dw_sku":"DWTT-72998","status":"transferred_to_anna_french","shopify_product_id":"7865288884275"}, {"id":56501,"mfr_sku":"AT1457","pattern_name":"Francis","color_name":"Metallic on Citrus","dw_sku":"DWTT-72999","status":"transferred_to_anna_french","shopify_product_id":"7865288949811"}, {"id":56502,"mfr_sku":"AT1458","pattern_name":"St. Germain","color_name":"Taupe","dw_sku":"DWTT-73000","status":"transferred_to_anna_french","shopify_product_id":"7865289015347"}, {"id":56503,"mfr_sku":"AT1459","pattern_name":"St. Germain","color_name":"Black on White","dw_sku":"DWTT-73001","status":"transferred_to_anna_french","shopify_product_id":"7865293176883"}, {"id":56504,"mfr_sku":"AT1462","pattern_name":"St. Germain","color_name":"Teal on Metallic Gold","dw_sku":"DWTT-73002","status":"transferred_to_anna_french","shopify_product_id":"7865293242419"}, {"id":56506,"mfr_sku":"AT15100","pattern_name":"Fern Stripe","color_name":"Blush","dw_sku":"DWTT-73003","status":"transferred_to_anna_french","shopify_product_id":"7865293340723"}, {"id":56507,"mfr_sku":"AT15102","pattern_name":"Fern Stripe","color_name":"Green","dw_sku":"DWTT-73004","status":"transferred_to_anna_french","shopify_product_id":"7865293439027"}, {"id":56508,"mfr_sku":"AT15101","pattern_name":"Fern Stripe","color_name":"Navy","dw_sku":"DWTT-73005","status":"transferred_to_anna_french","shopify_product_id":"7865293504563"}, {"id":56510,"mfr_sku":"AT15103","pattern_name":"Fern Stripe","color_name":"Spa Blue","dw_sku":"DWTT-73006","status":"transferred_to_anna_french","shopify_product_id":"7865301663795"}, {"id":56511,"mfr_sku":"AT15104","pattern_name":"Fern Stripe","color_name":"Beige","dw_sku":"DWTT-73007","status":"transferred_to_anna_french","shopify_product_id":"7865301729331"}, {"id":58251,"mfr_sku":"TWW14586","pattern_name":"Spiro Wide Width","color_name":"Neutral and Blue","dw_sku":"DWTT-74451","status":"active","shopify_product_id":"7865272434739"}]
diff --git a/artifacts/tk10992/spurious-rows-cleared.json b/artifacts/tk10992/spurious-rows-cleared.json
new file mode 100644
index 0000000..7649336
--- /dev/null
+++ b/artifacts/tk10992/spurious-rows-cleared.json
@@ -0,0 +1,227 @@
+[
+ {
+ "id": "56010",
+ "pid": "7865265389619",
+ "mfr": "9010",
+ "pat": "Tosca",
+ "col": "Beige",
+ "dw": "DWTT-72982",
+ "status": "active"
+ },
+ {
+ "id": "56480",
+ "pid": "7865265455155",
+ "mfr": "AT1401",
+ "pat": "Birch Cork",
+ "col": "Silver",
+ "dw": "DWTT-72983",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56014",
+ "pid": "7865265520691",
+ "mfr": "9020",
+ "pat": "Aida",
+ "col": "Beige on Blue",
+ "dw": "DWTT-72984",
+ "status": "active"
+ },
+ {
+ "id": "56016",
+ "pid": "7865265553459",
+ "mfr": "9021",
+ "pat": "Aida",
+ "col": "Blue on Beige",
+ "dw": "DWTT-72985",
+ "status": "active"
+ },
+ {
+ "id": "56486",
+ "pid": "7865272500275",
+ "mfr": "AT1413",
+ "pat": "Spot On",
+ "col": "pale olive",
+ "dw": "DWTT-72987",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56025",
+ "pid": "7865272565811",
+ "mfr": "9070",
+ "pat": "Unito Aida",
+ "col": "Taupe",
+ "dw": "DWTT-72988",
+ "status": "active"
+ },
+ {
+ "id": "56028",
+ "pid": "7865272631347",
+ "mfr": "9071",
+ "pat": "Unito Aida",
+ "col": "Grey/Green",
+ "dw": "DWTT-72989",
+ "status": "active"
+ },
+ {
+ "id": "56031",
+ "pid": "7865272696883",
+ "mfr": "9072",
+ "pat": "Unito Aida",
+ "col": "Grey",
+ "dw": "DWTT-72990",
+ "status": "active"
+ },
+ {
+ "id": "56044",
+ "pid": "7865282002995",
+ "mfr": "9073",
+ "pat": "Unito Aida",
+ "col": "Beige",
+ "dw": "DWTT-72991",
+ "status": "active"
+ },
+ {
+ "id": "56046",
+ "pid": "7865282068531",
+ "mfr": "9090",
+ "pat": "Unito Faust",
+ "col": "Cream",
+ "dw": "DWTT-72992",
+ "status": "active"
+ },
+ {
+ "id": "56048",
+ "pid": "7865282134067",
+ "mfr": "9091",
+ "pat": "Unito Faust",
+ "col": "Grey",
+ "dw": "DWTT-72993",
+ "status": "active"
+ },
+ {
+ "id": "56051",
+ "pid": "7865282199603",
+ "mfr": "9200",
+ "pat": "Louvre",
+ "col": "Grey",
+ "dw": "DWTT-72994",
+ "status": "active"
+ },
+ {
+ "id": "56495",
+ "pid": "7865282265139",
+ "mfr": "AT1449",
+ "pat": "Arran",
+ "col": "Metallic on Dark Taupe",
+ "dw": "DWTT-72995",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56497",
+ "pid": "7865288720435",
+ "mfr": "AT1450",
+ "pat": "Arran",
+ "col": "Cream",
+ "dw": "DWTT-72996",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56057",
+ "pid": "7865288818739",
+ "mfr": "9203",
+ "pat": "Louvre",
+ "col": "Beige",
+ "dw": "DWTT-72997",
+ "status": "active"
+ },
+ {
+ "id": "56060",
+ "pid": "7865288884275",
+ "mfr": "9205",
+ "pat": "Louvre",
+ "col": "Taupe",
+ "dw": "DWTT-72998",
+ "status": "active"
+ },
+ {
+ "id": "56501",
+ "pid": "7865288949811",
+ "mfr": "AT1457",
+ "pat": "Francis",
+ "col": "Metallic on Citrus",
+ "dw": "DWTT-72999",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56064",
+ "pid": "7865289015347",
+ "mfr": "9221",
+ "pat": "Montmartre",
+ "col": "ivory",
+ "dw": "DWTT-73000",
+ "status": "active"
+ },
+ {
+ "id": "56503",
+ "pid": "7865293176883",
+ "mfr": "AT1459",
+ "pat": "St. Germain",
+ "col": "Black on White",
+ "dw": "DWTT-73001",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56069",
+ "pid": "7865293242419",
+ "mfr": "9223",
+ "pat": "Montmartre",
+ "col": "Grey",
+ "dw": "DWTT-73002",
+ "status": "active"
+ },
+ {
+ "id": "56506",
+ "pid": "7865293340723",
+ "mfr": "AT15100",
+ "pat": "Fern Stripe",
+ "col": "Blush",
+ "dw": "DWTT-73003",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56507",
+ "pid": "7865293439027",
+ "mfr": "AT15102",
+ "pat": "Fern Stripe",
+ "col": "Green",
+ "dw": "DWTT-73004",
+ "status": "transferred_to_anna_french"
+ },
+ {
+ "id": "56134",
+ "pid": "7865293504563",
+ "mfr": "9251",
+ "pat": "Trocadero",
+ "col": "Taupe",
+ "dw": "DWTT-73005",
+ "status": "active"
+ },
+ {
+ "id": "56135",
+ "pid": "7865301663795",
+ "mfr": "9256",
+ "pat": "Trocadero",
+ "col": "Beige",
+ "dw": "DWTT-73006",
+ "status": "active"
+ },
+ {
+ "id": "56511",
+ "pid": "7865301729331",
+ "mfr": "AT15104",
+ "pat": "Fern Stripe",
+ "col": "Beige",
+ "dw": "DWTT-73007",
+ "status": "transferred_to_anna_french"
+ }
+]
\ No newline at end of file
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..f7096e9
--- /dev/null
+++ b/package.json
@@ -0,0 +1,8 @@
+{
+ "name": "harlequin-sample-price-analysis",
+ "version": "1.0.0",
+ "private": true,
+ "type": "module",
+ "description": "TK-10870 read-only Harlequin missing-sample + price analysis + reusable catalog-integrity detector",
+ "scripts": { "test": "node --test" }
+}
← b2da31e TK-10992: right-size Thibaut collisions — 26 LIVE (Anna Fren
·
back to Harlequin Sample Price Analysis
·
TK-10981: junk mfr_sku cleanup + fleet cost-gap deep-dive (r dc38bb0 →