← back to CelebritySignatures

verification/e2e-proof-printify.json

47 lines

{
  "intent": "Add a safely disabled Printify fulfillment option for TK-10286 while preserving the existing Printful path and preventing charges without fulfillment readiness.",
  "riskTier": "R2 local user-facing and order-boundary change; live provider and money actions remain gated.",
  "environment": "Local CelebritySignatures servers on ports 19921 and 19922; no Printify token, shop id, variant mapping, or live provider action.",
  "baselineCommit": "4f0db6e2bf3a871de6fc88af62f0364b7c8c4aae",
  "timestamp": "2026-09-03T20:54:52Z",
  "assertions": [
    {
      "boundary": "unit/contract",
      "check": "Dynamic Printify payload uses blueprint_id, print_provider_id, selected variant_id, and the paid order's signature image at front x=0.32, y=0.30, scale=0.25; missing mapping, artwork, or address fails loud.",
      "verdict": "PASS",
      "evidence": "node --test test/printify-pod.test.mjs: 3/3 passed"
    },
    {
      "boundary": "provider sender",
      "check": "Without credentials the Printify sender reports zero pending and DRY RUN. POST requires --apply, PRINTIFY_API_TOKEN, PRINTIFY_SHOP_ID, WEAR_SALES_LIVE=1, and PRINTIFY_MANUAL_APPROVAL_CONFIRMED=1.",
      "verdict": "PASS"
    },
    {
      "boundary": "payment negative path",
      "check": "With WEAR_SALES_LIVE=1 and WEAR_POD_PROVIDER=printify artificially set, but no token/mappings, checkout returns HTTP 503 apparel fulfillment is not configured before any Stripe or order write.",
      "verdict": "PASS",
      "evidence": "data/wear-orders.json SHA-1 remained dc87075a6a70b90c42723986b372eed8df7fc6f3 before and after"
    },
    {
      "boundary": "UI regression",
      "check": "/wear rendered 2955 cards; opening a card showed the left-chest preview; zero JavaScript errors; HTTP, headless paint, Playwright interaction, and installed Chrome passed.",
      "verdict": "PASS",
      "artifact": "/var/folders/rq/j8g1f7nn6jv6_lr1cfmqym6w0000gn/T/3x-99EGa9"
    },
    {
      "boundary": "cross-browser",
      "check": "Safari and Firefox automation were unavailable with --no-open.",
      "verdict": "SKIP",
      "reason": "Non-critical parity check; four independent installed layers passed."
    },
    {
      "boundary": "external account",
      "check": "Real Printify shop/catalog discovery and shipping/order validation.",
      "verdict": "SKIP",
      "reason": "PRINTIFY_API_TOKEN is not stored; this is a critical activation prerequisite, so live readiness is not claimed."
    }
  ],
  "cleanup": "Temporary local servers stopped. No Stripe session, local order, Printify request, production job, deployment, publish, DNS change, or remote push occurred.",
  "overallVerdict": "PASS for disabled adapter and fail-closed checkout. PARTIAL/BLOCKED for real account integration until Steve provides or authorizes creation of a scoped Printify personal access token and explicitly approves later live activation."
}