{
  "version": "riddle-proof.profile-result.v1",
  "profile_name": "riddle-site-v353-billing-load-retry",
  "runner": "riddle",
  "status": "passed",
  "baseline_policy": "invariant_only",
  "route": {
    "requested": "https://riddledc.com/billing/",
    "observed": "/billing/",
    "expected_path": "/billing/",
    "matched": true,
    "http_status": 200
  },
  "artifacts": {
    "screenshots": [
      "riddle-site-v353-billing-load-retry-desktop",
      "riddle-site-v353-billing-load-retry-desktop-billing-retry-recovered",
      "riddle-site-v353-billing-load-retry-phone",
      "riddle-site-v353-billing-load-retry-phone-billing-retry-recovered",
      "riddle-site-v353-billing-load-retry-ipad-mini",
      "riddle-site-v353-billing-load-retry-ipad-mini-billing-retry-recovered",
      "riddle-site-v353-billing-load-retry-ipad",
      "riddle-site-v353-billing-load-retry-ipad-billing-retry-recovered"
    ],
    "console": "console.json",
    "proof_json": "proof.json",
    "dom_summary": "dom-summary.json"
  },
  "checks": [
    {
      "type": "network_mocks_succeeded",
      "label": "network mocks succeeded",
      "status": "passed",
      "evidence": {
        "mock_count": 3,
        "required_count": 3,
        "hit_count": 22,
        "hits_by_label": {
          "billing-balance-v353-fail-then-success": 8,
          "billing-history-v353-retry-success": 7,
          "billing-auto-recharge-v353-retry-success": 7
        },
        "required_hits_by_label": {
          "billing-balance-v353-fail-then-success": 5,
          "billing-history-v353-retry-success": 4,
          "billing-auto-recharge-v353-retry-success": 4
        },
        "max_hits_by_label": {},
        "response_hits_by_label": {
          "billing-balance-v353-fail-then-success": {
            "first-balance-load-fails": 1,
            "retry-balance-load-succeeds": 7
          }
        },
        "failed": []
      }
    },
    {
      "type": "setup_actions_succeeded",
      "label": "setup actions succeeded",
      "status": "passed",
      "evidence": {
        "action_count": 15,
        "viewports": [
          {
            "name": "desktop",
            "expected_action_count": 15,
            "ok": true,
            "result_count": 15
          },
          {
            "name": "phone",
            "expected_action_count": 13,
            "ok": true,
            "result_count": 13
          },
          {
            "name": "ipad-mini",
            "expected_action_count": 13,
            "ok": true,
            "result_count": 13
          },
          {
            "name": "ipad",
            "expected_action_count": 13,
            "ok": true,
            "result_count": 13
          }
        ],
        "setup_summary": {
          "viewport_count": 4,
          "action_count": 15,
          "viewports": [
            {
              "name": "desktop",
              "expected_action_count": 15,
              "ok": true,
              "result_count": 15,
              "observed_path": "/billing/",
              "final_url": "https://riddledc.com/billing/",
              "action_counts": {
                "clear_storage": 1,
                "local_storage": 5,
                "wait_for_selector": 1,
                "wait_for_text": 4,
                "click": 1,
                "assert_text_absent": 2,
                "screenshot": 1
              },
              "frame_action_count": 0,
              "frame_urls": [],
              "setup_screenshots": [
                "riddle-site-v353-billing-load-retry-desktop-billing-retry-recovered"
              ],
              "clicked_total": 1,
              "clicked_truncated": false,
              "click_count_action_total": 0,
              "click_count_value_total": 0,
              "clicked": [
                {
                  "ordinal": 8,
                  "selector": ".error-message button",
                  "frame_selector": null,
                  "text": "Retry"
                }
              ],
              "text_samples": [
                {
                  "ordinal": 7,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsFailed to load b... (517 chars)"
                },
                {
                  "ordinal": 9,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 10,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 11,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                }
              ],
              "failed": [],
              "optional_failed": []
            },
            {
              "name": "phone",
              "expected_action_count": 13,
              "ok": true,
              "result_count": 13,
              "observed_path": "/billing/",
              "final_url": "https://riddledc.com/billing/",
              "action_counts": {
                "clear_storage": 1,
                "local_storage": 5,
                "wait_for_selector": 1,
                "wait_for_text": 3,
                "assert_text_absent": 2,
                "screenshot": 1
              },
              "frame_action_count": 0,
              "frame_urls": [],
              "setup_screenshots": [
                "riddle-site-v353-billing-load-retry-phone-billing-retry-recovered"
              ],
              "clicked_total": 0,
              "clicked_truncated": false,
              "click_count_action_total": 0,
              "click_count_value_total": 0,
              "clicked": [],
              "text_samples": [
                {
                  "ordinal": 7,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 8,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 9,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                }
              ],
              "failed": [],
              "optional_failed": []
            },
            {
              "name": "ipad-mini",
              "expected_action_count": 13,
              "ok": true,
              "result_count": 13,
              "observed_path": "/billing/",
              "final_url": "https://riddledc.com/billing/",
              "action_counts": {
                "clear_storage": 1,
                "local_storage": 5,
                "wait_for_selector": 1,
                "wait_for_text": 3,
                "assert_text_absent": 2,
                "screenshot": 1
              },
              "frame_action_count": 0,
              "frame_urls": [],
              "setup_screenshots": [
                "riddle-site-v353-billing-load-retry-ipad-mini-billing-retry-recovered"
              ],
              "clicked_total": 0,
              "clicked_truncated": false,
              "click_count_action_total": 0,
              "click_count_value_total": 0,
              "clicked": [],
              "text_samples": [
                {
                  "ordinal": 7,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 8,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 9,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                }
              ],
              "failed": [],
              "optional_failed": []
            },
            {
              "name": "ipad",
              "expected_action_count": 13,
              "ok": true,
              "result_count": 13,
              "observed_path": "/billing/",
              "final_url": "https://riddledc.com/billing/",
              "action_counts": {
                "clear_storage": 1,
                "local_storage": 5,
                "wait_for_selector": 1,
                "wait_for_text": 3,
                "assert_text_absent": 2,
                "screenshot": 1
              },
              "frame_action_count": 0,
              "frame_urls": [],
              "setup_screenshots": [
                "riddle-site-v353-billing-load-retry-ipad-billing-retry-recovered"
              ],
              "clicked_total": 0,
              "clicked_truncated": false,
              "click_count_action_total": 0,
              "click_count_value_total": 0,
              "clicked": [],
              "text_samples": [
                {
                  "ordinal": 7,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 8,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                },
                {
                  "ordinal": 9,
                  "action": "wait_for_text",
                  "frame_selector": null,
                  "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time Bal... (517 chars)"
                }
              ],
              "failed": [],
              "optional_failed": []
            }
          ]
        },
        "failed": []
      }
    },
    {
      "type": "route_loaded",
      "label": "route_loaded",
      "status": "passed",
      "evidence": {
        "expected_path": "/billing/",
        "observed_paths": [
          "/billing/",
          "/billing/",
          "/billing/",
          "/billing/"
        ],
        "http_statuses": [
          200,
          200,
          200,
          200
        ]
      }
    },
    {
      "type": "selector_visible",
      "label": "selector_visible",
      "status": "passed",
      "evidence": {
        "selector": ".billing-container",
        "visible_counts": [
          1,
          1,
          1,
          1
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "Billing & Credits",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "Browser Time Balance",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "2h 15m",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "Transaction History",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "Riddle Proof v353 retry recovery credit",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "Payment method saved",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_visible",
      "label": "text_visible",
      "status": "passed",
      "evidence": {
        "text": "(OFF)",
        "matches": [
          true,
          true,
          true,
          true
        ]
      }
    },
    {
      "type": "text_absent",
      "label": "text_absent",
      "status": "passed",
      "evidence": {
        "text": "Failed to load billing information",
        "matches": [
          false,
          false,
          false,
          false
        ]
      }
    },
    {
      "type": "text_absent",
      "label": "text_absent",
      "status": "passed",
      "evidence": {
        "text": "[object Object]",
        "matches": [
          false,
          false,
          false,
          false
        ]
      }
    },
    {
      "type": "text_absent",
      "label": "text_absent",
      "status": "passed",
      "evidence": {
        "text": "Application error",
        "matches": [
          false,
          false,
          false,
          false
        ]
      }
    },
    {
      "type": "selector_count_equals",
      "label": "selector_count_equals",
      "status": "passed",
      "evidence": {
        "selector": ".credit-balance",
        "expected_count": 1,
        "counts": [
          1,
          1,
          1,
          1
        ]
      }
    },
    {
      "type": "selector_count_equals",
      "label": "selector_count_equals",
      "status": "passed",
      "evidence": {
        "selector": ".transaction-history tbody tr",
        "expected_count": 2,
        "counts": [
          2,
          2,
          2,
          2
        ]
      }
    },
    {
      "type": "selector_count_equals",
      "label": "selector_count_equals",
      "status": "passed",
      "evidence": {
        "selector": ".auto-recharge-section .error-message",
        "expected_count": 0,
        "counts": [
          0,
          0,
          0,
          0
        ]
      }
    },
    {
      "type": "no_horizontal_overflow",
      "label": "no_horizontal_overflow",
      "status": "passed",
      "evidence": {
        "max_overflow_px": 1,
        "overflow_px": [
          0,
          0,
          0,
          0
        ],
        "bounds_overflow_px": [
          0,
          0,
          0,
          0
        ],
        "overflow_offender_counts": [
          0,
          0,
          0,
          0
        ],
        "viewports": [
          "desktop",
          "phone",
          "ipad-mini",
          "ipad"
        ]
      }
    },
    {
      "type": "no_fatal_console_errors",
      "label": "no_fatal_console_errors",
      "status": "passed",
      "evidence": {
        "console_fatal_count": 0,
        "page_error_count": 0,
        "total_console_fatal_count": 4,
        "total_page_error_count": 0,
        "allowed_console_fatal_count": 4,
        "explicitly_allowed_console_fatal_count": 1,
        "allowed_expected_network_mock_console_count": 3,
        "allowed_expected_network_mock_console_events": [
          {
            "url": "https://riddledc.com/api/billing/balance",
            "status": 503,
            "label": "billing-balance-v353-fail-then-success",
            "response_label": "first-balance-load-fails",
            "text": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)"
          },
          {
            "url": "https://riddledc.com/api/billing/balance",
            "status": 503,
            "label": "billing-balance-v353-fail-then-success",
            "response_label": "first-balance-load-fails",
            "text": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)"
          },
          {
            "url": "https://riddledc.com/api/billing/balance",
            "status": 503,
            "label": "billing-balance-v353-fail-then-success",
            "response_label": "first-balance-load-fails",
            "text": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)"
          }
        ],
        "allowed_page_error_count": 0,
        "allowed_console_texts": [],
        "allowed_console_patterns": [
          "Error loading billing data:.*(503|Failed to fetch)",
          "merchant-ui-api\\.stripe\\.com/elements/wallet-config"
        ],
        "allowed_page_error_texts": [],
        "allowed_page_error_patterns": []
      }
    }
  ],
  "summary": "riddle-site-v353-billing-load-retry passed 19 check(s) across 4 viewport(s) (desktop, phone, ipad-mini, ipad).",
  "captured_at": "2026-05-15T22:20:41.611Z",
  "evidence": {
    "version": "riddle-proof.profile-evidence.v1",
    "profile_name": "riddle-site-v353-billing-load-retry",
    "target_url": "https://riddledc.com/billing/",
    "baseline_policy": "invariant_only",
    "captured_at": "2026-05-15T22:20:41.611Z",
    "viewports": [
      {
        "name": "desktop",
        "width": 1280,
        "height": 900,
        "url": "https://riddledc.com/billing/",
        "route": {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        "title": "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "body_text_length": 2167,
        "body_text_sample": "Skip to main content Riddle Docs Proof MCP Pricing Blog Playground Dashboard Buy Credits rp353-billing@example.com Sign Out Billing & Credits Browser Time Balance Your balance is measured in browser time - the actual seconds our browsers spend running your jobs. Available Browser Time: 2h 15m ~$1.13 value Total: 2h 15m ~$1.13 value Pricing $0.50/hour browser compute (billed per second, 30-second minimum) Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs. Storage & bandwidth charged at cost with no markup: Storage: Free up to 10MB for 24 hours (excess charged at $0.023/GB) Bandwidth: $0.09/GB (~1 second per 1.5MB) Typical screenshot: 30s minimum (~$0.0042). View full pricing details Credits valid for 12 months. No auto-renewal, no surprises. Add Credits 🔒 Secure Payment by Stripe Your payment information is processed securely by Stripe and never stored on our servers. We never see or store your card details. Amount to Add: $5.00 (10 hours of browser time) $10.00 (20 hours of browser time) $50.00 (100 hours of browser time) $100.00 (200 hours of browser time) $500.00 (1,000 hours of browser time) Card Details: 🔒 Powered by Stripe This secure form is provided directly by Stripe. Your card information is encrypted and never stored on our servers. I agree to the Terms of Service Add $5.00 Auto-Recharge Automatically add credits when your balance falls below a threshold. 💳 Payment method saved Enable auto-recharge (OFF) Promo Code Have a promo code? Enter it below to add free browser time to your account. Redeem Transaction History Show $0 transactions Date Type Amount Description May 2026 5/15/2026 Signup Bonus +2h 15m Riddle Proof v353 retry recovery credit Riddle Distributed Computing Product Riddle Proof Good Catch Diary Pricing Maximize Value Documentation MCP Recipes Playground Use Cases AI Agents Agent Guide Serverless Authenticated Pages vs Self-Hosted Blog Evidence Over Summaries Frontend Dev Without a Browser E2E Testing Tips Chatty Agents (Part I) Batching Heuristics (Part II) Vision Agents Teaching AI to Ski Support FAQ Status Contact Legal Terms Privacy © 2026 Riddle. All rights reserved.",
        "scroll_width": 1280,
        "client_width": 1280,
        "overflow_px": 0,
        "bounds_overflow_px": 0,
        "overflow_offenders": [],
        "selectors": {
          ".billing-container": {
            "count": 1,
            "visible_count": 1
          },
          ".credit-balance": {
            "count": 1,
            "visible_count": 1
          },
          ".transaction-history tbody tr": {
            "count": 2,
            "visible_count": 2
          },
          ".auto-recharge-section .error-message": {
            "count": 0,
            "visible_count": 0
          }
        },
        "frames": {},
        "text_sequences": {},
        "text_matches": {
          "text:Billing & Credits": true,
          "text:Browser Time Balance": true,
          "text:2h 15m": true,
          "text:Transaction History": true,
          "text:Riddle Proof v353 retry recovery credit": true,
          "text:Payment method saved": true,
          "text:(OFF)": true,
          "text:Failed to load billing information": false,
          "text:[object Object]": false,
          "text:Application error": false
        },
        "setup_action_results": [
          {
            "ok": true,
            "action": "clear_storage",
            "ordinal": 0,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "storage": "both",
            "reload": true
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 1,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.LastAuthUser",
            "value_length": 25,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 2,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.idToken",
            "value_length": 377,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 3,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.accessToken",
            "value_length": 357,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 4,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.refreshToken",
            "value_length": 19,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 5,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.clockDrift",
            "value_length": 1,
            "reload": true
          },
          {
            "ok": true,
            "action": "wait_for_selector",
            "ordinal": 6,
            "selector": ".billing-container",
            "frame_selector": null,
            "optional": false,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 7,
            "selector": "body",
            "frame_selector": null,
            "optional": true,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsFailed to load billing information: Failed to load balance: 503 Service UnavailableRetryRiddleDistributed ComputingProductRiddle ProofGood Catch DiaryPricingMaximize ValueDocumentationMCPRecipesPlaygroundUse CasesAI AgentsAgent GuideServerlessAuthenticated Pagesvs Self-HostedBlogEvidence Over SummariesFrontend Dev Without a BrowserE2E Testing TipsChatty Agents (Part I)... (13017 chars)",
            "target_index": 0,
            "timeout_ms": 2500
          },
          {
            "ok": true,
            "action": "click",
            "ordinal": 8,
            "selector": ".error-message button",
            "frame_selector": null,
            "optional": true,
            "count": 1,
            "target_index": 0,
            "text": "Retry"
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 9,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 10,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 11,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 12,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 13,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "screenshot",
            "ordinal": 14,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "label": "billing-retry-recovered",
            "screenshot_label": "riddle-site-v353-billing-load-retry-desktop-billing-retry-recovered"
          }
        ],
        "screenshot_label": "riddle-site-v353-billing-load-retry-desktop"
      },
      {
        "name": "phone",
        "width": 390,
        "height": 844,
        "url": "https://riddledc.com/billing/",
        "route": {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        "title": "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "body_text_length": 2071,
        "body_text_sample": "Skip to main content Riddle Billing & Credits Browser Time Balance Your balance is measured in browser time - the actual seconds our browsers spend running your jobs. Available Browser Time: 2h 15m ~$1.13 value Total: 2h 15m ~$1.13 value Pricing $0.50/hour browser compute (billed per second, 30-second minimum) Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs. Storage & bandwidth charged at cost with no markup: Storage: Free up to 10MB for 24 hours (excess charged at $0.023/GB) Bandwidth: $0.09/GB (~1 second per 1.5MB) Typical screenshot: 30s minimum (~$0.0042). View full pricing details Credits valid for 12 months. No auto-renewal, no surprises. Add Credits 🔒 Secure Payment by Stripe Your payment information is processed securely by Stripe and never stored on our servers. We never see or store your card details. Amount to Add: $5.00 (10 hours of browser time) $10.00 (20 hours of browser time) $50.00 (100 hours of browser time) $100.00 (200 hours of browser time) $500.00 (1,000 hours of browser time) Card Details: 🔒 Powered by Stripe This secure form is provided directly by Stripe. Your card information is encrypted and never stored on our servers. I agree to the Terms of Service Add $5.00 Auto-Recharge Automatically add credits when your balance falls below a threshold. 💳 Payment method saved Enable auto-recharge (OFF) Promo Code Have a promo code? Enter it below to add free browser time to your account. Redeem Transaction History Show $0 transactions Date Type Amount Description May 2026 5/15/2026 Signup Bonus +2h 15m Riddle Proof v353 retry recovery credit Riddle Distributed Computing Product Riddle Proof Good Catch Diary Pricing Maximize Value Documentation MCP Recipes Playground Use Cases AI Agents Agent Guide Serverless Authenticated Pages vs Self-Hosted Blog Evidence Over Summaries Frontend Dev Without a Browser E2E Testing Tips Chatty Agents (Part I) Batching Heuristics (Part II) Vision Agents Teaching AI to Ski Support FAQ Status Contact Legal Terms Privacy © 2026 Riddle. All rights reserved.",
        "scroll_width": 390,
        "client_width": 390,
        "overflow_px": 0,
        "bounds_overflow_px": 0,
        "overflow_offenders": [],
        "selectors": {
          ".billing-container": {
            "count": 1,
            "visible_count": 1
          },
          ".credit-balance": {
            "count": 1,
            "visible_count": 1
          },
          ".transaction-history tbody tr": {
            "count": 2,
            "visible_count": 2
          },
          ".auto-recharge-section .error-message": {
            "count": 0,
            "visible_count": 0
          }
        },
        "frames": {},
        "text_sequences": {},
        "text_matches": {
          "text:Billing & Credits": true,
          "text:Browser Time Balance": true,
          "text:2h 15m": true,
          "text:Transaction History": true,
          "text:Riddle Proof v353 retry recovery credit": true,
          "text:Payment method saved": true,
          "text:(OFF)": true,
          "text:Failed to load billing information": false,
          "text:[object Object]": false,
          "text:Application error": false
        },
        "setup_action_results": [
          {
            "ok": true,
            "action": "clear_storage",
            "ordinal": 0,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "storage": "both",
            "reload": true
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 1,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.LastAuthUser",
            "value_length": 25,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 2,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.idToken",
            "value_length": 377,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 3,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.accessToken",
            "value_length": 357,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 4,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.refreshToken",
            "value_length": 19,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 5,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.clockDrift",
            "value_length": 1,
            "reload": true
          },
          {
            "ok": true,
            "action": "wait_for_selector",
            "ordinal": 6,
            "selector": ".billing-container",
            "frame_selector": null,
            "optional": false,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 7,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14359 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 8,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14359 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 9,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 10,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 11,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "screenshot",
            "ordinal": 12,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "label": "billing-retry-recovered",
            "screenshot_label": "riddle-site-v353-billing-load-retry-phone-billing-retry-recovered"
          }
        ],
        "screenshot_label": "riddle-site-v353-billing-load-retry-phone"
      },
      {
        "name": "ipad-mini",
        "width": 768,
        "height": 1024,
        "url": "https://riddledc.com/billing/",
        "route": {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        "title": "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "body_text_length": 2071,
        "body_text_sample": "Skip to main content Riddle Billing & Credits Browser Time Balance Your balance is measured in browser time - the actual seconds our browsers spend running your jobs. Available Browser Time: 2h 15m ~$1.13 value Total: 2h 15m ~$1.13 value Pricing $0.50/hour browser compute (billed per second, 30-second minimum) Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs. Storage & bandwidth charged at cost with no markup: Storage: Free up to 10MB for 24 hours (excess charged at $0.023/GB) Bandwidth: $0.09/GB (~1 second per 1.5MB) Typical screenshot: 30s minimum (~$0.0042). View full pricing details Credits valid for 12 months. No auto-renewal, no surprises. Add Credits 🔒 Secure Payment by Stripe Your payment information is processed securely by Stripe and never stored on our servers. We never see or store your card details. Amount to Add: $5.00 (10 hours of browser time) $10.00 (20 hours of browser time) $50.00 (100 hours of browser time) $100.00 (200 hours of browser time) $500.00 (1,000 hours of browser time) Card Details: 🔒 Powered by Stripe This secure form is provided directly by Stripe. Your card information is encrypted and never stored on our servers. I agree to the Terms of Service Add $5.00 Auto-Recharge Automatically add credits when your balance falls below a threshold. 💳 Payment method saved Enable auto-recharge (OFF) Promo Code Have a promo code? Enter it below to add free browser time to your account. Redeem Transaction History Show $0 transactions Date Type Amount Description May 2026 5/15/2026 Signup Bonus +2h 15m Riddle Proof v353 retry recovery credit Riddle Distributed Computing Product Riddle Proof Good Catch Diary Pricing Maximize Value Documentation MCP Recipes Playground Use Cases AI Agents Agent Guide Serverless Authenticated Pages vs Self-Hosted Blog Evidence Over Summaries Frontend Dev Without a Browser E2E Testing Tips Chatty Agents (Part I) Batching Heuristics (Part II) Vision Agents Teaching AI to Ski Support FAQ Status Contact Legal Terms Privacy © 2026 Riddle. All rights reserved.",
        "scroll_width": 768,
        "client_width": 768,
        "overflow_px": 0,
        "bounds_overflow_px": 0,
        "overflow_offenders": [],
        "selectors": {
          ".billing-container": {
            "count": 1,
            "visible_count": 1
          },
          ".credit-balance": {
            "count": 1,
            "visible_count": 1
          },
          ".transaction-history tbody tr": {
            "count": 2,
            "visible_count": 2
          },
          ".auto-recharge-section .error-message": {
            "count": 0,
            "visible_count": 0
          }
        },
        "frames": {},
        "text_sequences": {},
        "text_matches": {
          "text:Billing & Credits": true,
          "text:Browser Time Balance": true,
          "text:2h 15m": true,
          "text:Transaction History": true,
          "text:Riddle Proof v353 retry recovery credit": true,
          "text:Payment method saved": true,
          "text:(OFF)": true,
          "text:Failed to load billing information": false,
          "text:[object Object]": false,
          "text:Application error": false
        },
        "setup_action_results": [
          {
            "ok": true,
            "action": "clear_storage",
            "ordinal": 0,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "storage": "both",
            "reload": true
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 1,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.LastAuthUser",
            "value_length": 25,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 2,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.idToken",
            "value_length": 377,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 3,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.accessToken",
            "value_length": 357,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 4,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.refreshToken",
            "value_length": 19,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 5,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.clockDrift",
            "value_length": 1,
            "reload": true
          },
          {
            "ok": true,
            "action": "wait_for_selector",
            "ordinal": 6,
            "selector": ".billing-container",
            "frame_selector": null,
            "optional": false,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 7,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 8,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 9,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 10,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 11,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "screenshot",
            "ordinal": 12,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "label": "billing-retry-recovered",
            "screenshot_label": "riddle-site-v353-billing-load-retry-ipad-mini-billing-retry-recovered"
          }
        ],
        "screenshot_label": "riddle-site-v353-billing-load-retry-ipad-mini"
      },
      {
        "name": "ipad",
        "width": 820,
        "height": 1180,
        "url": "https://riddledc.com/billing/",
        "route": {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        "title": "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "body_text_length": 2071,
        "body_text_sample": "Skip to main content Riddle Billing & Credits Browser Time Balance Your balance is measured in browser time - the actual seconds our browsers spend running your jobs. Available Browser Time: 2h 15m ~$1.13 value Total: 2h 15m ~$1.13 value Pricing $0.50/hour browser compute (billed per second, 30-second minimum) Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs. Storage & bandwidth charged at cost with no markup: Storage: Free up to 10MB for 24 hours (excess charged at $0.023/GB) Bandwidth: $0.09/GB (~1 second per 1.5MB) Typical screenshot: 30s minimum (~$0.0042). View full pricing details Credits valid for 12 months. No auto-renewal, no surprises. Add Credits 🔒 Secure Payment by Stripe Your payment information is processed securely by Stripe and never stored on our servers. We never see or store your card details. Amount to Add: $5.00 (10 hours of browser time) $10.00 (20 hours of browser time) $50.00 (100 hours of browser time) $100.00 (200 hours of browser time) $500.00 (1,000 hours of browser time) Card Details: 🔒 Powered by Stripe This secure form is provided directly by Stripe. Your card information is encrypted and never stored on our servers. I agree to the Terms of Service Add $5.00 Auto-Recharge Automatically add credits when your balance falls below a threshold. 💳 Payment method saved Enable auto-recharge (OFF) Promo Code Have a promo code? Enter it below to add free browser time to your account. Redeem Transaction History Show $0 transactions Date Type Amount Description May 2026 5/15/2026 Signup Bonus +2h 15m Riddle Proof v353 retry recovery credit Riddle Distributed Computing Product Riddle Proof Good Catch Diary Pricing Maximize Value Documentation MCP Recipes Playground Use Cases AI Agents Agent Guide Serverless Authenticated Pages vs Self-Hosted Blog Evidence Over Summaries Frontend Dev Without a Browser E2E Testing Tips Chatty Agents (Part I) Batching Heuristics (Part II) Vision Agents Teaching AI to Ski Support FAQ Status Contact Legal Terms Privacy © 2026 Riddle. All rights reserved.",
        "scroll_width": 820,
        "client_width": 820,
        "overflow_px": 0,
        "bounds_overflow_px": 0,
        "overflow_offenders": [],
        "selectors": {
          ".billing-container": {
            "count": 1,
            "visible_count": 1
          },
          ".credit-balance": {
            "count": 1,
            "visible_count": 1
          },
          ".transaction-history tbody tr": {
            "count": 2,
            "visible_count": 2
          },
          ".auto-recharge-section .error-message": {
            "count": 0,
            "visible_count": 0
          }
        },
        "frames": {},
        "text_sequences": {},
        "text_matches": {
          "text:Billing & Credits": true,
          "text:Browser Time Balance": true,
          "text:2h 15m": true,
          "text:Transaction History": true,
          "text:Riddle Proof v353 retry recovery credit": true,
          "text:Payment method saved": true,
          "text:(OFF)": true,
          "text:Failed to load billing information": false,
          "text:[object Object]": false,
          "text:Application error": false
        },
        "setup_action_results": [
          {
            "ok": true,
            "action": "clear_storage",
            "ordinal": 0,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "storage": "both",
            "reload": true
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 1,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.LastAuthUser",
            "value_length": 25,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 2,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.idToken",
            "value_length": 377,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 3,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.accessToken",
            "value_length": 357,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 4,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.refreshToken",
            "value_length": 19,
            "reload": false
          },
          {
            "ok": true,
            "action": "local_storage",
            "ordinal": 5,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "key": "CognitoIdentityServiceProvider.7u1bt3r20v613j7eaki9dkbhve.rp353-billing@example.com.clockDrift",
            "value_length": 1,
            "reload": true
          },
          {
            "ok": true,
            "action": "wait_for_selector",
            "ordinal": 6,
            "selector": ".billing-container",
            "frame_selector": null,
            "optional": false,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 7,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14359 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 8,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "wait_for_text",
            "ordinal": 9,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "text": "Skip to main contentRiddleDocsProofMCPPricingBlogPlaygroundDashboardBuy Creditsrp353-billing@example.comSign OutBilling & CreditsBrowser Time BalanceYour balance is measured in browser time - the actual seconds our browsers spend running your jobs.Available Browser Time:2h 15m~$1.13 valueTotal:2h 15m~$1.13 valuePricing$0.50/hour browser compute (billed per second, 30-second minimum)Includes all infrastructure (EC2, Lambda, orchestration). No hidden compute costs.Storage & bandwidth charged at co... (14455 chars)",
            "target_index": 0,
            "timeout_ms": 30000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 10,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "assert_text_absent",
            "ordinal": 11,
            "selector": "body",
            "frame_selector": null,
            "optional": false,
            "count": 1,
            "timeout_ms": 1000
          },
          {
            "ok": true,
            "action": "screenshot",
            "ordinal": 12,
            "selector": null,
            "frame_selector": null,
            "optional": false,
            "label": "billing-retry-recovered",
            "screenshot_label": "riddle-site-v353-billing-load-retry-ipad-billing-retry-recovered"
          }
        ],
        "screenshot_label": "riddle-site-v353-billing-load-retry-ipad"
      }
    ],
    "console": {
      "events": [
        {
          "type": "error",
          "text": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)",
          "location": {
            "url": "https://riddledc.com/api/billing/balance",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "error",
          "text": "Error loading billing data: Error: Failed to load balance: 503 Service Unavailable\n    at B (https://riddledc.com/_next/static/chunks/app/billing/page-f608f4f32735a503.js:1:14784)",
          "location": {
            "url": "https://riddledc.com/_next/static/chunks/app/billing/page-f608f4f32735a503.js",
            "lineNumber": 0,
            "columnNumber": 15078
          }
        },
        {
          "type": "error",
          "text": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)",
          "location": {
            "url": "https://riddledc.com/api/billing/balance",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "error",
          "text": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)",
          "location": {
            "url": "https://riddledc.com/api/billing/balance",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "warning",
          "text": "[GroupMarkerNotSet(crbug.com/242999)!:A0A02000D4310000]Automatic fallback to software WebGL has been deprecated. Please use the --enable-unsafe-swiftshader (about:flags#enable-unsafe-swiftshader) flag to opt in to lower security guarantees for trusted content.",
          "location": {
            "url": "https://newassets.hcaptcha.com/captcha/v1/6528675343bbcfa331f287bf983949f75bf1e7bb/static/hcaptcha.html#frame=challenge&id=068pwp2b59&host=b.stripecdn.com&sentry=true&reportapi=https%3A%2F%2Faccounts.hcaptcha.com&recaptchacompat=true&custom=false&hl=en&tplinks=on&andint=off&pstissuer=https%3A%2F%2Fpst-issuer.hcaptcha.com&sitekey=463b917e-e264-403f-ad34-34af0ee10294&size=invisible&theme=light&origin=https%3A%2F%2Fb.stripecdn.com",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "warning",
          "text": "[GroupMarkerNotSet(crbug.com/242999)!:A0D02000D4310000]Automatic fallback to software WebGL has been deprecated. Please use the --enable-unsafe-swiftshader (about:flags#enable-unsafe-swiftshader) flag to opt in to lower security guarantees for trusted content.",
          "location": {
            "url": "https://newassets.hcaptcha.com/captcha/v1/6528675343bbcfa331f287bf983949f75bf1e7bb/static/hcaptcha.html#frame=challenge&id=068pwp2b59&host=b.stripecdn.com&sentry=true&reportapi=https%3A%2F%2Faccounts.hcaptcha.com&recaptchacompat=true&custom=false&hl=en&tplinks=on&andint=off&pstissuer=https%3A%2F%2Fpst-issuer.hcaptcha.com&sitekey=463b917e-e264-403f-ad34-34af0ee10294&size=invisible&theme=light&origin=https%3A%2F%2Fb.stripecdn.com",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "warning",
          "text": "[.WebGL-0xff401e2d200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels",
          "location": {
            "url": "https://newassets.hcaptcha.com/captcha/v1/6528675343bbcfa331f287bf983949f75bf1e7bb/static/hcaptcha.html#frame=challenge&id=068pwp2b59&host=b.stripecdn.com&sentry=true&reportapi=https%3A%2F%2Faccounts.hcaptcha.com&recaptchacompat=true&custom=false&hl=en&tplinks=on&andint=off&pstissuer=https%3A%2F%2Fpst-issuer.hcaptcha.com&sitekey=463b917e-e264-403f-ad34-34af0ee10294&size=invisible&theme=light&origin=https%3A%2F%2Fb.stripecdn.com",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "warning",
          "text": "[GroupMarkerNotSet(crbug.com/242999)!:A0D02000D4310000]Automatic fallback to software WebGL has been deprecated. Please use the --enable-unsafe-swiftshader (about:flags#enable-unsafe-swiftshader) flag to opt in to lower security guarantees for trusted content.",
          "location": {
            "url": "https://newassets.hcaptcha.com/captcha/v1/6528675343bbcfa331f287bf983949f75bf1e7bb/static/hcaptcha.html#frame=challenge&id=0wdq9k3p6lwi&host=b.stripecdn.com&sentry=true&reportapi=https%3A%2F%2Faccounts.hcaptcha.com&recaptchacompat=true&custom=false&hl=en&tplinks=on&andint=off&pstissuer=https%3A%2F%2Fpst-issuer.hcaptcha.com&sitekey=463b917e-e264-403f-ad34-34af0ee10294&size=invisible&theme=light&origin=https%3A%2F%2Fb.stripecdn.com",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "warning",
          "text": "[GroupMarkerNotSet(crbug.com/242999)!:A0A02000D4310000]Automatic fallback to software WebGL has been deprecated. Please use the --enable-unsafe-swiftshader (about:flags#enable-unsafe-swiftshader) flag to opt in to lower security guarantees for trusted content.",
          "location": {
            "url": "https://newassets.hcaptcha.com/captcha/v1/6528675343bbcfa331f287bf983949f75bf1e7bb/static/hcaptcha.html#frame=challenge&id=0wdq9k3p6lwi&host=b.stripecdn.com&sentry=true&reportapi=https%3A%2F%2Faccounts.hcaptcha.com&recaptchacompat=true&custom=false&hl=en&tplinks=on&andint=off&pstissuer=https%3A%2F%2Fpst-issuer.hcaptcha.com&sitekey=463b917e-e264-403f-ad34-34af0ee10294&size=invisible&theme=light&origin=https%3A%2F%2Fb.stripecdn.com",
            "lineNumber": 0,
            "columnNumber": 0
          }
        },
        {
          "type": "warning",
          "text": "[.WebGL-0xff401e36200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels",
          "location": {
            "url": "https://newassets.hcaptcha.com/captcha/v1/6528675343bbcfa331f287bf983949f75bf1e7bb/static/hcaptcha.html#frame=challenge&id=0wdq9k3p6lwi&host=b.stripecdn.com&sentry=true&reportapi=https%3A%2F%2Faccounts.hcaptcha.com&recaptchacompat=true&custom=false&hl=en&tplinks=on&andint=off&pstissuer=https%3A%2F%2Fpst-issuer.hcaptcha.com&sitekey=463b917e-e264-403f-ad34-34af0ee10294&size=invisible&theme=light&origin=https%3A%2F%2Fb.stripecdn.com",
            "lineNumber": 0,
            "columnNumber": 0
          }
        }
      ],
      "fatal_count": 4
    },
    "page_errors": [],
    "dialogs": [],
    "network_mocks": [
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "first-balance-load-fails",
        "hit_index": 0,
        "response_index": 0,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 503
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 1,
        "response_index": 1,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 0,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 0,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 2,
        "response_index": 1,
        "sequence_reused": true,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 1,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 1,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 3,
        "response_index": 1,
        "sequence_reused": true,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 2,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 2,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 4,
        "response_index": 1,
        "sequence_reused": true,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 3,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 3,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 5,
        "response_index": 1,
        "sequence_reused": true,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 4,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 4,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 6,
        "response_index": 1,
        "sequence_reused": true,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 5,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 5,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-balance-v353-fail-then-success",
        "response_label": "retry-balance-load-succeeds",
        "hit_index": 7,
        "response_index": 1,
        "sequence_reused": true,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/balance",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-history-v353-retry-success",
        "response_label": "billing-history-v353-retry-success",
        "hit_index": 6,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/history",
        "method": "GET",
        "status": 200
      },
      {
        "ok": true,
        "label": "billing-auto-recharge-v353-retry-success",
        "response_label": "billing-auto-recharge-v353-retry-success",
        "hit_index": 6,
        "response_index": null,
        "sequence_reused": false,
        "sequence_cycle": false,
        "url": "https://riddledc.com/api/billing/auto-recharge",
        "method": "GET",
        "status": 200
      }
    ],
    "dom_summary": {
      "expected_viewport_count": 4,
      "viewport_count": 4,
      "partial": false,
      "routes": [
        {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        },
        {
          "requested": "https://riddledc.com/billing/",
          "observed": "/billing/",
          "expected_path": "/billing/",
          "matched": true,
          "http_status": 200
        }
      ],
      "titles": [
        "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "Riddle Distributed Computing - Hosted Execution for AI Agents",
        "Riddle Distributed Computing - Hosted Execution for AI Agents"
      ],
      "overflow_px": [
        0,
        0,
        0,
        0
      ],
      "bounds_overflow_px": [
        0,
        0,
        0,
        0
      ],
      "overflow_offender_counts": [
        0,
        0,
        0,
        0
      ],
      "frames": [
        {
          "viewport": "desktop",
          "selectors": []
        },
        {
          "viewport": "phone",
          "selectors": []
        },
        {
          "viewport": "ipad-mini",
          "selectors": []
        },
        {
          "viewport": "ipad",
          "selectors": []
        }
      ],
      "route_inventory": [],
      "network_mock_count": 3,
      "network_mock_hit_count": 22,
      "dialog_count": 0,
      "dialog_accept_count": 0,
      "dialog_dismiss_count": 0
    }
  }
}