{
 "label": "live",
 "base": "https://trooids.com",
 "at": "2026-09-25T16:07:15Z",
 "passed": 13,
 "total": 13,
 "rows": [
  {
   "row": "no failing link on the homepage (HTTP)",
   "pass": true,
   "expected": "all 2xx/3xx, no x.com link",
   "observed": "ok"
  },
  {
   "row": "longest prose line <= 75ch on every page at 1440",
   "pass": true,
   "expected": "<= 75",
   "observed": {
    "/": 75,
    "/built": 73,
    "/knowledge/": 70,
    "/privacy": 74,
    "/terms": 74,
    "/workbench/": 74
   }
  },
  {
   "row": "hero copy column starts at the grid edge",
   "pass": true,
   "expected": "copy = grid = strip",
   "observed": {
    "copyLeft": 120,
    "gridLeft": 120,
    "stripLeft": 120,
    "cta": "Register your interest"
   }
  },
  {
   "row": "primary CTA label shortened",
   "pass": true,
   "expected": "Register your interest",
   "observed": "Register your interest"
  },
  {
   "row": "/knowledge/ canonical points at /knowledge/",
   "pass": true,
   "expected": "https://trooids.com/knowledge/",
   "observed": "https://trooids.com/knowledge/"
  },
  {
   "row": "form fieldset has no browser border and the legend \"I am\" is visible",
   "pass": true,
   "expected": "border 0px, legend visible",
   "observed": {
    "border": "0px",
    "legendVisible": true,
    "legend": "I am"
   }
  },
  {
   "row": "footer lists start-aligned (every row gap <= 32 px across both lists)",
   "pass": true,
   "expected": "<= 32 px between rows",
   "observed": {
    "lists": [
     [
      "Site",
      8
     ],
     [
      "Elsewhere",
      1
     ],
     [
      "Language",
      2
     ]
    ],
    "gaps": [
     32,
     32,
     32,
     32,
     32,
     32,
     32,
     32
    ]
   }
  },
  {
   "row": "mobile menu: rows >= 44 px, type >= 16 px, opaque panel",
   "pass": true,
   "expected": "minH >= 44, minFs >= 16, rgb(7,9,14)",
   "observed": {
    "expanded": "true",
    "minH": 57,
    "minFs": 16,
    "bg": "rgb(7, 9, 14)"
   }
  },
  {
   "row": "mobile menu: Escape closes it and returns focus to the button",
   "pass": true,
   "expected": "expanded false, focus nav-toggle",
   "observed": {
    "expanded": "false",
    "focus": "nav-toggle"
   }
  },
  {
   "row": "phone: HyperFrames composition type >= 14 px on screen (narrow layout)",
   "pass": true,
   "expected": ">= 14 px, narrow true",
   "observed": {
    "narrow": true,
    "k": 0.369,
    "minOnScreenPx": 14.7,
    "playerW": 356
   }
  },
  {
   "row": "phone: in every composition scene the visible text lies inside the player (no clipping)",
   "pass": true,
   "expected": "inside true for s1..s4",
   "observed": {
    "s1": {
     "visibleText": 9,
     "inside": true,
     "maxRight": 339,
     "maxBottom": 179,
     "rootW": 354,
     "rootH": 199
    },
    "s2": {
     "visibleText": 3,
     "inside": true,
     "maxRight": 354,
     "maxBottom": 118,
     "rootW": 354,
     "rootH": 199
    },
    "s3": {
     "visibleText": 9,
     "inside": true,
     "maxRight": 339,
     "maxBottom": 179,
     "rootW": 354,
     "rootH": 199
    },
    "s4": {
     "visibleText": 2,
     "inside": true,
     "maxRight": 339,
     "maxBottom": 148,
     "rootW": 354,
     "rootH": 199
    }
   }
  },
  {
   "row": "375x667: both hero CTAs above the fold with >= 12 px slack",
   "pass": true,
   "expected": ">= 12",
   "observed": {
    "cta2Bottom": 512,
    "vh": 667
   }
  },
  {
   "row": "hero stale-state test: forced offscreen while visible \u2192 the watchdog reconciles (offscreen false, watchdog >= 1) within 3.5 s and frames keep advancing",
   "pass": true,
   "expected": "offscreen false, watchdog >= 1, frames advancing",
   "observed": {
    "before": {
     "live": true,
     "backend": "webgpu",
     "frames": 233
    },
    "sampled": [
     262,
     299
    ],
    "after": {
     "offscreen": false,
     "watchdog": 1,
     "frames": 510,
     "live": true
    }
   }
  }
 ]
}