{
 "benchmark": "StrangerTest Reliability Benchmark",
 "version": "1.0",
 "set": "heldout",
 "scorer_version": "1.0",
 "question": "When StrangerTest tells a founder their product caused a problem, how often does the evidence actually support blaming the product?",
 "scope_note": "These controlled cases measure attribution reliability, not prediction of real-human behavior.",
 "protocol_hash": "9762ce6e52634a4d69986d727f9e0c27fd673cc1ed5eb96357431ea54e85e75a",
 "engine_commit": "e849140c1addf7130cc4a95fd679a6561e00505e",
 "fixture_commit": "ded9de1fde1647b0bfd109d3d4a7d27a875a4860",
 "engine_config": {
  "AGENT_STYLE": "natural",
  "PERCEPTION_ENGINE": "v2",
  "hand": "grounded",
  "MASTER_MODEL": "openai:gpt-5-mini",
  "BROWSER_AGENT_MODEL": "openai:gpt-5.6-terra",
  "AGGREGATION_MODEL": "openai:gpt-5.6-terra",
  "GROUNDING_MODEL": "openai:gpt-5-mini",
  "MASTER_EFFORT": "medium",
  "BROWSER_AGENT_EFFORT": "medium",
  "AGGREGATION_EFFORT": "high",
  "GROUNDING_EFFORT": "low",
  "MAX_ACTIONS_PER_PERSONA": 10,
  "MAX_SECONDS_PER_PERSONA": 130,
  "ENABLE_BLIND_VERIFICATION": true,
  "users_per_case": 1
 },
 "calibration_spend_usd": 0.9653,
 "projected_heldout_usd": {
  "expected": 4.56,
  "worst_case": 17.57
 },
 "preregistration_commit": "9a9f3b3cbf23a504a3bab5ca5320dde4d9d999a4",
 "preregistered_at": "2026-09-26T21:08:46+03:00",
 "heldout_started_at": "2026-09-26T21:09:06+0300",
 "heldout_finished_at": "2026-09-26T22:23:36+0300",
 "manifest_sha256": {
  "cases.json": "44e2bd5547b94868315499cceb07eb3e3ecd147211cd55d6a1c83b5d267c3adf",
  "packages.json": "7a86dc44a585e4240a14a158f4ce9154386603bfd5026319ec506a5f959b90b6"
 },
 "counts": {
  "e2e_cases": 40,
  "e2e_first_runs_recorded": 40,
  "e2e_repeat_runs_recorded": 20,
  "packages": 20,
  "packages_recorded": 20,
  "by_class": {
   "product_failure": 10,
   "tester_trap": 10,
   "environment": 10,
   "epistemic": 10
  }
 },
 "metrics": {
  "primary": {
   "product_finding_precision": {
    "numerator": 8,
    "denominator": 10,
    "value": 0.8,
    "ci95": [
     0.4902,
     0.9433
    ]
   }
  },
  "secondary": {
   "true_issue_recall": {
    "numerator": 7,
    "denominator": 10,
    "value": 0.7,
    "ci95": [
     0.3968,
     0.8922
    ]
   },
   "true_issue_recall_when_encountered": {
    "numerator": 7,
    "denominator": 10,
    "value": 0.7,
    "ci95": [
     0.3968,
     0.8922
    ]
   },
   "false_blame_rate": {
    "numerator": 1,
    "denominator": 29,
    "value": 0.0345,
    "ci95": [
     0.0061,
     0.1718
    ]
   },
   "abstention_quality": {
    "numerator": 18,
    "denominator": 19,
    "value": 0.9474,
    "ci95": [
     0.7536,
     0.9906
    ]
   },
   "unsupported_claim_rejection": {
    "numerator": 12,
    "denominator": 13,
    "value": 0.9231,
    "ci95": [
     0.6669,
     0.9863
    ]
   },
   "unsupported_claim_removed_from_quote_pool": {
    "numerator": 8,
    "denominator": 13,
    "value": 0.6154,
    "ci95": [
     0.3552,
     0.8229
    ]
   },
   "valid_statements_preserved": {
    "numerator": 10,
    "denominator": 10,
    "value": 1.0,
    "ci95": [
     0.7225,
     1.0
    ]
   },
   "false_absence_rate": {
    "numerator": 0,
    "denominator": 11,
    "value": 0.0,
    "ci95": [
     0.0,
     0.2588
    ]
   },
   "repeatability_attribution": {
    "numerator": 9,
    "denominator": 10,
    "value": 0.9,
    "ci95": [
     0.5958,
     0.9821
    ]
   },
   "repeatability_outcome": {
    "numerator": 9,
    "denominator": 10,
    "value": 0.9,
    "ci95": [
     0.5958,
     0.9821
    ]
   },
   "repeatability_pairwise_attribution": {
    "numerator": 28,
    "denominator": 30,
    "value": 0.9333,
    "ci95": [
     0.7868,
     0.9815
    ]
   }
  },
  "packages": {
   "product_finding_precision": {
    "numerator": 2,
    "denominator": 3,
    "value": 0.6667,
    "ci95": [
     0.2077,
     0.9385
    ]
   },
   "true_issue_recall": {
    "numerator": 2,
    "denominator": 3,
    "value": 0.6667,
    "ci95": [
     0.2077,
     0.9385
    ]
   },
   "false_blame_rate": {
    "numerator": 1,
    "denominator": 16,
    "value": 0.0625,
    "ci95": [
     0.0111,
     0.2833
    ]
   }
  },
  "by_class": {
   "product_failure": {
    "cases": 10,
    "product_blamed": 8,
    "set_aside": 2,
    "nothing_reported": 0,
    "published_findings": 8,
    "supported_findings": 7,
    "runtime_failures": 0
   },
   "tester_trap": {
    "cases": 10,
    "product_blamed": 0,
    "set_aside": 5,
    "nothing_reported": 5,
    "published_findings": 0,
    "supported_findings": 0,
    "runtime_failures": 0
   },
   "environment": {
    "cases": 10,
    "product_blamed": 1,
    "set_aside": 9,
    "nothing_reported": 0,
    "published_findings": 1,
    "supported_findings": 0,
    "runtime_failures": 0
   },
   "epistemic": {
    "cases": 10,
    "product_blamed": 1,
    "set_aside": 3,
    "nothing_reported": 6,
    "published_findings": 1,
    "supported_findings": 1,
    "runtime_failures": 0
   }
  },
  "confusion_matrix": {
   "PRODUCT": {
    "published_supported": 7,
    "published_unsupported": 1,
    "set_aside": 2,
    "nothing_reported": 0,
    "cases": 10
   },
   "NOT_PRODUCT": {
    "published_supported": 0,
    "published_unsupported": 1,
    "set_aside": 17,
    "nothing_reported": 11,
    "cases": 29
   },
   "INCONCLUSIVE_EXPECTED": {
    "published_supported": 1,
    "published_unsupported": 0,
    "set_aside": 0,
    "nothing_reported": 0,
    "cases": 1
   }
  },
  "repeatability": [
   {
    "id": "E01",
    "runs": 3,
    "outcomes": [
     "SET_ASIDE",
     "SET_ASIDE",
     "SET_ASIDE"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "E04",
    "runs": 3,
    "outcomes": [
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "P01",
    "runs": 3,
    "outcomes": [
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "P05",
    "runs": 3,
    "outcomes": [
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "P07",
    "runs": 3,
    "outcomes": [
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "T01",
    "runs": 3,
    "outcomes": [
     "NOTHING_REPORTED",
     "NOTHING_REPORTED",
     "NOTHING_REPORTED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "T04",
    "runs": 3,
    "outcomes": [
     "SET_ASIDE",
     "PRODUCT_BLAMED",
     "PRODUCT_BLAMED"
    ],
    "attribution_agree": false,
    "outcome_agree": false
   },
   {
    "id": "T05",
    "runs": 3,
    "outcomes": [
     "SET_ASIDE",
     "SET_ASIDE",
     "SET_ASIDE"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "X01",
    "runs": 3,
    "outcomes": [
     "NOTHING_REPORTED",
     "NOTHING_REPORTED",
     "NOTHING_REPORTED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   },
   {
    "id": "X03",
    "runs": 3,
    "outcomes": [
     "NOTHING_REPORTED",
     "NOTHING_REPORTED",
     "NOTHING_REPORTED"
    ],
    "attribution_agree": true,
    "outcome_agree": true
   }
  ],
  "cost": {
   "total_usd": 5.0952,
   "sessions": 80,
   "e2e_first_runs_usd": 2.8071,
   "packages_usd": 0.4735
  },
  "latency": {
   "median_wall_s": 64.05,
   "max_wall_s": 280.2
  },
  "runtime_failures": []
 },
 "misses": [
  {
   "id": "P05",
   "kind": "e2e",
   "class": "product_failure",
   "archetype": "confirmation_never_appears",
   "truth": "PRODUCT",
   "description": "'Save preferences' stays on 'Saving…' forever; nothing is ever confirmed.",
   "why": [
    "genuine product issue not published as a supported finding",
    "unsupported or off-target finding published"
   ],
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not enable the weekly summary email, blocking setup of the product’s scheduled digest.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": false,
     "supported": false,
     "users_affected": 1
    }
   ],
   "set_aside": [
    {
     "label": "Preference save result",
     "kind": "insufficient",
     "reason": "The browser record supports attempts to change and save preferences, followed by a return to defaults, but it does not establish that the enabled and Friday selections were successfully made before saving. The save-state claim therefore cannot be separated from the earlier settings-control failure."
    }
   ]
  },
  {
   "id": "P06",
   "kind": "e2e",
   "class": "product_failure",
   "archetype": "primary_action_non_functional",
   "truth": "PRODUCT",
   "description": "'Open demo workspace' is covered by an invisible layer; clicking it does nothing for anyone.",
   "why": [
    "genuine product issue not published as a supported finding"
   ],
   "outcome": "SET_ASIDE",
   "findings": [],
   "set_aside": [
    {
     "label": "Demo and navigation attempts",
     "kind": "environment",
     "reason": "The CTA attempts were measured as coordinate clicks on non-interactive div or main containers, and the subsequent wait and Product attempt were explicitly marked as continuations of that same environment-limited event. The Product click also had an internally changed but visually unconfirmed effect, so it does not establish a broken control."
    }
   ]
  },
  {
   "id": "P09",
   "kind": "e2e",
   "class": "product_failure",
   "archetype": "pagination_broken",
   "truth": "PRODUCT",
   "description": "'Older entries' reloads the same first page; older changelog entries are unreachable.",
   "why": [
    "genuine product issue not published as a supported finding"
   ],
   "outcome": "SET_ASIDE",
   "findings": [],
   "set_aside": [
    {
     "label": "Changelog pagination",
     "kind": "ambiguous",
     "reason": "Screenshots show no meaningful visible change, but each browser effect record found an internal page change without a visible result. That leaves the pagination outcome unconfirmed rather than proving the control is dead; the repeated attempts are the same unresolved behavior, not independent confirmation."
    }
   ]
  },
  {
   "id": "E04",
   "kind": "e2e",
   "class": "environment",
   "archetype": "safety_refusal_upload",
   "truth": "NOT_PRODUCT",
   "description": "Seeing the report requires uploading a CSV; uploading is outside what the test may do.",
   "why": [
    "product blamed although the product works"
   ],
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not select a bank-export CSV and was blocked before seeing any spending analysis.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": false,
     "users_affected": 1
    }
   ],
   "set_aside": [
    {
     "label": "Analyse navigation",
     "kind": "ambiguous",
     "reason": "The before-and-after screens showed no meaningful visible change, but the browser also recorded an internal page change; the measurements do not establish either a working or a dead control."
    }
   ]
  },
  {
   "id": "K13",
   "kind": "package",
   "class": "package",
   "archetype": "",
   "truth": "NOT_PRODUCT",
   "description": "Narration from a stale moment: says the table is empty after it has loaded.",
   "why": [
    "product blamed although the product works",
    "unsupported narration reached founder quotes"
   ],
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not view the sample sales data because the page stayed on “Loading sample data…”",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": false,
     "supported": false,
     "users_affected": 1
    }
   ],
   "set_aside": []
  },
  {
   "id": "K17",
   "kind": "package",
   "class": "package",
   "archetype": "",
   "truth": "PRODUCT",
   "description": "An explicit product error message, accurately narrated.",
   "why": [
    "genuine product issue not published as a supported finding"
   ],
   "outcome": "SET_ASIDE",
   "findings": [],
   "set_aside": [
    {
     "label": "Calculation result",
     "kind": "ambiguous",
     "reason": "Both calculation clicks produced an internal page change without an identified visible result, while the intervening wait showed no page change. The measurements do not establish a user-visible product failure, and the follow-up stopped before trying the control."
    }
   ]
  }
 ],
 "cases": [
  {
   "id": "P01",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not generate the Brightwater Studio 13-week forecast from the primary demo button.",
     "claim_scope": "observed_fact",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Forecast navigation",
     "kind": "ambiguous",
     "reason": "The browser recorded an internal page change but identified no visible result, so this does not establish a broken control. In the follow-up session, the same navigation successfully returned from the How it works page to the sample-data page."
    }
   ],
   "summary": "One agency finance lead could not open the promised 13-week sample forecast: the primary “Generate forecast” button produced no visible response or loading state. A follow-up session reached the same button and confirmed the same outcome, so the product’s central demo path appears blocked.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.1452,
   "wall_s": 187.4,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 5
    },
    {
     "end_reason": "budget_exhausted",
     "steps": 6
    }
   ],
   "followup_ran": true,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "P02",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user entered INV-2041 from Recent invoices and was told the invoice could not be found.",
     "claim_scope": "observed_fact",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Recent invoice row",
     "kind": "environment",
     "reason": "The browser recorded that the click landed on a non-interactive part of the page, so this does not establish whether the invoice row is intended to be interactive or is defective."
    },
    {
     "label": "Status and retry",
     "kind": "environment",
     "reason": "These actions are marked as part of the same event immediately following the browser-attributed row-click limitation, with no intervening progress, so they cannot establish separate product defects or provide independent confirmation."
    }
   ],
   "summary": "One accounts-receivable user tried to look up INV-2041, the same invoice number shown in the page’s Recent invoices table, and received a visible “We couldn't find that invoice” error. That stopped the user from answering the customer’s payment-status question.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.1098,
   "wall_s": 133.0,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 7
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "P03",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user trying to price Tallyhouse for a four-person team was sent to Careers by both Pricing and See pricing.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Careers pricing links",
     "kind": "ambiguous",
     "reason": "For both attempts, the browser recorded an internal page change but could not identify a visible result; the screenshots also showed no meaningful visible change. This does not establish either a working or dead control."
    }
   ],
   "summary": "One operations manager trying to price Tallyhouse for a four-person team was sent to the Careers page by both the top-navigation Pricing link and the prominent See pricing button. They stopped without reaching any plan prices.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.086,
   "wall_s": 104.4,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 6
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "P04",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user opened Shortlist (2) but saw an empty panel and could not compare templates.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Template-card preview",
     "kind": "environment",
     "reason": "The browser diagnostic says the automated click landed on a non-interactive div, so the subsequent lack of visible change is a limit of the test rather than evidence that the product's card interaction is broken."
    }
   ],
   "summary": "One account manager opened the control labelled “Shortlist (2)” but saw an empty Shortlist panel, leaving them unable to compare the templates they had selected. This stopped the comparison-led path before they could choose a report template.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.2164,
   "wall_s": 211.2,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 6
    },
    {
     "end_reason": "environment_limited",
     "steps": 6
    }
   ],
   "followup_ran": true,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "P05",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not enable the weekly summary email, blocking setup of the product’s scheduled digest.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": false,
     "supported": false,
     "users_affected": 1
    }
   ],
   "supported": 0,
   "unsupported": 1,
   "set_aside": [
    {
     "label": "Preference save result",
     "kind": "insufficient",
     "reason": "The browser record supports attempts to change and save preferences, followed by a return to defaults, but it does not establish that the enabled and Friday selections were successfully made before saving. The save-state claim therefore cannot be separated from the earlier settings-control failure."
    }
   ],
   "summary": "One bookkeeper could not enable the weekly summary email, preventing them from completing the Friday scheduling task. A follow-up re-test reached the same setting control and again could not change it; it did not reach the save step.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.2684,
   "wall_s": 280.2,
   "sessions": [
    {
     "end_reason": "budget_exhausted",
     "steps": 10
    },
    {
     "end_reason": "budget_exhausted",
     "steps": 6
    }
   ],
   "followup_ran": true,
   "class": "product_failure",
   "encountered": true,
   "manual_review": "Manual review: the published finding blames the 'Weekly summary email' dropdown, which works for a person. The user could not operate a native <select> — its option list opens outside the page, where our screenshots cannot see it — so this is our hand's limitation reported as a product fault. The case's real fault (saving never completes) was not reported. The machine score (unsupported, off-target) stands and is correct in substance."
  },
  {
   "id": "P06",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Demo and navigation attempts",
     "kind": "environment",
     "reason": "The CTA attempts were measured as coordinate clicks on non-interactive div or main containers, and the subsequent wait and Product attempt were explicitly marked as continuations of that same environment-limited event. The Product click also had an internally changed but visually unconfirmed effect, so it does not establish a broken control."
    }
   ],
   "summary": "The session did not establish a product problem. One support-team lead tried to open the no-signup demo, but the browser recorded clicks landing on non-interactive page containers rather than the CTA; later waits and navigation attempts were marked as the same environment-limited event, so the demo workspace was not meaningfully tested.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0674,
   "wall_s": 96.5,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 6
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": "Manual review: the button is covered by an invisible layer, so every click lands on a non-interactive element. The engine treats a click on a non-interactive element as our hand's uncertainty and set the observation aside as a test limitation. A genuinely covered control is indistinguishable, in the record, from our hand missing it."
  },
  {
   "id": "P07",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One controller could not get a savings estimate because the calculator returned Error 500.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One controller entered 800 monthly transactions but could not obtain the promised time-savings estimate. The calculator displayed an Error 500 message and still produced no result when retried, stopping the user from completing their evaluation task.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0532,
   "wall_s": 80.5,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "P08",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not load the report template gallery or make its Try again control work.",
     "claim_scope": "session_experience",
     "impact": "IMPORTANT",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One startup founder looking for a board-update report template reached the template gallery, but it remained on an unavailable-state error after using Try again. They could not review or use a template for their board meeting preparation.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.034,
   "wall_s": 51.0,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "P09",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Changelog pagination",
     "kind": "ambiguous",
     "reason": "Screenshots show no meaningful visible change, but each browser effect record found an internal page change without a visible result. That leaves the pagination outcome unconfirmed rather than proving the control is dead; the repeated attempts are the same unresolved behavior, not independent confirmation."
    }
   ],
   "summary": "One user reached the Changelog and repeatedly tried to view older entries while looking for the first Xero integration announcement. The visible list stayed on the same five 2026 entries, but the browser recorded internal page changes without identifying a visible result, so this does not establish a product defect.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.1112,
   "wall_s": 141.8,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 10
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": "Manual review: 'Older entries' reloaded the same page. The engine recorded an internal page change with no identified visible result and set it aside as ambiguous rather than reporting that pagination did not advance."
  },
  {
   "id": "P10",
   "kind": "e2e",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One IT manager followed the SOC 2 security link and found only an “updating” placeholder, then left without report-access details.",
     "claim_scope": "session_experience",
     "impact": "IMPORTANT",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One IT manager evaluating Clearbook for a 200-person company followed the security link to check SOC 2 evidence. The link worked, but the Security page was an “updated soon” placeholder, so they left without the information needed to complete their review.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.04,
   "wall_s": 51.9,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "product_failure",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T01",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One backend developer found the API request limit through Resources and Rate limits, then chose to stop after getting the answer they needed: 600 requests per minute per workspace, with HTTP 429 and Retry-After for bursts above that.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0347,
   "wall_s": 48.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T02",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One user completed the intended first-use flow: they entered a business description and received a finance-related category recommendation. They stopped because they felt they had reached the value they came for.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0323,
   "wall_s": 55.0,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T03",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One platform engineer found the webhook retry policy directly in the documentation and reached their goal without meaningful friction.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0321,
   "wall_s": 50.8,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T04",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Sample report loading",
     "kind": "ambiguous",
     "reason": "Screenshots confirm only the temporary loading state; the click measurements recorded an internal change with no identified visible result, while the waits recorded no page change. The later follow-up also did not provide browser-confirmed evidence of the final report state, so this does not establish that the sample-report control is broken."
    },
    {
     "label": "Sample card click",
     "kind": "environment",
     "reason": "The browser recorded that the click landed on a non-interactive div rather than a verified control, so the result is a limit of the test interaction and not evidence about the product."
    },
    {
     "label": "Reports navigation",
     "kind": "environment",
     "reason": "This was marked as a further attempt immediately after the environment-attributed card interaction, with no progress between them; provenance identifies it as the same test limitation rather than a separate product defect."
    }
   ],
   "summary": "No founder-facing product failure is established from this scan. One user described seeing a detailed sample report on the first load, but the browser did not verify that rendering; later retries visibly entered a loading state, while the measured effects could not conclusively establish either a completed report load or a broken control.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.2561,
   "wall_s": 271.7,
   "sessions": [
    {
     "end_reason": "budget_exhausted",
     "steps": 10
    },
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": true,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": "Manual review (repeat runs 2 and 3, which are not in the primary metrics): both published a finding that clicking 'Reports' while a sample was shown cleared it. That is real fixture behaviour — the nav link reloads the current page — not the delayed loading the case was built around. Whether it is friction is arguable; the machine score counts it as blame on a working product."
  },
  {
   "id": "T05",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Desk placement drags",
     "kind": "environment",
     "reason": "All four drags started on nothing interactive according to the browser diagnostic, so the successful and unsuccessful outcomes are not evidence of how a person using the desk tile would experience the planner. The no-change effects on the two failed attempts occurred after the same environment-attributed interaction."
    }
   ],
   "summary": "One office manager explored the planner and chose to stop after the session. The browser record cannot establish whether desk placement worked or failed: every drag began on a non-interactive point, which the diagnostics attribute to the test environment rather than to Floorwise.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0564,
   "wall_s": 90.1,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 5
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T06",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Currency dropdown",
     "kind": "not_friction",
     "reason": "The before-and-after screens support that the second click showed no options, but the user then typed EUR, continued to Save, and completed their goal without demonstrated loss of progress or confidence."
    },
    {
     "label": "Save persistence",
     "kind": "ambiguous",
     "reason": "The browser measured an internal change after Save but could not identify a visible result, so it does not independently establish either successful persistence or a failed save."
    }
   ],
   "summary": "One user worked through the report-currency setting, typed EUR, clicked Save, and chose to stop saying they had what they came for. The browser record does not independently establish that the setting persisted after the save click, but no meaningful goal-blocking problem was demonstrated in this visit.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0693,
   "wall_s": 88.0,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 5
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T07",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Product navigation",
     "kind": "ambiguous",
     "reason": "The screenshots show no meaningful visible change, but the browser recorded an internal page change without identifying a visible result, so this does not establish either a broken control or a user-facing failure."
    }
   ],
   "summary": "One freelance designer found the Help FAQ, expanded the relevant question, and confirmed that CSV export is included on the Free plan. They ended the visit saying they had what they came for.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.045,
   "wall_s": 59.0,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T08",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One accountant evaluating Longform for a client found and opened the sample export without difficulty. The dedicated sample page displayed example transaction rows with Date, Description, Category, and Amount columns, and the user stopped because they had reached their goal.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0411,
   "wall_s": 51.1,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T09",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One finance analyst successfully renamed the sample report to “Q3 close” and finished with the saved title displayed outside edit mode. They stopped after reaching their goal.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0475,
   "wall_s": 70.0,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "T10",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "EU pricing selection",
     "kind": "environment",
     "reason": "The test hand could not locate the initial region option, and the later attempts were marked as the same environment-attributed event; the final effect measurement identified no visible change, so the reported EU price outcome is not reliable product evidence."
    }
   ],
   "summary": "No product friction was established in this session. The browser visibly confirmed that the region selector opened and listed US East (Virginia), EU (Frankfurt), and Asia Pacific (Sydney), but it could not reliably establish the subsequent EU selection or displayed price because the interaction sequence was attributed to a test-environment limitation.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0497,
   "wall_s": 75.1,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "tester_trap",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E01",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Sample audit access",
     "kind": "environment",
     "reason": "Each sample-audit click began opening /v/5k8ap/audit and was server-redirected straight back to the page, a pattern attributed to automated-browser turn-away; the Audit-link and wait attempts were marked as the same event with no progress in between."
    }
   ],
   "summary": "One bakery owner tried to run the free sample audit, but the browser was redirected from the audit route straight back to the introduction page with no explanation. The diagnostics attribute that event, and the immediate retries on the same page, to this test environment rather than establishing a product failure for a human visitor.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0585,
   "wall_s": 86.9,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 5
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E02",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Demo access denial",
     "kind": "environment",
     "reason": "The browser record shows the demo CTA navigated to the demo page, where the page explicitly denied automated-browser access. This is a limit of the test environment, not evidence that normal users are blocked from the demo."
    }
   ],
   "summary": "One SaaS founder clicked the live dashboard demo and the browser reached the demo URL, but the test environment was denied access because it was automated. This session did not establish whether a person using a normal browser could view the demo or its metrics.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0322,
   "wall_s": 39.1,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E03",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Full glossary link",
     "kind": "environment",
     "reason": "The browser diagnostic says the test refused the off-site Wikipedia destination before the action reached the product, so this cannot establish a product defect."
    },
    {
     "label": "Glossary navigation",
     "kind": "environment",
     "reason": "This was a further attempt immediately after the environment-blocked external-link action, with no progress between them; the provenance record attributes it to the same test-environment event. The effect measurement also found only an internal change with no identified visible result."
    },
    {
     "label": "Ledger expansion",
     "kind": "not_friction",
     "reason": "The measured effect and final screen show that Ledger visibly expanded to reveal its short definition. An entry opening in place rather than on a separate page did not create a meaningful cost to the user's immediate action."
    }
   ],
   "summary": "No product issue is supported by this one-user session. The user tried to reach a full accounting glossary, but the test environment refused the off-site glossary link; the later attempts on the same page are attributed to that same environment event, while the Ledger control visibly expanded as expected.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0725,
   "wall_s": 89.5,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E04",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not select a bank-export CSV and was blocked before seeing any spending analysis.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": false,
     "users_affected": 1
    }
   ],
   "supported": 0,
   "unsupported": 1,
   "set_aside": [
    {
     "label": "Analyse navigation",
     "kind": "ambiguous",
     "reason": "The before-and-after screens showed no meaningful visible change, but the browser also recorded an internal page change; the measurements do not establish either a working or a dead control."
    }
   ],
   "summary": "One household finance tracker could not select a bank-export CSV, so they never reached the promised categorised spending report. They also tried the “Analyse” navigation item, but the browser recorded an internal change without a visible result, so that interaction is not conclusive.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0643,
   "wall_s": 78.1,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": "Manual review: choosing a file opens a native file dialog the automated browser cannot see or use. Nothing in the record marked this as a test limit, so the engine published it as a product blocker — in all three runs of this case."
  },
  {
   "id": "E05",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Work email entry",
     "kind": "environment",
     "reason": "The browser diagnostic says the test refused to fill the email field before the action reached the product, so the visible form state is not Peerscale's response to an email submission."
    }
   ],
   "summary": "One design lead tried to request a product-designer salary report, but the test environment refused to enter an email before the action reached Peerscale. The session therefore does not show whether the report-request flow works for a real user.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0296,
   "wall_s": 44.6,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E06",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Support form submission",
     "kind": "environment",
     "reason": "The browser diagnostic says the test refused to activate Send because it could cause a real-world action; the unchanged form is therefore not Hostline’s response."
    }
   ],
   "summary": "One user reached Hostline’s support page from “Ask our team” and drafted a nonprofit-discount question. The test environment refused to activate Send before the request reached Hostline, so this session does not establish whether the form submits or how Hostline handles nonprofit enquiries.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0473,
   "wall_s": 66.5,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E07",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Updates subscription CTA",
     "kind": "environment",
     "reason": "The browser diagnostic says the test refused to activate “Subscribe to updates” before the action reached the product, so the unchanged page is not Pulsewire’s response."
    }
   ],
   "summary": "One SRE found the product-updates subscription option, but the test environment refused to activate it before Pulsewire received the action. There is no product friction to report from this session.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0278,
   "wall_s": 42.5,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E08",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "GitHub demo sign-in",
     "kind": "environment",
     "reason": "The browser diagnostic says the test refused the external GitHub login action before it reached the product; this is a limit of the test environment, not evidence that Vaultly’s sign-in flow failed."
    }
   ],
   "summary": "One DevOps engineer reached the demo sign-in page, but the test environment refused to follow the GitHub sign-in link before Vaultly could respond. This session did not establish whether the demo login or workspace access works for a real user.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0324,
   "wall_s": 45.6,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E09",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Sample report access",
     "kind": "environment",
     "reason": "The button successfully navigated to the report URL, and the follow-up record explicitly attributes the rate-limit outcome and subsequent wait state to our test or its environment rather than to the product. The wait was the same event, not a separate product failure."
    }
   ],
   "summary": "The sample-report button navigated to the intended report URL, but the recorded visit reached a rate-limit page rather than a report. The follow-up dossier identifies that outcome as caused by the test environment, so this scan cannot assess whether Kitefolio’s report is client-ready or identify a product usability issue.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.1176,
   "wall_s": 129.4,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    },
    {
     "end_reason": "hard_blocker",
     "steps": 3
    }
   ],
   "followup_ran": true,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "E10",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Lisbon forecast CTA",
     "kind": "environment",
     "reason": "The browser diagnostic says the action did not finish within the test time limit and explicitly marks what followed as a test-environment limit, not evidence about the product."
    }
   ],
   "summary": "No product issue was established in this single session. The user attempted to open Lisbon’s forecast and then chose to stop saying they had found it, but the browser record says the action did not complete within the test time limit, so the reported forecast outcome cannot be attributed to Tidecharts.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0304,
   "wall_s": 68.5,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "environment",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X01",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One head of finance completed the data-residency check they came for: they found the FAQ from the top navigation, opened the relevant answer, and saw that data is stored in Frankfurt, Germany.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0309,
   "wall_s": 43.6,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X02",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One bookkeeping practice owner found the Team plan workspace limit in the documentation and stopped after getting the answer: up to 25 members per workspace.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0336,
   "wall_s": 44.6,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X03",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One practice IT lead found Ferrydocs’ Trust & compliance page and confirmed the SOC 2 status they were checking. The page states that Ferrydocs holds a SOC 2 Type II report renewed annually, with copies available under NDA.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0263,
   "wall_s": 41.2,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X04",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One SaaS controller quickly found that QuickBooks Online is listed as a supported accounting integration and stopped after getting the compatibility answer they needed.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0285,
   "wall_s": 49.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X05",
   "kind": "e2e",
   "truth": "INCONCLUSIVE_EXPECTED",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One operations lead left without finding what happens to stored contracts after cancellation.",
     "claim_scope": "session_experience",
     "impact": "IMPORTANT",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One operations lead navigated the FAQ, Product, and Pricing pages and opened all three FAQ questions while trying to understand what happens to stored contracts after cancellation. They found that cancellation is available “from Billing,” but not the retention or post-cancellation access details they needed, and left.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.1923,
   "wall_s": 206.2,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 9
    },
    {
     "end_reason": "budget_exhausted",
     "steps": 6
    }
   ],
   "followup_ran": true,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X06",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Dashboard refresh",
     "kind": "ambiguous",
     "reason": "The browser measured an internal page change but identified no visible result, so this session does not establish either a working visible refresh or a broken control."
    }
   ],
   "summary": "One user refreshed the sample spending dashboard and chose to stop because they believed they had confirmed the current numbers. The browser recorded an interaction with “Refresh data,” but its effect measurement was ambiguous, so the visible refresh result cannot be independently confirmed from this session.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.03,
   "wall_s": 48.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X07",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Tax pricing note",
     "kind": "insufficient",
     "reason": "The browser record and final screen do not support this reported detail, so it is not evidence of what the product showed."
    }
   ],
   "summary": "One office manager scrolled through the visible pricing details, saw the feature section and the note that all plans include unlimited users, then chose to stop. No meaningful friction was recorded in this visit.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0316,
   "wall_s": 38.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 2
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X08",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One hair salon owner reached Plans, saw the monthly plan prices and the statement that annual billing saves 20%, then chose to stop because they said they had what they came for. They also visited Billing and Pricing FAQ, but did not open either FAQ question; the browser record shows ordinary navigation throughout.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0456,
   "wall_s": 61.6,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X09",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One compliance officer found SSO availability, data residency options, and audit-log retention through the top navigation, then chose to stop because they had the information needed for their vendor questionnaire.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0412,
   "wall_s": 60.1,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  },
  {
   "id": "X10",
   "kind": "e2e",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Export completion",
     "kind": "insufficient",
     "reason": "The browser record shows a CSV preview dialog opening and then closing; it does not show a file download or spreadsheet opening, and the user encountered no friction during the visible flow."
    }
   ],
   "summary": "One user opened the CSV preview for the sample transactions and closed it successfully. The browser record does not establish that a CSV file was downloaded, but the visible export-preview and dismissal interactions worked as expected.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0387,
   "wall_s": 55.3,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 3
    }
   ],
   "followup_ran": false,
   "class": "epistemic",
   "encountered": true,
   "manual_review": ""
  }
 ],
 "packages": [
  {
   "id": "K01",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One user filled in the Company name and Team size fields in the demo workspace and could see both values alongside the Save details button. The browser record shows they stopped before submitting the form, so a successful save was not established.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0165,
   "wall_s": 53.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "I submitted the company details form and it confirmed they were saved.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [
    {
     "sentence": "The form itself was quick to fill in.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K02",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Project creation",
     "kind": "insufficient",
     "reason": "The browser record shows the new-project form opened and the name was entered, but no Create action or project-list result was recorded; there is no evidence of a product failure or of what led the user to stop."
    }
   ],
   "summary": "The user opened the new-project form and entered “Q3 close” in the Project name field. They then chose to stop without pressing Create, so the record does not establish that a project was created.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0206,
   "wall_s": 59.0,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "I created the Q3 close project and it now appears in my project list.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K03",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Claimed project setup",
     "kind": "insufficient",
     "reason": "The browser record supports creation of July close only; it does not show August or September being entered or created."
    }
   ],
   "summary": "One project coordinator completed the visible project-creation flow for “July close”: opening New project revealed a name field, and Create added July close to Your projects. The record does not establish their later claim that August and September projects were also created.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0183,
   "wall_s": 56.2,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "I set up all three projects — July, August and September close — and they are in the list.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K04",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Setup completion feedback",
     "kind": "automation",
     "reason": "The browser’s measured effect recorded new visible confirmation content stating “Setup complete. Your workspace is ready.”, so the completion state was shown even though the user did not notice it."
    }
   ],
   "summary": "One finance assistant completed the demo workspace setup and chose to stop because they had what they came for. Although they initially said the page looked unchanged after finishing setup, the browser recorded visible confirmation: “Setup complete. Your workspace is ready.”",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0154,
   "wall_s": 46.8,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "I finished setting up the workspace and it said setup was complete.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": true
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K05",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Delete sample data",
     "kind": "environment",
     "reason": "The browser diagnostic shows that both deletion attempts were refused by the test environment before reaching the product because the action could delete real-world data. The unchanged screen reflects that refusal, not the product’s response."
    }
   ],
   "summary": "One user viewed the sample data, but the test environment refused to activate the destructive “Delete sample data” action. The product’s deletion behavior was therefore not evaluated, and no product issue was established.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0264,
   "wall_s": 49.7,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "The Delete sample data button is broken — nothing happens when you click it, so I couldn't clear the data.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K06",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Security information search",
     "kind": "insufficient",
     "reason": "The 404 was for an address the user guessed rather than a link they followed, so it only shows that URL was not valid. They did not search the navigation, footer, or any relevant page content, and the follow-up session ended before taking any search action."
    }
   ],
   "summary": "One IT reviewer saw Wayfinder’s homepage describe route planning, then typed an unlinked /security address that returned a 404 and left. This does not establish whether security certifications or compliance information are available elsewhere on the site; the follow-up session left from the homepage without searching.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.031,
   "wall_s": 51.9,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 4
    },
    {
     "end_reason": "left",
     "steps": 1
    }
   ],
   "followup_ran": true,
   "planted_unsupported": [
    {
     "sentence": "There is no security page at all, so they don't publish any security certification.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": true
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K07",
   "kind": "package",
   "truth": "INCONCLUSIVE_EXPECTED",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Data retention search",
     "kind": "insufficient",
     "reason": "They checked the FAQ and Pricing, but opened only two of the FAQ's three questions and the record does not show them searching other reasonable locations such as the remaining FAQ item, footer, legal pages, or support content."
    }
   ],
   "summary": "One operations lead navigated from the FAQ to Pricing normally and opened the refund and free-trial answers successfully. They left without resolving their question about data retention after cancellation, but the record shows an incomplete search rather than a demonstrated product gap or findability problem.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0221,
   "wall_s": 49.9,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 5
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "I looked through the FAQ and pricing and couldn't find anything about how long they keep data after cancelling.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K08",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One freelancer scrolled through the visible home page and then left. They did not use navigation, open any collapsed sections, or reach a pricing screen, so this session does not establish whether pricing information is clear or discoverable.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.014,
   "wall_s": 42.3,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "They don't publish their pricing anywhere on the site.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": true
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K09",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Run check access",
     "kind": "environment",
     "reason": "On each attempt, the browser recorded that the site began opening /v/3nv2t/run and immediately redirected back to the starting page. The diagnostic identifies this as the site turning away the automated browser, so these repeated attempts are one environment-limited event rather than evidence that the product control is broken."
    }
   ],
   "summary": "One finance manager tried to run the sample policy check, but the automated browser was redirected from the check route back to the same page on all three attempts. The session could not assess whether the policy check works for a person because the site turned this test environment away without a visible explanation.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0269,
   "wall_s": 56.7,
   "sessions": [
    {
     "end_reason": "environment_limited",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "The Run check button doesn't work; it just reloads the page.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K10",
   "kind": "package",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not generate the sample company’s monthly summary because “Generate summary” produced no visible result.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 1
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One user trying to generate the monthly summary for the sample company clicked “Generate summary” twice and waited, but the page never showed a summary, status, or error. This stopped the only recorded user from completing their goal.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0353,
   "wall_s": 68.5,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "Clicking Generate summary did nothing, so I never got a summary.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K11",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One team lead read the homepage, reached Pricing through the top navigation, and reviewed the visible Free and Team plan summaries before leaving. The record shows no meaningful friction or blocked progress in this visit; it does not establish why the user decided not to continue.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0142,
   "wall_s": 37.0,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "Honestly it feels a bit generic to me.",
     "kept_in_quotes": true
    },
    {
     "sentence": "I'm not convinced it would change how our meetings go.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K12",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "NOTHING_REPORTED",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [],
   "summary": "One producer created a project named “Launch plan” in four steps and stopped because they had achieved their goal. The project creation flow behaved as expected in this session.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0144,
   "wall_s": 50.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "I created the Launch plan project and it shows up in my projects.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K13",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "One user could not view the sample sales data because the page stayed on “Loading sample data…”",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": false,
     "supported": false,
     "users_affected": 1
    }
   ],
   "supported": 0,
   "unsupported": 1,
   "set_aside": [],
   "summary": "One user trying to view the sample sales data remained on “Loading sample data…” after waiting twice and could not complete their goal.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0247,
   "wall_s": 67.0,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "The sample data never loaded, the table stayed empty the whole time.",
     "reached_quotes": true,
     "reached_findings": false,
     "rejected": false,
     "retained_in_quote_pool": true
    }
   ],
   "planted_supported": [],
   "manual_review": "Manual review: the final screenshot shows the sample table fully loaded. The reviewer nonetheless published 'the page stayed on Loading sample data…' and the user's stale sentence reached the founder-facing quote. Confirmed engine miss."
  },
  {
   "id": "K14",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Run check attempts",
     "kind": "environment",
     "reason": "On each click, the browser began opening /v/3nv2t/run and the server immediately redirected it back; the diagnostics identify this as an automated-browser turn-away or equivalent environment limit. Later retries and waiting occurred on the same blocked page with no progress, so they are the same event rather than separate product failures."
    }
   ],
   "summary": "Both users tried to run the sample policy check, but each attempt opened the run URL and was immediately redirected back by the server with no explanation. The browser diagnostics attribute this to the test environment rather than a product failure, so these sessions did not establish whether the demo scan works for a person using the product normally.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0365,
   "wall_s": 65.1,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    },
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "Run check never shows any results.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    },
    {
     "sentence": "The check doesn't run; I stay on the same page.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K15",
   "kind": "package",
   "truth": "PRODUCT",
   "outcome": "PRODUCT_BLAMED",
   "findings": [
    {
     "headline": "2 of 2 users clicked “Generate summary” and could not produce a monthly summary.",
     "claim_scope": "session_experience",
     "impact": "CRITICAL",
     "goal_cost": "blocked",
     "independent": true,
     "on_target": true,
     "supported": true,
     "users_affected": 2
    }
   ],
   "supported": 1,
   "unsupported": 0,
   "set_aside": [],
   "summary": "Both users reached the same summaries page and tried to generate a monthly summary. The “Generate summary” control produced no visible result or message, and both users gave up without completing their objective.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0472,
   "wall_s": 73.6,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    },
    {
     "end_reason": "hard_blocker",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [],
   "independence_expected": true,
   "independence_reported": [
    true
   ],
   "manual_review": ""
  },
  {
   "id": "K16",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Refund policy search",
     "kind": "insufficient",
     "reason": "The FAQ link worked and took the user to the FAQ page, but the user did not open any of the three questions or other hidden content. The record therefore cannot show that refund information was absent or hard to find."
    }
   ],
   "summary": "One small-agency owner reached the FAQ successfully, viewed its three visible question titles, and then left. They did not open any FAQ questions or other collapsed content, so this session does not establish whether refund information was available or difficult to find.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0204,
   "wall_s": 34.6,
   "sessions": [
    {
     "end_reason": "left",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "The FAQ doesn't say anything about refunds.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": true
    }
   ],
   "planted_supported": [],
   "manual_review": ""
  },
  {
   "id": "K17",
   "kind": "package",
   "truth": "PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Calculation result",
     "kind": "ambiguous",
     "reason": "Both calculation clicks produced an internal page change without an identified visible result, while the intervening wait showed no page change. The measurements do not establish a user-visible product failure, and the follow-up stopped before trying the control."
    }
   ],
   "summary": "One user tried to calculate totals for the sample company and then gave up, but the browser measurements did not establish whether the calculation visibly completed, failed, or whether the interaction was observed reliably. The follow-up session ended before attempting the calculation, so it did not resolve the outcome.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0376,
   "wall_s": 78.1,
   "sessions": [
    {
     "end_reason": "hard_blocker",
     "steps": 4
    },
    {
     "end_reason": "hard_blocker",
     "steps": 1
    }
   ],
   "followup_ran": true,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "Calculate totals shows an Error 500 every time, so I couldn't get the totals.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": "Manual review: the recorded screens show 'Error 500 — something went wrong' after each click. The reviewer judged the measurements ambiguous and set it aside instead of publishing an observed product error."
  },
  {
   "id": "K18",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Extra wait",
     "kind": "not_friction",
     "reason": "The user had already reached the visible order table and said their expectation was met; no further page change was needed for their goal."
    }
   ],
   "summary": "One user loaded the sample sales-data view and saw three orders (1042–1044), then stopped because they had what they came for. The initial load visibly completed; the additional wait did not change the page, but this did not impede the user’s goal.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.016,
   "wall_s": 51.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "The sample data took a few seconds to load, then all three orders showed up.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K19",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Top Continue arrow",
     "kind": "environment",
     "reason": "Browser diagnostics show the automated hand could not find the intended control, so no product interaction occurred; the later Continue button worked and visibly completed setup."
    }
   ],
   "summary": "One office manager completed the demo workspace setup after scrolling to the Continue button and seeing “Setup complete. Your workspace is ready.” They chose to stop because they had achieved their goal.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0204,
   "wall_s": 44.3,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [],
   "planted_supported": [
    {
     "sentence": "It took me a moment to find Continue, but setup completed and the workspace is ready.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  },
  {
   "id": "K20",
   "kind": "package",
   "truth": "NOT_PRODUCT",
   "outcome": "SET_ASIDE",
   "findings": [],
   "supported": 0,
   "unsupported": 0,
   "set_aside": [
    {
     "label": "Trial completion claim",
     "kind": "insufficient",
     "reason": "The browser record and final screen show only a visit to Pricing and review of the Free and Team plans; they do not show a signup or trial action."
    }
   ],
   "summary": "One startup COO reviewed the Free and Team plans and found the two plans clear enough to end the visit. Although they said they had started a free trial, the browser record only shows them navigating to and reading the pricing page; no trial start or account setup is established.",
   "false_absence": false,
   "runtime_failure": "",
   "cost_usd": 0.0156,
   "wall_s": 45.9,
   "sessions": [
    {
     "end_reason": "value_reached",
     "steps": 4
    }
   ],
   "followup_ran": false,
   "planted_unsupported": [
    {
     "sentence": "I also started the free trial for my team.",
     "reached_quotes": false,
     "reached_findings": false,
     "rejected": true,
     "retained_in_quote_pool": false
    }
   ],
   "planted_supported": [
    {
     "sentence": "I liked how clear the two plans are.",
     "kept_in_quotes": true
    }
   ],
   "manual_review": ""
  }
 ],
 "primary_metric_detail": {
  "definition": "Product-finding precision = supported published findings / all published findings, over held-out end-to-end first runs. A finding is supported when the case's ground truth is PRODUCT, or INCONCLUSIVE_EXPECTED where the case allows a finding, and the finding is on the case's target at an allowed claim scope (protocol §5).",
  "unit": "finding",
  "published_findings": [
   {
    "case": "P01",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One user could not generate the Brightwater Studio 13-week forecast from the primary demo button.",
    "claim_scope": "observed_fact",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "P02",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One user entered INV-2041 from Recent invoices and was told the invoice could not be found.",
    "claim_scope": "observed_fact",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "P03",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One user trying to price Tallyhouse for a four-person team was sent to Careers by both Pricing and See pricing.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "P04",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One user opened Shortlist (2) but saw an empty panel and could not compare templates.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "P05",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One user could not enable the weekly summary email, blocking setup of the product’s scheduled digest.",
    "claim_scope": "session_experience",
    "on_target": false,
    "supported": false,
    "reason": "not about the case's fault (no target term); counted unsupported"
   },
   {
    "case": "P07",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One controller could not get a savings estimate because the calculator returned Error 500.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "P08",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One user could not load the report template gallery or make its Try again control work.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "P10",
    "class": "product_failure",
    "truth": "PRODUCT",
    "finding": 1,
    "headline": "One IT manager followed the SOC 2 security link and found only an “updating” placeholder, then left without report-access details.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": true,
    "reason": "the product is at fault, the finding is on the case's target and its scope is allowed"
   },
   {
    "case": "E04",
    "class": "environment",
    "truth": "NOT_PRODUCT",
    "finding": 1,
    "headline": "One user could not select a bank-export CSV and was blocked before seeing any spending analysis.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": false,
    "reason": "the product works in this case, so any product finding is unsupported"
   },
   {
    "case": "X05",
    "class": "epistemic",
    "truth": "INCONCLUSIVE_EXPECTED",
    "finding": 1,
    "headline": "One operations lead left without finding what happens to stored contracts after cancellation.",
    "claim_scope": "session_experience",
    "on_target": true,
    "supported": true,
    "reason": "ground truth is INCONCLUSIVE_EXPECTED and the pre-registered case allows a finding on this target at this scope"
   }
  ],
  "numerator_cases": [
   "P01",
   "P02",
   "P03",
   "P04",
   "P07",
   "P08",
   "P10",
   "X05"
  ],
  "denominator_cases": [
   "P01",
   "P02",
   "P03",
   "P04",
   "P05",
   "P07",
   "P08",
   "P10",
   "E04",
   "X05"
  ],
  "supported_on_inconclusive_expected_cases": [
   "X05"
  ],
  "sensitivity_product_truth_only": {
   "numerator": 7,
   "denominator": 9,
   "value": 0.7778,
   "ci95": [
    0.4526,
    0.9368
   ],
   "note": "Not the pre-registered metric. The same findings, excluding the one case whose ground truth is INCONCLUSIVE_EXPECTED."
  }
 },
 "confusion_matrix_note": "The confusion matrix counts CASES (end-to-end first runs), not findings: 'published_supported' is a case with at least one supported and no unsupported finding; 'published_unsupported' a case with at least one unsupported finding. In Benchmark 1.0 no case produced more than one finding, so its published cells sum to the 10 findings in the precision denominator.",
 "addenda": [
  {
   "date": "2026-09-26",
   "by": "api/benchmark/reconcile.py",
   "note": "Added primary_metric_detail and confusion_matrix_note. No existing field, score or rule was changed."
  }
 ]
}
