{
  "url": "https://itch.io",
  "auditedAt": "2026-07-27T15:10:05.169Z",
  "mode": "report",
  "status": "partial",
  "statusDetail": "57 of 58 atomic checks were judged. Authentication inspection was blocked by Cloudflare verification; authenticated account, final payment, upload, and game execution were not included in representative-path coverage.",
  "page": {
    "appType": "mpa",
    "framework": "Server-rendered MPA with React-like widgets and creator-hosted subdomains",
    "notes": "Public indie-game marketplace. Representative templates: home, catalog, search, creator game detail, purchase choice, login, and 404 recovery."
  },
  "evidenceUsed": [
    "screenshot",
    "transition-video",
    "dom",
    "evaluate-probe",
    "layout-metrics",
    "trace",
    "har",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "discoverability",
    "heap-summary",
    "Lighthouse",
    "robots/sitemap/manifest fetch",
    "HTTP response inspection"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "accessibility",
    "adapt-scrollbar-to-contrast-preferences",
    "same-document-transitions",
    "shrinking-header-on-scroll",
    "anchor-positioning-tab-underline",
    "light-dismiss-a-dialog",
    "size-aware-styling",
    "identify-inp-causes",
    "visually-stable-font-fallbacks",
    "optimize-image-priority",
    "identify-heavy-scripts",
    "move-dom-element-without-losing-state",
    "html",
    "security",
    "privacy",
    "translator",
    "deliver-optimized-decorative-images",
    "deprioritize-background-fetches",
    "forms",
    "accessible-error-announcement",
    "break-up-long-tasks",
    "manage-recurring-intervals",
    "webmcp",
    "language-model"
  ],
  "artifacts": [
    {
      "type": "screenshot",
      "path": "evidence/detail-desktop.png",
      "caption": "detail desktop.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-discoverability-crawler.png",
      "caption": "detail discoverability crawler.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-discoverability-rendered.png",
      "caption": "detail discoverability rendered.png"
    },
    {
      "type": "discoverability",
      "path": "evidence/detail-discoverability.json",
      "caption": "detail discoverability.json"
    },
    {
      "type": "dom",
      "path": "evidence/detail-dom.json",
      "caption": "detail dom.json"
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-download-state.png",
      "caption": "detail download state.png"
    },
    {
      "type": "other",
      "path": "evidence/detail-images.json",
      "caption": "detail images.json",
      "findingIds": [
        "F11",
        "F14",
        "F18",
        "F25",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/detail-lighthouse-summary.json",
      "caption": "detail lighthouse summary.json",
      "findingIds": [
        "F10",
        "F11",
        "F14",
        "F15",
        "F17",
        "F18",
        "F19"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/detail-lighthouse.json",
      "caption": "detail lighthouse.json",
      "findingIds": [
        "F19"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/detail-mobile-layout.json",
      "caption": "detail mobile layout.json",
      "findingIds": [
        "F05",
        "F09",
        "F11",
        "F17"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-mobile.png",
      "caption": "detail mobile.png",
      "findingIds": [
        "F05",
        "F09",
        "F17"
      ]
    },
    {
      "type": "other",
      "path": "evidence/detail-probe.json",
      "caption": "detail probe.json",
      "findingIds": [
        "F04",
        "F05",
        "F06",
        "F08",
        "F09",
        "F16",
        "F24"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/detail-purchase-dom.json",
      "caption": "detail purchase dom.json"
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-purchase.png",
      "caption": "detail purchase.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/games-desktop.png",
      "caption": "games desktop.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/games-discoverability-crawler.png",
      "caption": "games discoverability crawler.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/games-discoverability-rendered.png",
      "caption": "games discoverability rendered.png"
    },
    {
      "type": "discoverability",
      "path": "evidence/games-discoverability.json",
      "caption": "games discoverability.json"
    },
    {
      "type": "dom",
      "path": "evidence/games-dom.json",
      "caption": "games dom.json"
    },
    {
      "type": "other",
      "path": "evidence/games-images.json",
      "caption": "games images.json",
      "findingIds": [
        "F14",
        "F25",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/games-lighthouse-summary.json",
      "caption": "games lighthouse summary.json",
      "findingIds": [
        "F10",
        "F14",
        "F15",
        "F17"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/games-lighthouse.json",
      "caption": "games lighthouse.json"
    },
    {
      "type": "layout",
      "path": "evidence/games-mobile-layout.json",
      "caption": "games mobile layout.json",
      "findingIds": [
        "F05",
        "F09",
        "F17"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/games-mobile.png",
      "caption": "games mobile.png",
      "findingIds": [
        "F05",
        "F09",
        "F17"
      ]
    },
    {
      "type": "other",
      "path": "evidence/games-probe.json",
      "caption": "games probe.json",
      "findingIds": [
        "F04",
        "F05",
        "F06",
        "F08",
        "F09",
        "F16",
        "F20",
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/guidance/accessibility.md",
      "caption": "accessibility.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/accessible-error-announcement.md",
      "caption": "accessible error announcement.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/adapt-scrollbar-to-contrast-preferences.md",
      "caption": "adapt scrollbar to contrast preferences.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/anchor-positioning-tab-underline.md",
      "caption": "anchor positioning tab underline.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/autofill-address-form.md",
      "caption": "autofill address form.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/autofill-payment-form.md",
      "caption": "autofill payment form.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/break-up-long-tasks.md",
      "caption": "break up long tasks.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/complex-shapes.md",
      "caption": "complex shapes.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/coordinate-global-events.md",
      "caption": "coordinate global events.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/css.md",
      "caption": "css.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/dark-mode.md",
      "caption": "dark mode.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/declarative-dialog-popover-control.md",
      "caption": "declarative dialog popover control.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/deliver-optimized-decorative-images.md",
      "caption": "deliver optimized decorative images.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/deprioritize-background-fetches.md",
      "caption": "deprioritize background fetches.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/directional-navigation-transitions.md",
      "caption": "directional navigation transitions.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/flicker-free-client-side-ab-testing.md",
      "caption": "flicker free client side ab testing.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/fluid-scaling.md",
      "caption": "fluid scaling.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/forms.md",
      "caption": "forms.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/html.md",
      "caption": "html.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/identify-heavy-scripts.md",
      "caption": "identify heavy scripts.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/identify-inp-causes.md",
      "caption": "identify inp causes.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/improve-text-layout-and-legibility.md",
      "caption": "improve text layout and legibility.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/language-model.md",
      "caption": "language model.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/light-dismiss-a-dialog.md",
      "caption": "light dismiss a dialog.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/manage-recurring-intervals.md",
      "caption": "manage recurring intervals.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/move-dom-element-without-losing-state.md",
      "caption": "move dom element without losing state.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/optimize-image-priority.md",
      "caption": "optimize image priority.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/passkeys.md",
      "caption": "passkeys.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/persistent-toast-notifications.md",
      "caption": "persistent toast notifications.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/physics-based-easing.md",
      "caption": "physics based easing.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/privacy.md",
      "caption": "privacy.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/resilient-context-menus-and-nested-dropdowns.md",
      "caption": "resilient context menus and nested dropdowns.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/same-document-transitions.md",
      "caption": "same document transitions.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/scrollytelling.md",
      "caption": "scrollytelling.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-0.json",
      "caption": "search 0.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-1.json",
      "caption": "search 1.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-2.json",
      "caption": "search 2.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-3.json",
      "caption": "search 3.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-4.json",
      "caption": "search 4.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-5.json",
      "caption": "search 5.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-6.json",
      "caption": "search 6.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-7.json",
      "caption": "search 7.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-8.json",
      "caption": "search 8.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-9.json",
      "caption": "search 9.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance/search-hidden-content.md",
      "caption": "search hidden content.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/security.md",
      "caption": "security.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/shrinking-header-on-scroll.md",
      "caption": "shrinking header on scroll.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/size-aware-styling.md",
      "caption": "size aware styling.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/support-global-calendar-systems.md",
      "caption": "support global calendar systems.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/translator.md",
      "caption": "translator.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/visually-stable-font-fallbacks.md",
      "caption": "visually stable font fallbacks.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance/webmcp.md",
      "caption": "webmcp.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-list.json",
      "caption": "guidance list.json"
    },
    {
      "type": "heap",
      "path": "evidence/home-baseline.heapsnapshot",
      "caption": "home baseline.heapsnapshot"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-contrast.png",
      "caption": "home contrast.png",
      "findingIds": [
        "F03"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-cookies.json",
      "caption": "home cookies.json",
      "findingIds": [
        "F21",
        "F22"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark.png",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-crawler.png",
      "caption": "home discoverability crawler.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-rendered.png",
      "caption": "home discoverability rendered.png"
    },
    {
      "type": "discoverability",
      "path": "evidence/home-discoverability.json",
      "caption": "home discoverability.json"
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom.json"
    },
    {
      "type": "other",
      "path": "evidence/home-headers.json",
      "caption": "home headers.json",
      "findingIds": [
        "F21",
        "F22",
        "F23"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-images.json",
      "caption": "home images.json",
      "findingIds": [
        "F02",
        "F14",
        "F25",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-lighthouse-summary.json",
      "caption": "home lighthouse summary.json",
      "findingIds": [
        "F03",
        "F10",
        "F14",
        "F15",
        "F17"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/home-lighthouse.json",
      "caption": "home lighthouse.json"
    },
    {
      "type": "layout",
      "path": "evidence/home-mobile-layout.json",
      "caption": "home mobile layout.json",
      "findingIds": [
        "F05",
        "F09",
        "F17"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile.png",
      "findingIds": [
        "F05",
        "F07",
        "F09",
        "F17"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/home-post-scroll.heapsnapshot",
      "caption": "home post scroll.heapsnapshot"
    },
    {
      "type": "other",
      "path": "evidence/home-probe.json",
      "caption": "home probe.json",
      "findingIds": [
        "F04",
        "F05",
        "F06",
        "F08",
        "F09",
        "F16",
        "F20",
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-reduced-motion-probe.json",
      "caption": "home reduced motion probe.json",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "video",
      "path": "evidence/home-reduced-motion.mp4",
      "caption": "home reduced motion.mp4",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-secrets.json",
      "caption": "home secrets.json",
      "findingIds": [
        "F21",
        "F22"
      ]
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "home summary.json",
      "findingIds": [
        "F12",
        "F13",
        "F22",
        "F26"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "home trace summary.json",
      "findingIds": [
        "F10",
        "F14",
        "F15",
        "F17"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "home trace.json"
    },
    {
      "type": "other",
      "path": "evidence/home-trackers.json",
      "caption": "home trackers.json",
      "findingIds": [
        "F21",
        "F22"
      ]
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "home.har",
      "findingIds": [
        "F12",
        "F13",
        "F22",
        "F26"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home.png",
      "caption": "home.png",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/login-desktop.png",
      "caption": "login desktop.png"
    },
    {
      "type": "dom",
      "path": "evidence/login-dom.json",
      "caption": "login dom.json"
    },
    {
      "type": "layout",
      "path": "evidence/login-mobile-layout.json",
      "caption": "login mobile layout.json"
    },
    {
      "type": "screenshot",
      "path": "evidence/login-mobile.png",
      "caption": "login mobile.png"
    },
    {
      "type": "other",
      "path": "evidence/manifest.json",
      "caption": "manifest.json"
    },
    {
      "type": "dom",
      "path": "evidence/not-found-dom.json",
      "caption": "not found dom.json"
    },
    {
      "type": "other",
      "path": "evidence/not-found-headers.txt",
      "caption": "not found headers.txt"
    },
    {
      "type": "screenshot",
      "path": "evidence/not-found.png",
      "caption": "not found.png"
    },
    {
      "type": "other",
      "path": "evidence/probe.js",
      "caption": "probe.js"
    },
    {
      "type": "other",
      "path": "evidence/robots-headers.txt",
      "caption": "robots headers.txt"
    },
    {
      "type": "other",
      "path": "evidence/robots.txt",
      "caption": "robots.txt",
      "findingIds": [
        "F20"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/search-desktop.png",
      "caption": "search desktop.png"
    },
    {
      "type": "dom",
      "path": "evidence/search-dom.json",
      "caption": "search dom.json"
    },
    {
      "type": "screenshot",
      "path": "evidence/search-filter-state.png",
      "caption": "search filter state.png"
    },
    {
      "type": "layout",
      "path": "evidence/search-mobile-layout.json",
      "caption": "search mobile layout.json",
      "findingIds": [
        "F05",
        "F09",
        "F17"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/search-mobile.png",
      "caption": "search mobile.png",
      "findingIds": [
        "F05",
        "F09",
        "F17"
      ]
    },
    {
      "type": "other",
      "path": "evidence/search-probe.json",
      "caption": "search probe.json",
      "findingIds": [
        "F04",
        "F05",
        "F06",
        "F08",
        "F09",
        "F16",
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/sitemap.xml",
      "caption": "sitemap.xml",
      "findingIds": [
        "F20"
      ]
    }
  ],
  "config": {
    "loaded": false
  },
  "coverage": {
    "catalogVersion": "modern-web-guidance@0.0.172",
    "catalogChecksum": "sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7",
    "expected": 58,
    "recorded": 58,
    "judged": 57,
    "blocked": 1,
    "notRun": 0,
    "missing": 0,
    "unknown": 0,
    "duplicates": 0,
    "complete": false
  },
  "checkOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-color-scheme",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Paired screenshots under default and prefers-color-scheme: dark are visually identical, and the probe found no color-scheme declaration or prefers-color-scheme rule.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/home-dark.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The reduced-motion probe found no prefers-reduced-motion rule while the image audit found animated GIF assets; the reduced-motion video records the same promotional animation surface.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-reduced-motion.mp4",
        "evidence/home-reduced-motion-probe.json",
        "evidence/home-images.json"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The prefers-contrast screenshot does not retint the page; the probe found no prefers-contrast/forced-colors CSS and Lighthouse reported 104 contrast failures on the homepage.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-contrast.png",
        "evidence/home-lighthouse-summary.json"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "DOM/CSS probes across homepage, listing, search, and detail found no view-transition-name, ::view-transition, or @view-transition usage despite frequent browse-to-detail navigation.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "CSS/DOM probes found no scroll-linked visual effects and no scroll timeline or animation-timeline; scrolling remained platform-native with low blocking work.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Mobile screenshots and probes show standard document scrolling and links, with no custom pointer-driven gesture surface fighting browser behavior.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "medium",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The mobile listing is 5,212 CSS pixels tall and the detail page is 11,167 pixels tall, while probes found no scroll-state query or progress/position feedback.",
      "pathIds": [
        "browse"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/games-mobile.png",
        "evidence/search-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/home-mobile-layout.json",
        "evidence/games-mobile-layout.json",
        "evidence/search-mobile-layout.json",
        "evidence/detail-mobile-layout.json",
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "issues",
      "confidence": "medium",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The rendered interfaces contain header menus and filtering controls, but probes found no anchor-name, position-anchor, or position-try rules.",
      "pathIds": [
        "search"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Selected search tabs use a strong underline, filters are visibly labelled, focus outlines are present, and browse/detail transitions preserve clear headings.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The mobile homepage screenshot shows a fixed YouTube subscribe bar covering content at the bottom with no visible dismiss control.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The search template uses a native dialog and three details disclosures; no blocking modal is present on load.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Aside from the separately reported mobile promo, listing and detail screenshots devote the majority of the viewport to games, art, and task controls rather than decorative app framing.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "All four 360x800 layout captures report horizontalOverflowPx 0 and a viewport meta; screenshots show reflowed cards and controls.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "medium",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "All four representative probes found no @container/container-type usage, even though cards, filters, and marketplace modules are reused in varied widths.",
      "pathIds": [
        "browse"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The focus/target probe found 34 of the first 40 homepage targets under 44px in at least one dimension; many links are 17–32px tall, and Lighthouse reported target-size failures.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json",
        "evidence/home-mobile.png",
        "evidence/games-mobile.png",
        "evidence/search-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/home-mobile-layout.json",
        "evidence/games-mobile-layout.json",
        "evidence/search-mobile-layout.json",
        "evidence/detail-mobile-layout.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Home, listing, search, and detail screenshots clearly identify games and expose Browse, Filter, Download Now, or search-result actions.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The audited browse → detail → purchase path reaches a clear free-download/payment-choice page with a prominent “No thanks” route and visible included files.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The invalid route returns HTTP 404 and renders a clear “We couldn’t find your page” message with a recovery link; purchase requirements are visibly labelled.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Lighthouse measured 29.9s LCP and 0.284 CLS on the selected game detail page; listing LCP was also 4.2s.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The detail image audit found all 7 images missing width/height; Lighthouse measured CLS 0.284 and identified a layout-shift culprit.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/detail-images.json",
        "evidence/detail-lighthouse-summary.json",
        "evidence/detail-mobile-layout.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Trace reports one 91ms long task and 41ms TBT on home; Lighthouse TBT is 50–80ms across representative templates.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The HAR identifies main.css and synchronous lib.min.js/index.min.js as parser-inserted high-priority candidates; Lighthouse flags LCP discovery and dependency-tree issues.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The homepage transfers 793KB; 289KB is script, including 158KB for Google Tag Manager, before a user interacts.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Lighthouse found unnamed buttons, 14 homepage images without alt, 16 unnamed links, and an unnamed SVG; listing/detail templates add dozens more. The probes also found no main landmark.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-images.json",
        "evidence/games-images.json",
        "evidence/detail-images.json",
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Lighthouse reported 104 contrast failures on home, 51 on listing, and 3 on the creator detail template.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The DOM probes found zero main, nav, header, or footer semantic landmarks on home, listing, search, and detail. Lighthouse fails landmark-one-main on each audited template.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Desktop/mobile screenshots show readable line lengths, wrapping, hierarchy, and no horizontal clipping on representative templates.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Lighthouse reports 11 target-size failures on home, 9 on listing, and 112 on detail; probes show many 16–35px-high controls.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/games-mobile.png",
        "evidence/search-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/home-mobile-layout.json",
        "evidence/games-mobile-layout.json",
        "evidence/search-mobile-layout.json",
        "evidence/detail-mobile-layout.json",
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "findingIds": [
        "F17"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Lighthouse best-practices is 1.0 on home/listing and does not report console errors or uncaught exceptions on any audited template.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The detail image audit found 7/7 images without dimensions and Lighthouse found 5 images displayed at incorrect aspect ratio.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/detail-images.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "findingIds": [
        "F18"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "medium",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Lighthouse best-practices scored the detail template 0.92 and reported one inspector issue, while home and listing scored 1.0.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/detail-lighthouse.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "findingIds": [
        "F19"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Home, listing, and detail have descriptive unique titles and meta descriptions; internal search is deliberately disallowed by robots.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "All representative pages have viewport meta and real href links; robots allows public templates and explicitly scopes search/checkout exclusions.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Homepage and /games probes found no canonical URL, while the purchase page does provide one; robots and sitemap otherwise align and return successful statuses.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/robots.txt",
        "evidence/sitemap.xml"
      ],
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Home has JSON-LD plus Open Graph/Twitter metadata; game detail has two JSON-LD blocks and social metadata matching visible content.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The headers primitive confirms HTTPS and nosniff/X-Frame-Options, but no Content-Security-Policy or Strict-Transport-Security; analytics cookies are also set without Secure.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json",
        "evidence/home-trackers.json",
        "evidence/home-secrets.json"
      ],
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Tracker evidence found Google Tag Manager and Google Analytics; two analytics cookies are non-Secure, SameSite=None, and live 400 days. GTM alone transfers 158KB.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json",
        "evidence/home-trackers.json",
        "evidence/home-secrets.json",
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F22"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "blocked",
      "confidence": "high",
      "method": "Navigate to the public login route in Chrome and inspect rendered DOM/source for permission timing and WebAuthn/passkey affordances.",
      "evidence": "The login route consistently returned a Cloudflare “Performing security verification” interstitial instead of the authentication UI.",
      "reason": "An external anti-bot challenge prevented inspection of the actual authentication surface; public pages showed no permission prompt, but the modern-auth half could not be judged.",
      "pathIds": [
        "login"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Headers show no HSTS, CSP, or Permissions-Policy; Referrer-Policy is no-referrer-when-downgrade rather than a stricter modern policy. Clickjacking protection and nosniff are present.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-headers.json"
      ],
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Discoverability captures show 100% rendered-content coverage in raw server HTML on home, listing, and detail, with non-JS crawler screenshots retaining content.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Representative mobile layouts have zero horizontal overflow; native dialog/details are used on search and task content remains available in raw HTML.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "medium",
      "method": "Inspect manifest and service-worker registrations and judge site intent.",
      "evidence": "The site publishes a standalone manifest but no service worker; this audit treats the public MPA marketplace as an online catalog rather than an intended installable web app.",
      "reason": "Offline/installability is contextual, and the audited public marketplace does not present itself as a PWA despite offering a separate native itch app.",
      "pathIds": [
        "homepage"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "A deliberately invalid route returns a true HTTP 404 and a useful illustrated recovery page with a link back to itch.io.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "All pages declare lang=en but no explicit dir; probes found no logical-property rules in accessible styles, while the platform exposes translations and serves global content.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Rendered templates expose a translation endpoint, locale_en state, localized relative durations, and clear currency symbols rather than ambiguous bare numbers.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Audited public content uses relative durations such as “1 hour ago” rather than ambiguous local absolute timestamps; no scheduling flow was present.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The free-game purchase page clearly offers “No thanks, just take me to the downloads,” states the optional suggested payment, and presents terms plainly.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Purchase uses native required/email semantics with a visible label and explanatory confirmation text; the 404 state gives a direct recovery action.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The purchase email field uses type=email and is visibly labelled; search fields use appropriate text semantics and do not prevent paste.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The purchase page shows optional contribution, included file sizes, payment methods, terms, and a no-payment route before commitment.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "Home has 52 below-fold images without lazy loading, 61 without srcset, and animated GIF/JPEG/PNG assets; detail serves a 2500px PNG at 600px and all seven images are legacy formats.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home-images.json",
        "evidence/games-images.json",
        "evidence/detail-images.json"
      ],
      "findingIds": [
        "F25"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The home trace has only one long task and 41ms TBT; no autoplay video/media element or repeated background fetch loop was observed.",
      "pathIds": [
        "homepage",
        "browse",
        "search",
        "detail"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Triangulated the check with the referenced visual, DOM/probe, Lighthouse, layout, network, security, image, or performance evidence.",
      "evidence": "The homepage transfers 793KB; GTM is the largest single response at 158KB and two GIFs total about 180KB, with analytics active immediately.",
      "pathIds": [
        "homepage"
      ],
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json",
        "evidence/home-images.json",
        "evidence/games-images.json",
        "evidence/detail-images.json"
      ],
      "findingIds": [
        "F26"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Inspect DOM/scripts and platform globals for WebMCP or agent-tool registration.",
      "evidence": "No WebMCP capability was exposed.",
      "reason": "No declared agent-facing intent was available and this emerging capability is optional; absence is not penalized.",
      "pathIds": [
        "homepage"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Inspect platform globals and scripts for built-in AI language-model or summarizer use.",
      "evidence": "No on-device inference surface was present.",
      "reason": "Search, discovery, and download tasks do not require on-device inference, and no agent/AI intent was declared.",
      "pathIds": [
        "homepage"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "After ten full-page scroll cycles, heap self-size rose only 149,319 bytes (1.2%) and node count 1,329 (0.6%), consistent with bounded warm-up rather than unbounded retention.",
      "pathIds": [
        "homepage"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "The homepage baseline heap is 12.35MB self-size with 219,473 nodes, proportionate to a dense marketplace page.",
      "pathIds": [
        "homepage"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct inspection of the check on representative paths using screenshots plus the relevant DOM, layout, Lighthouse, network, discoverability, flow, or heap evidence.",
      "evidence": "Before/after heap summaries show no Detached* constructor among retained-size leaders and only small bounded growth after repeated scrolling.",
      "pathIds": [
        "homepage"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F02",
        "F03"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F05",
        "F06"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F08",
        "F09"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F10",
        "F11",
        "F12",
        "F13"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F14",
        "F15",
        "F16",
        "F17"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F18",
        "F19"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F21",
        "F22",
        "F23"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F25",
        "F26"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "No declared agent-facing intent was available and this emerging capability is optional; absence is not penalized. Search, discovery, and download tasks do not require on-device inference, and no agent/AI intent was declared."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "homepage",
      "description": "Homepage and global shell: primary discovery entry, preferences, navigation, performance, privacy, metadata, and memory. Represents global marketplace chrome.",
      "url": "https://itch.io/",
      "conditions": [
        "desktop",
        "360x800",
        "prefers-color-scheme: dark",
        "prefers-contrast: more",
        "prefers-reduced-motion: reduce",
        "10 repeated scroll cycles"
      ],
      "result": "issues"
    },
    {
      "id": "browse",
      "description": "Top games listing: catalog/filter archetype and dense responsive card grid.",
      "url": "https://itch.io/games",
      "conditions": [
        "desktop",
        "360x800",
        "Lighthouse",
        "no-JS crawler"
      ],
      "result": "issues"
    },
    {
      "id": "search",
      "description": "Search results for horror: primary search journey, filters, tags, project results, dialog/details semantics.",
      "url": "https://itch.io/search?q=horror",
      "conditions": [
        "desktop",
        "360x800",
        "filter interaction"
      ],
      "result": "issues"
    },
    {
      "id": "detail",
      "description": "Representative creator game detail: content, creator theming, download CTA, embeds, comments, media performance.",
      "url": "https://eliscz.itch.io/behind-the-broadcast",
      "conditions": [
        "desktop",
        "360x800",
        "Lighthouse",
        "no-JS crawler"
      ],
      "result": "issues"
    },
    {
      "id": "purchase",
      "description": "Free-game purchase/download choice: core-flow continuity, pricing clarity, form semantics, files, and payment options.",
      "url": "https://eliscz.itch.io/behind-the-broadcast/purchase",
      "conditions": [
        "desktop"
      ],
      "result": "pass"
    },
    {
      "id": "login",
      "description": "Authentication entry: attempted inspection of permissions and passkey/password behavior.",
      "url": "https://itch.io/login",
      "conditions": [
        "desktop",
        "360x800"
      ],
      "result": "failed"
    },
    {
      "id": "not-found",
      "description": "HTTP failure and recovery state using a deliberately invalid route.",
      "url": "https://itch.io/this-page-does-not-exist-web-uplift",
      "conditions": [
        "desktop",
        "HTTP status"
      ],
      "result": "pass"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "user-experience",
      "severity": "medium",
      "confidence": "high",
      "summary": "The main marketplace UI stays light when the user requests dark mode.",
      "evidence": "Paired screenshots under default and prefers-color-scheme: dark are visually identical, and the probe found no color-scheme declaration or prefers-color-scheme rule.",
      "artifacts": [
        "evidence/home.png",
        "evidence/home-dark.png"
      ],
      "suggestedFix": "Declare color-scheme and retint surfaces, text, controls, and browser UI with prefers-color-scheme or light-dark().",
      "effort": "medium"
    },
    {
      "id": "F02",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-reduced-motion",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "Animated GIF promotions continue without a reduced-motion alternative.",
      "evidence": "The reduced-motion probe found no prefers-reduced-motion rule while the image audit found animated GIF assets; the reduced-motion video records the same promotional animation surface.",
      "artifacts": [
        "evidence/home-reduced-motion.mp4",
        "evidence/home-reduced-motion-probe.json",
        "evidence/home-images.json"
      ],
      "suggestedFix": "Provide static poster alternatives or replace GIFs with controllable media, and suppress non-essential animation under prefers-reduced-motion.",
      "effort": "medium"
    },
    {
      "id": "F03",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-contrast",
      "guidanceId": "adapt-scrollbar-to-contrast-preferences",
      "guidanceCategory": "css",
      "severity": "high",
      "confidence": "high",
      "summary": "Many text and control combinations fail contrast, with no high-contrast adaptation.",
      "evidence": "The prefers-contrast screenshot does not retint the page; the probe found no prefers-contrast/forced-colors CSS and Lighthouse reported 104 contrast failures on the homepage.",
      "artifacts": [
        "evidence/home-contrast.png",
        "evidence/home-lighthouse-summary.json"
      ],
      "suggestedFix": "Correct base contrast first, then add forced-colors and prefers-contrast adaptations without suppressing system colors.",
      "effort": "medium"
    },
    {
      "id": "F04",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "same-document-transitions",
      "guidanceCategory": "css",
      "severity": "low",
      "confidence": "high",
      "summary": "Route changes use abrupt full-document swaps.",
      "evidence": "DOM/CSS probes across homepage, listing, search, and detail found no view-transition-name, ::view-transition, or @view-transition usage despite frequent browse-to-detail navigation.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "suggestedFix": "Add cross-document View Transitions for same-origin marketplace routes, with reduced-motion fallbacks.",
      "effort": "medium"
    },
    {
      "id": "F05",
      "pathId": "browse",
      "url": "https://itch.io/games",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "shrinking-header-on-scroll",
      "guidanceCategory": "css",
      "severity": "low",
      "confidence": "medium",
      "summary": "Long listing pages provide static chrome with no scroll-position feedback.",
      "evidence": "The mobile listing is 5,212 CSS pixels tall and the detail page is 11,167 pixels tall, while probes found no scroll-state query or progress/position feedback.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/games-mobile.png",
        "evidence/search-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/home-mobile-layout.json",
        "evidence/games-mobile-layout.json",
        "evidence/search-mobile-layout.json",
        "evidence/detail-mobile-layout.json",
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "suggestedFix": "Use scroll-state container queries or a lightweight progress/return affordance where it improves orientation on long pages.",
      "effort": "small"
    },
    {
      "id": "F06",
      "pathId": "search",
      "url": "https://itch.io/search?q=horror",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "anchored-positioning",
      "guidanceId": "anchor-positioning-tab-underline",
      "guidanceCategory": "css",
      "severity": "low",
      "confidence": "medium",
      "summary": "Menus and filter overlays do not use CSS anchor positioning.",
      "evidence": "The rendered interfaces contain header menus and filtering controls, but probes found no anchor-name, position-anchor, or position-try rules.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "suggestedFix": "Attach transient menus to their triggers with CSS anchor positioning and position-try fallbacks.",
      "effort": "medium"
    },
    {
      "id": "F07",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "guidanceCategory": "user-experience",
      "severity": "medium",
      "confidence": "high",
      "summary": "A persistent YouTube promotion consumes the bottom of the mobile viewport.",
      "evidence": "The mobile homepage screenshot shows a fixed YouTube subscribe bar covering content at the bottom with no visible dismiss control.",
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Remove the fixed promotion, make it non-overlapping inline content, or provide a clear persistent dismiss action.",
      "effort": "small"
    },
    {
      "id": "F08",
      "pathId": "browse",
      "url": "https://itch.io/games",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "css",
      "severity": "low",
      "confidence": "medium",
      "summary": "Responsive behavior is viewport-only rather than component-aware.",
      "evidence": "All four representative probes found no @container/container-type usage, even though cards, filters, and marketplace modules are reused in varied widths.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "suggestedFix": "Introduce container queries for reusable cards/filter modules while preserving existing media-query fallbacks.",
      "effort": "medium"
    },
    {
      "id": "F09",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Many controls are too small for reliable touch input.",
      "evidence": "The focus/target probe found 34 of the first 40 homepage targets under 44px in at least one dimension; many links are 17–32px tall, and Lighthouse reported target-size failures.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json",
        "evidence/home-mobile.png",
        "evidence/games-mobile.png",
        "evidence/search-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/home-mobile-layout.json",
        "evidence/games-mobile-layout.json",
        "evidence/search-mobile-layout.json",
        "evidence/detail-mobile-layout.json"
      ],
      "suggestedFix": "Increase target boxes or spacing to at least 44×44 CSS px for primary controls and dense icon/action links, while retaining visible focus.",
      "effort": "medium"
    },
    {
      "id": "F10",
      "pathId": "detail",
      "url": "https://eliscz.itch.io/behind-the-broadcast",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "identify-inp-causes",
      "guidanceCategory": "performance",
      "severity": "high",
      "confidence": "high",
      "summary": "The representative game detail template has very poor lab LCP and unstable loading.",
      "evidence": "Lighthouse measured 29.9s LCP and 0.284 CLS on the selected game detail page; listing LCP was also 4.2s.",
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "suggestedFix": "Prioritize the detail hero/LCP resource, reserve media space, and defer YouTube and below-fold work until needed.",
      "effort": "large"
    },
    {
      "id": "F11",
      "pathId": "detail",
      "url": "https://eliscz.itch.io/behind-the-broadcast",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "visually-stable-font-fallbacks",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Game detail media lacks dimensions and shifts during load.",
      "evidence": "The detail image audit found all 7 images missing width/height; Lighthouse measured CLS 0.284 and identified a layout-shift culprit.",
      "artifacts": [
        "evidence/detail-images.json",
        "evidence/detail-lighthouse-summary.json",
        "evidence/detail-mobile-layout.json"
      ],
      "suggestedFix": "Set intrinsic width/height or aspect-ratio on creator media and embeds before content loads.",
      "effort": "medium"
    },
    {
      "id": "F12",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Parser-blocking assets and weak LCP discovery delay primary content.",
      "evidence": "The HAR identifies main.css and synchronous lib.min.js/index.min.js as parser-inserted high-priority candidates; Lighthouse flags LCP discovery and dependency-tree issues.",
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Defer non-critical scripts, split route-specific code, and make the LCP image discoverable and prioritized without over-preloading.",
      "effort": "large"
    },
    {
      "id": "F13",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Analytics and shared JavaScript consume a disproportionate share of the initial load.",
      "evidence": "The homepage transfers 793KB; 289KB is script, including 158KB for Google Tag Manager, before a user interacts.",
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Delay analytics until consent/idle where appropriate, trim shared bundles, and load route-specific dependencies conditionally.",
      "effort": "medium"
    },
    {
      "id": "F14",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Core marketplace cards and controls lack accessible alternatives.",
      "evidence": "Lighthouse found unnamed buttons, 14 homepage images without alt, 16 unnamed links, and an unnamed SVG; listing/detail templates add dozens more. The probes also found no main landmark.",
      "artifacts": [
        "evidence/home-images.json",
        "evidence/games-images.json",
        "evidence/detail-images.json",
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "suggestedFix": "Give functional images/links/buttons accurate names, use empty alt only for truly decorative images, title iframes, and expose semantic landmarks.",
      "effort": "large"
    },
    {
      "id": "F15",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Text contrast fails widely across the marketplace.",
      "evidence": "Lighthouse reported 104 contrast failures on home, 51 on listing, and 3 on the creator detail template.",
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "suggestedFix": "Adjust text, muted metadata, badges, and controls to meet WCAG contrast in every creator theme state.",
      "effort": "large"
    },
    {
      "id": "F16",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "move-dom-element-without-losing-state",
      "guidanceCategory": "accessibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "Representative pages lack landmark structure.",
      "evidence": "The DOM probes found zero main, nav, header, or footer semantic landmarks on home, listing, search, and detail. Lighthouse fails landmark-one-main on each audited template.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "suggestedFix": "Use header/nav/main/footer landmarks and preserve the existing visible focus behavior and skip link destination.",
      "effort": "medium"
    },
    {
      "id": "F17",
      "pathId": "detail",
      "url": "https://eliscz.itch.io/behind-the-broadcast",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Touch-target sizing prevents a comparable mobile experience.",
      "evidence": "Lighthouse reports 11 target-size failures on home, 9 on listing, and 112 on detail; probes show many 16–35px-high controls.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/games-mobile.png",
        "evidence/search-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/home-mobile-layout.json",
        "evidence/games-mobile-layout.json",
        "evidence/search-mobile-layout.json",
        "evidence/detail-mobile-layout.json",
        "evidence/home-trace-summary.json",
        "evidence/home-lighthouse-summary.json",
        "evidence/games-lighthouse-summary.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "suggestedFix": "Increase interactive target size/spacing and retest at narrow viewport and 200% zoom.",
      "effort": "large"
    },
    {
      "id": "F18",
      "pathId": "detail",
      "url": "https://eliscz.itch.io/behind-the-broadcast",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "html",
      "guidanceCategory": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "Creator imagery is delivered without dimensions and at incorrect aspect ratios.",
      "evidence": "The detail image audit found 7/7 images without dimensions and Lighthouse found 5 images displayed at incorrect aspect ratio.",
      "artifacts": [
        "evidence/detail-images.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "suggestedFix": "Preserve authored aspect ratios, provide dimensions, and use responsive image sources for creator assets.",
      "effort": "medium"
    },
    {
      "id": "F19",
      "pathId": "detail",
      "url": "https://eliscz.itch.io/behind-the-broadcast",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "guidanceCategory": "html",
      "severity": "low",
      "confidence": "medium",
      "summary": "The game detail template logs a browser inspector issue.",
      "evidence": "Lighthouse best-practices scored the detail template 0.92 and reported one inspector issue, while home and listing scored 1.0.",
      "artifacts": [
        "evidence/detail-lighthouse.json",
        "evidence/detail-lighthouse-summary.json"
      ],
      "suggestedFix": "Inspect and resolve the reported DevTools issue on embedded/creator content, then rerun Lighthouse.",
      "effort": "small"
    },
    {
      "id": "F20",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-discoverable",
      "principleCheckId": "canonical-and-indexing-signals",
      "guidanceId": "html",
      "guidanceCategory": "html",
      "severity": "low",
      "confidence": "high",
      "summary": "Key indexable marketplace templates omit self-referencing canonicals.",
      "evidence": "Homepage and /games probes found no canonical URL, while the purchase page does provide one; robots and sitemap otherwise align and return successful statuses.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/robots.txt",
        "evidence/sitemap.xml"
      ],
      "suggestedFix": "Add stable self-referencing canonical links to indexable home/listing templates and keep query/filter policy consistent with robots.",
      "effort": "small"
    },
    {
      "id": "F21",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "severity": "high",
      "confidence": "high",
      "summary": "Baseline transport defenses are incomplete.",
      "evidence": "The headers primitive confirms HTTPS and nosniff/X-Frame-Options, but no Content-Security-Policy or Strict-Transport-Security; analytics cookies are also set without Secure.",
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json",
        "evidence/home-trackers.json",
        "evidence/home-secrets.json"
      ],
      "suggestedFix": "Deploy a nonce/hash-based CSP, enable HSTS after subdomain validation, and mark all HTTPS cookies Secure with appropriate SameSite values.",
      "effort": "medium"
    },
    {
      "id": "F22",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "privacy",
      "severity": "medium",
      "confidence": "high",
      "summary": "Analytics loads immediately and creates long-lived identifiers.",
      "evidence": "Tracker evidence found Google Tag Manager and Google Analytics; two analytics cookies are non-Secure, SameSite=None, and live 400 days. GTM alone transfers 158KB.",
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json",
        "evidence/home-trackers.json",
        "evidence/home-secrets.json",
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Minimize analytics, shorten retention, obtain consent where required, and defer/batch telemetry rather than loading it on every initial view.",
      "effort": "medium"
    },
    {
      "id": "F23",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "severity": "medium",
      "confidence": "high",
      "summary": "Defensive browser policy headers are incomplete or dated.",
      "evidence": "Headers show no HSTS, CSP, or Permissions-Policy; Referrer-Policy is no-referrer-when-downgrade rather than a stricter modern policy. Clickjacking protection and nosniff are present.",
      "artifacts": [
        "evidence/home-headers.json"
      ],
      "suggestedFix": "Add HSTS, a scoped Permissions-Policy, strict-origin-when-cross-origin or stricter referrer policy, and CSP frame-ancestors.",
      "effort": "medium"
    },
    {
      "id": "F24",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-internationalised",
      "principleCheckId": "lang-dir-and-logical-properties",
      "guidanceId": "translator",
      "guidanceCategory": "built-in-ai",
      "severity": "medium",
      "confidence": "high",
      "summary": "The global marketplace does not declare direction or expose logical-layout CSS in audited templates.",
      "evidence": "All pages declare lang=en but no explicit dir; probes found no logical-property rules in accessible styles, while the platform exposes translations and serves global content.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/games-probe.json",
        "evidence/search-probe.json",
        "evidence/detail-probe.json"
      ],
      "suggestedFix": "Set direction explicitly where locale determines it and migrate reusable layout spacing/positioning to logical properties, testing an RTL locale.",
      "effort": "large"
    },
    {
      "id": "F25",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "deliver-optimized-decorative-images",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Marketplace and creator images are frequently oversized or delivered in legacy formats.",
      "evidence": "Home has 52 below-fold images without lazy loading, 61 without srcset, and animated GIF/JPEG/PNG assets; detail serves a 2500px PNG at 600px and all seven images are legacy formats.",
      "artifacts": [
        "evidence/home-images.json",
        "evidence/games-images.json",
        "evidence/detail-images.json"
      ],
      "suggestedFix": "Generate AVIF/WebP variants, responsive srcset/sizes, dimensions, and lazy loading for below-fold media; replace GIF motion with efficient controllable media.",
      "effort": "large"
    },
    {
      "id": "F26",
      "pathId": "homepage",
      "url": "https://itch.io/",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "deprioritize-background-fetches",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Third-party analytics and promotional media use substantial resources before interaction.",
      "evidence": "The homepage transfers 793KB; GTM is the largest single response at 158KB and two GIFs total about 180KB, with analytics active immediately.",
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json",
        "evidence/home-images.json",
        "evidence/games-images.json",
        "evidence/detail-images.json"
      ],
      "suggestedFix": "Budget third-party code, defer analytics and video promotional resources, and replace GIFs with efficient, user-controlled formats.",
      "effort": "medium"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Repair accessible names, contrast, landmarks, and target sizing across shared marketplace components",
      "priority": 1,
      "findingIds": [
        "F03",
        "F09",
        "F14",
        "F15",
        "F16",
        "F17"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Fix the game-detail LCP/CLS path and reserve all creator media space",
      "priority": 2,
      "findingIds": [
        "F10",
        "F11",
        "F12",
        "F18"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Deploy CSP/HSTS/Permissions-Policy and secure analytics cookies",
      "priority": 3,
      "findingIds": [
        "F21",
        "F23"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Add user-preference theming, reduced-motion media alternatives, and high-contrast support",
      "priority": 4,
      "findingIds": [
        "F01",
        "F02",
        "F03"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Optimize responsive images/GIFs and defer analytics/third-party work",
      "priority": 5,
      "findingIds": [
        "F13",
        "F22",
        "F25",
        "F26"
      ],
      "guidanceId": "deliver-optimized-decorative-images",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Remove or make the fixed mobile YouTube promotion dismissible and non-overlapping",
      "priority": 6,
      "findingIds": [
        "F07"
      ],
      "guidanceId": "light-dismiss-a-dialog",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Adopt component queries and resilient modern navigation positioning/transitions",
      "priority": 7,
      "findingIds": [
        "F04",
        "F05",
        "F06",
        "F08"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Add canonical URLs and improve international direction/logical layout readiness",
      "priority": 8,
      "findingIds": [
        "F20",
        "F24"
      ],
      "guidanceId": "translator",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Resolve the creator-detail DevTools inspector issue",
      "priority": 9,
      "findingIds": [
        "F19"
      ],
      "guidanceId": "html",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 7,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-27T15-10-05-169Z"
}
