Project Log

Every ship, every gate, every miss.

Reverse-chronological. All times America/Toronto (EDT). Today's session merged with the 3-day cart-fix span underneath.

EDT · UTC−04

Wed, Jun 3, 2026 — Cart fix shipped

today · 28 events
11:15
MBPPicker pages rewrittenSHIPPED
STORY / LOG / REPORT all rebuilt with new framing: Dutchie fixed, locations + mobile next. Hive network local-AI note added. Hub probe-report-pages/.
11:00
MBPPROVED working contract empiricallyCHECKOUT WORKS
Real Dutchie checkout_id 0a0bdb83-... created. Payload {dutchie_variant_id, qty, expected_price} returns safe_to_redirect: TRUE. Tested against Pink Kush 3.5g @ Warren Oshawa.
10:55
MBP5 surgical v145 patches shipped to hubQUEUED
Hub 08e3dc8b. Patch 1: api/menu in_stock_only default. Patch 2: useProducts defensive max_stock filter. Patch 3: storeMap variant-id-only payload. Patch 4: worker permissive resolution. Patch 5: PDP in_stock_only.
10:50
BOTHRoot cause found — contract mismatch, not price-null
Studio's earlier "unit_price null" diagnosis was the symptom. Root: /api/menu returns slug=null; /api/buy-batch requires slug when dutchie_product_id is sent. Frontend always sent both → universal 404.
10:36
CANARYCart $63.51 verified end-to-endPASS
2 items × Cannabis Act 1.0g/30g indicator green. Worker v3.7.0 healthy with 28,399 rows across 47 stores.
09:50
STUDIOv144 — B1 LocationPin → side drawerPARTIAL
Fix landed. /vN/ mirror wiped again (same L27 trap as MBP's deploys earlier).
09:43
STUDIOv143b — IconBurger import fixFIXED
09:30
MBP7-hour retrospective doc (188 lines)SHIPPED
Hub d6bc6fe6. 18 audit symptoms → 5 root causes. Lessons L28-L33 codified. Mesh discipline v2 (5-rule protocol).
07:00-09:00
MBP3× /vN/ wipe incidents (L27 violated)RECOVERED
Picker-only deploys without mirror-restore wiped /vN/ folders three times. CF rollback to 4244f876 restored /v143/. Discipline locked: MBP never deploys pickers (L28b).
06:30
STUDIOv144 B1 unconditional fix at HeaderV2SHIPPED
3 build failures (duplicate IconHeart/IconCart, IconHamburger undef) then success. Canary verified .sc-store-drawer x:0 width:380.
05:41
MBPDEEP-REPLAN — 18 symptoms → 5 root causesSPEC
Hub d7725137. R1 cart-rail overflow (7/18). R2 shop-layout no mobile breakpoint (3/18). R3 hero min-width (1/18). R4 hv2__bar no space-between (2/18). R5 cross-store cart contamination (commerce-blocking).
05:40
STUDIOv143 — wiring + Shop bug fixesPARTIAL
7 user asks visually green. B1 still routed to legacy modal (fixed in v144).
04:30
MBPv142 HeaderV2 ship3 BUILD FAILS
4-agent verification 6/7 GREEN. 3 RED: B1 legacy modal, B2 cart double-fire, B3 tablet 768.
03:25
MBPv140 — REAL Dutchie checkout $35.39 placedFIRST VERIFIED WORKING
Hub 519a968b. Canary E2E 7/11 PASS. Real card → real order → real confirmation. This was the proof point.
02:53
MBPHeaderV2 spec v1 + REV 2 + mobile collapseSPEC
Hub commits 4a5c033b → 36ab96b4 → 84c08c54. Single 72px bar, left side drawer, brand SVGs only.
02:38
STUDIO/vN/ wipe #1 RESTORERECOVERED
109 picker cards reduced to 94, 29 orphans dropped, 15 missing CF deploys added, v139 set as LATEST·STABLE.

Tue, Jun 2 → Mon, Jun 1 — 3-day cart-fix arc

prior 52 events compressed
Jun 2 04:25
MBPProbe report — 10,911 cells analyzedREPORTED
Cart-add 69.62%, price-match 45.11%, gap to 95% ship target documented. 30.3% Dutchie-drift class identified. See /probe-report/ for full chart breakdown.
Jun 2 03:00
STUDIOv3.6.4 worker — checkout bug actually fixedSHIPPED
Jun 1 23:00
BOTHv3.7.0 — Plus API auth path + D1 schema fixed28K ROWS LIVE
Jun 1 18:00
STUDIOB.4 React contract — 15-item shapeRATIFIED
useCart + storeMap + api/menu shape locked. PriceMismatchModal + StoreSwapModal wired. 5-failure-handler checkoutCart() flow.
May 31 06:00
MBPv123 regression caught + DEEP-PLAN-95-PERCENT shippedRECOVERED
storeMap.js.patched blocked checkout. Canary E2E caught it before customer impact.
How we ship this fast: All this iteration runs through a local-AI mesh on my own GPUs — a Hive network instead of metered cloud LLMs. Empirical-verify gates run on Canary before any /vN/ promotes to LATEST. No customer data, store inventory, or Dutchie credentials ever leave our infrastructure.