{
  "url": "https://www.nikkansports.com",
  "auditedAt": "2026-07-20T06:05:49.342Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete report-mode audit of four representative public MPA templates.",
  "page": {
    "appType": "mpa",
    "framework": "Legacy server-rendered/jQuery MPA",
    "notes": "Japanese sports-news site with separate legacy mobile behavior, advertising, analytics, subscription, and search integrations."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "layout-metrics",
    "evaluate-probe",
    "trace",
    "har",
    "discoverability",
    "headers",
    "cookies",
    "trackers",
    "images",
    "secrets",
    "heap-summary",
    "Lighthouse",
    "Modern Web Guidance"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "accessibility",
    "same-document-transitions",
    "shrinking-header-on-scroll",
    "light-dismiss-a-dialog",
    "size-aware-styling",
    "forms",
    "performance",
    "break-up-long-tasks",
    "optimize-image-priority",
    "security",
    "privacy",
    "translator",
    "deliver-optimized-decorative-images",
    "webmcp",
    "manage-recurring-intervals"
  ],
  "artifacts": [
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "home desktop",
      "findingIds": [
        "F03",
        "F04",
        "F06"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile",
      "condition": "viewport: 360x800",
      "findingIds": [
        "F02",
        "F03",
        "F13"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark",
      "condition": "prefers-color-scheme: dark",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "other",
      "path": "evidence/recon.json",
      "caption": "recon",
      "findingIds": [
        "F21"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/home-layout-mobile.json",
      "caption": "home layout mobile",
      "condition": "viewport: 360x800",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "home trace summary",
      "findingIds": [
        "F07"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "home trace",
      "findingIds": []
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "home",
      "findingIds": [
        "F08"
      ]
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "home summary",
      "findingIds": [
        "F04",
        "F08",
        "F09",
        "F18",
        "F22"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse.json",
      "caption": "lighthouse",
      "findingIds": [
        "F07",
        "F09",
        "F10",
        "F11",
        "F12",
        "F14"
      ]
    },
    {
      "type": "other",
      "path": "evidence/accessibility-platform.json",
      "caption": "accessibility platform",
      "findingIds": [
        "F10",
        "F12",
        "F13",
        "F19"
      ]
    },
    {
      "type": "other",
      "path": "evidence/focus.json",
      "caption": "focus",
      "findingIds": [
        "F12"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images.json",
      "caption": "images",
      "findingIds": [
        "F15",
        "F22"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "headers",
      "findingIds": [
        "F17"
      ]
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "cookies",
      "findingIds": [
        "F17",
        "F18"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "trackers",
      "findingIds": [
        "F18"
      ]
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability.json",
      "caption": "discoverability",
      "findingIds": [
        "F16",
        "F23"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-rendered.png",
      "caption": "discoverability rendered",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-crawler.png",
      "caption": "discoverability crawler",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/robots-sitemap.json",
      "caption": "robots sitemap",
      "findingIds": [
        "F16",
        "F20",
        "F23"
      ]
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion.json",
      "caption": "reduced motion",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.heapsnapshot",
      "caption": "heap baseline",
      "findingIds": [
        "F24"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-post-interaction.heapsnapshot",
      "caption": "heap post interaction",
      "findingIds": [
        "F24"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/category-mobile.png",
      "caption": "category mobile",
      "condition": "viewport: 360x800",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/article-mobile.png",
      "caption": "article mobile",
      "condition": "viewport: 360x800",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/search-mobile.png",
      "caption": "search mobile",
      "condition": "viewport: 360x800",
      "findingIds": [
        "F02",
        "F21"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/category-dom.json",
      "caption": "category dom",
      "findingIds": [
        "F16"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/article-dom.json",
      "caption": "article dom",
      "findingIds": [
        "F05",
        "F16"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/search-dom.json",
      "caption": "search dom",
      "findingIds": [
        "F16"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom",
      "findingIds": [
        "F01",
        "F05",
        "F06",
        "F11",
        "F16",
        "F19"
      ]
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "secrets",
      "findingIds": []
    }
  ],
  "config": {
    "loaded": false
  },
  "coverage": {
    "catalogVersion": "modern-web-guidance@0.0.172",
    "catalogChecksum": "sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7",
    "expected": 58,
    "recorded": 58,
    "judged": 58,
    "blocked": 0,
    "notRun": 0,
    "missing": 0,
    "unknown": 0,
    "duplicates": 0,
    "complete": true
  },
  "checkOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-color-scheme",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The dark-mode screenshot is visually unchanged from the desktop capture; computed styles report color-scheme: normal and a transparent/light surface.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dark.png",
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Reduced-motion emulation matched reduce; there were no active animations or autoplay media to suppress.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/reduced-motion.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse found white #fff text on #9fb0bc at 2.23:1, below 4.5:1; no prefers-contrast/forced-colors adaptation was found.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "medium",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "DOM inspection found no view-transition CSS/API evidence, and routes are conventional MPA navigations with no cross-document transition declaration.",
      "pathIds": [
        "home",
        "article"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/article-dom.json"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "DOM and runtime probes found no active animation or scroll-linked motion, so no main-thread scroll animation anti-pattern was present.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/accessibility-platform.json",
        "evidence/reduced-motion.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Representative navigation uses native links and scrolling; no custom pointer gesture layer was observed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "medium",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The page exceeds 6,000 CSS pixels, while DOM/CSS inspection and screenshots show static chrome and no scroll progress or scroll-state treatment.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement after representative-path recon.",
      "evidence": "No tooltip, popover, or anchored floating-menu interaction was present on the representative public pages.",
      "reason": "No tooltip, popover, or anchored floating-menu interaction was present on the representative public pages."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Descriptive navigation labels, topic rows, article titles, and breadcrumbs provide explicit destination cues.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/article-mobile.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Desktop and mobile captures show a dark fixed layer covering the bottom portion of the viewport, with only a small close affordance at the far edge.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Desktop and mobile captures show a dark fixed layer covering the bottom portion of the viewport, with only a small close affordance at the far edge.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The first viewport has multiple navigation rows and a busy three-column composition; 394 requests include extensive advertising and recommendation infrastructure.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "At a 360x800 device viewport the layout primitive reports no viewport meta, a 980 CSS-pixel layout viewport, and scale 0.367; home, category, article, and search screenshots show tiny desktop text and controls.",
      "pathIds": [
        "home",
        "article",
        "category",
        "search"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "At a 360x800 device viewport the layout primitive reports no viewport meta, a 980 CSS-pixel layout viewport, and scale 0.367; home, category, article, and search screenshots show tiny desktop text and controls.",
      "pathIds": [
        "home",
        "article",
        "category",
        "search"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The platform probe counted 199 visible interactive elements below 24px in at least one dimension; scaling the desktop layout down makes targets still harder to acquire.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/accessibility-platform.json",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Home, category, article, and search pages communicate their news/search purpose with prominent Japanese titles and headlines.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "The core public flow from headline/listing to article and query URL to search results loaded without an auth wall or dead end.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "/sitemap.xml returned a 404 document containing a timed AutoJump back to home, which can erase context before users inspect recovery options.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/robots-sitemap.json"
      ],
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse measured LCP 4.2s, TBT 610ms, Speed Index 12.1s and time-to-interactive 32.7s; the CDP trace observed LCP 16.9s and 898ms total blocking time.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Observed CLS was 0.039 desktop/0.044 mobile and Lighthouse CLS was 0.006, all within the good threshold.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse measured LCP 4.2s, TBT 610ms, Speed Index 12.1s and time-to-interactive 32.7s; the CDP trace observed LCP 16.9s and 898ms total blocking time.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "HAR recorded 394 requests and 4.34MB transferred, including 110 scripts (2.44MB), parser-blocking legacy scripts, and missing cache headers on major resources.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse estimated 1,189KiB unused JavaScript and 176KiB unused CSS, while the HAR attributes 3.43MB to third parties.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse failed image-alt and link-name; the platform probe found unnamed logo/social links and images without alt text.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/accessibility-platform.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse found white #fff text on #9fb0bc at 2.23:1, below 4.5:1; no prefers-contrast/forced-colors adaptation was found.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse failed heading-order; the DOM probe found no main landmark, an empty H1, a second H1, and skipped heading levels. Focus outlines were visible, but structure remains confusing.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/accessibility-platform.json",
        "evidence/focus.json"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "At a 360x800 device viewport the layout primitive reports no viewport meta, a 980 CSS-pixel layout viewport, and scale 0.367; home, category, article, and search screenshots show tiny desktop text and controls.",
      "pathIds": [
        "home",
        "article",
        "category",
        "search"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "At a 360x800 device viewport the layout primitive reports no viewport meta, a 980 CSS-pixel layout viewport, and scale 0.367; home, category, article, and search screenshots show tiny desktop text and controls. The platform probe counted 199 visible interactive elements below 24px in at least one dimension; scaling the desktop layout down makes targets still harder to acquire.",
      "pathIds": [
        "home",
        "article",
        "category",
        "search"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png",
        "evidence/accessibility-platform.json"
      ],
      "findingIds": [
        "F02",
        "F13"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse recorded CORS failures, failed resources, an OpenX JSON parse error, and an uncaught pa.sendEvents TypeError.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The images primitive found 18 images without dimensions, 14 oversized images, 59/59 in legacy formats, 31 below-fold images not natively lazy-loaded, and no responsive sources for 13 relevant images.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse recorded CORS failures, failed resources, an OpenX JSON parse error, and an uncaught pa.sendEvents TypeError.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "All four templates expose descriptive titles and meta descriptions in rendered DOM.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/category-dom.json",
        "evidence/article-dom.json",
        "evidence/search-dom.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "At a 360x800 device viewport the layout primitive reports no viewport meta, a 980 CSS-pixel layout viewport, and scale 0.367; home, category, article, and search screenshots show tiny desktop text and controls.",
      "pathIds": [
        "home",
        "article",
        "category",
        "search"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "No canonical link was present on home, category, article, or search templates; /sitemap.xml returned 404. Raw HTML remained strong at 96% content coverage.",
      "pathIds": [
        "home",
        "article",
        "category",
        "search"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/category-dom.json",
        "evidence/article-dom.json",
        "evidence/search-dom.json",
        "evidence/robots-sitemap.json",
        "evidence/discoverability.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Pages provide Open Graph metadata; the article template additionally includes JSON-LD matching the visible article.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/article-dom.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "HTTPS is used, but CSP, HSTS, nosniff, Referrer-Policy and Permissions-Policy are missing; 13 of 21 observed cookies lacked Secure and many used SameSite=None.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F17"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The tracker probe found 78 third-party origins and 16 known tracker hosts; HAR recorded 314 third-party requests and 3.43MB transferred before user interaction.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F18"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "issues",
      "confidence": "medium",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Login/account surfaces and extensive Piano scripts are present, but DOM/source recon found no WebAuthn/passkey integration; no permission prompt fired on load.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/accessibility-platform.json"
      ],
      "findingIds": [
        "F19"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "HTTPS is used, but CSP, HSTS, nosniff, Referrer-Policy and Permissions-Policy are missing; 13 of 21 observed cookies lacked Secure and many used SameSite=None.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F17"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Discoverability comparison found 96% of rendered content words in raw HTML and no JS shell.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/discoverability.json",
        "evidence/discoverability-crawler.png",
        "evidence/discoverability-rendered.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Desktop and mobile captures show a dark fixed layer covering the bottom portion of the viewport, with only a small close affordance at the far edge.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement after representative-path recon.",
      "evidence": "This public news MPA is content-oriented rather than an app-like workflow; installability/offline app behavior was judged out of scope despite a push manifest.",
      "reason": "This public news MPA is content-oriented rather than an app-like workflow; installability/offline app behavior was judged out of scope despite a push manifest."
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "/sitemap.xml returned a 404 document containing a timed AutoJump back to home, which can erase context before users inspect recovery options.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/robots-sitemap.json"
      ],
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "All sampled templates declare html lang=ja and render in the expected left-to-right Japanese reading context.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/article-dom.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Visible dates and scores are rendered in Japanese conventions on the sampled, deliberately Japanese-localised site.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/article-mobile.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement after representative-path recon.",
      "evidence": "Representative pages show publication dates but no cross-time-zone scheduling or recurring-event workflow requiring zone conversion.",
      "reason": "Representative pages show publication dates but no cross-time-zone scheduling or recurring-event workflow requiring zone conversion."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "No consent wall, confirmshaming, hidden pricing, or forced-continuity flow appeared in the representative public reading/search screenshots.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/search-mobile.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement after representative-path recon.",
      "evidence": "The representative search flow has no required-field validation step; no user-data form was submitted.",
      "reason": "The representative search flow has no required-field validation step; no user-data form was submitted."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The search form works, but its text input has no autocomplete token or explicit aria-label in recon; the UI relies on surrounding presentation.",
      "pathIds": [
        "home",
        "search"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/search-mobile.png"
      ],
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement after representative-path recon.",
      "evidence": "Checkout, subscription cancellation, and authenticated account management require credentials or a purchase and were outside this public, non-destructive audit.",
      "reason": "Checkout, subscription cancellation, and authenticated account management require credentials or a purchase and were outside this public, non-destructive audit."
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The images primitive found 18 images without dimensions, 14 oversized images, 59/59 in legacy formats, 31 below-fold images not natively lazy-loaded, and no responsive sources for 13 relevant images.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Lighthouse estimated 1,189KiB unused JavaScript and 176KiB unused CSS, while the HAR attributes 3.43MB to third parties.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "Third parties account for 314 requests and 3.43MB; three YouTube thumbnails alone exceed 500KB, while every inspected image uses a legacy format.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/images.json"
      ],
      "findingIds": [
        "F22"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "issues",
      "confidence": "high",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "robots.txt disallows GPTBot, ChatGPT-User, Google-Extended, anthropic-ai and Claude-Web; recon found no WebMCP/agentic tool registration. This is an emerging opportunity, not a conventional SEO failure.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/robots-sitemap.json",
        "evidence/discoverability.json"
      ],
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement after representative-path recon.",
      "evidence": "No user task on the sampled news reading/search paths requires on-device inference; its absence is not a failure.",
      "reason": "No user task on the sampled news reading/search paths requires on-device inference; its absence is not a failure."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "issues",
      "confidence": "medium",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The baseline heap summary reported 1,049,842 nodes and 52.9MB self size; after ten end-to-end scroll cycles the post summary reported 1,324,198 nodes and 65.4MB. Dynamic ad/feed caching may explain some growth, so leak attribution is medium confidence.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-interaction.heapsnapshot"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "issues",
      "confidence": "medium",
      "method": "Direct visual, DOM, runtime, Lighthouse, or CDP evidence mapped to this atomic check.",
      "evidence": "The baseline heap summary reported 1,049,842 nodes and 52.9MB self size; after ten end-to-end scroll cycles the post summary reported 1,324,198 nodes and 65.4MB. Dynamic ad/feed caching may explain some growth, so leak attribution is medium confidence.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-interaction.heapsnapshot"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "high",
      "method": "Direct representative-path visual/DOM/runtime inspection.",
      "evidence": "Heap summaries did not surface Detached* constructors among dominant retained objects; no active animation or media timers appeared in runtime probes.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-interaction.heapsnapshot",
        "evidence/reduced-motion.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F11"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F03",
        "F04"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F02",
        "F13"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F07",
        "F08",
        "F09"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F10",
        "F11",
        "F12",
        "F02",
        "F13"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F14",
        "F15"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F02",
        "F16"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F17",
        "F18",
        "F19"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F03",
        "F20"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F15",
        "F09",
        "F22"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F24"
      ]
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage: primary headline discovery, global navigation, personalization/ad surface, and site-wide performance/security evidence.",
      "url": "https://www.nikkansports.com/",
      "conditions": [
        "desktop 1440x1000",
        "mobile 360x800",
        "prefers-color-scheme: dark",
        "prefers-reduced-motion: reduce",
        "keyboard focus",
        "raw HTML/no JavaScript comparison"
      ],
      "result": "issues"
    },
    {
      "id": "category",
      "description": "Baseball section listing: representative section/index template.",
      "url": "https://www.nikkansports.com/baseball/",
      "conditions": [
        "mobile 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "article",
      "description": "Current high-school baseball story: representative article/detail and reading journey.",
      "url": "https://www.nikkansports.com/baseball/highschool/news/202607200000456.html",
      "conditions": [
        "mobile 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "search",
      "description": "Search results for 大谷: representative query/form completion path.",
      "url": "https://www.nikkansports.com/search/index.html?q=%E5%A4%A7%E8%B0%B7",
      "conditions": [
        "mobile 360x800"
      ],
      "result": "issues"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "severity": "high",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "user-experience",
      "summary": "The site remains light-only when the user requests dark mode.",
      "evidence": "The dark-mode screenshot is visually unchanged from the desktop capture; computed styles report color-scheme: normal and a transparent/light surface.",
      "artifacts": [
        "evidence/home-dark.png",
        "evidence/home-dom.json"
      ],
      "suggestedFix": "Declare color-scheme: light dark and retint surfaces, text, borders, and browser UI with prefers-color-scheme or light-dark().",
      "effort": "medium"
    },
    {
      "id": "F02",
      "severity": "critical",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "responsive-no-horizontal-scroll",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "css",
      "summary": "Canonical pages render a fixed desktop canvas scaled down on phones.",
      "evidence": "At a 360x800 device viewport the layout primitive reports no viewport meta, a 980 CSS-pixel layout viewport, and scale 0.367; home, category, article, and search screenshots show tiny desktop text and controls.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json",
        "evidence/category-mobile.png",
        "evidence/article-mobile.png",
        "evidence/search-mobile.png"
      ],
      "suggestedFix": "Add width=device-width, initial-scale=1 and rebuild templates with fluid/intrinsic layout, responsive images, and component/container queries. Do not prevent zoom.",
      "effort": "large"
    },
    {
      "id": "F03",
      "severity": "high",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "guidanceCategory": "user-experience",
      "summary": "A sticky bottom advertising layer obscures article and listing content.",
      "evidence": "Desktop and mobile captures show a dark fixed layer covering the bottom portion of the viewport, with only a small close affordance at the far edge.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Remove the load-time obstruction or reserve non-overlapping space; if transient UI is essential, use a semantic, keyboard-operable, light-dismissible primitive.",
      "effort": "medium"
    },
    {
      "id": "F04",
      "severity": "medium",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "reduced-chrome",
      "guidanceId": "light-dismiss-a-dialog",
      "guidanceCategory": "user-experience",
      "summary": "Dense navigation, ads, rankings, job listings, and widgets compete with the news hierarchy.",
      "evidence": "The first viewport has multiple navigation rows and a busy three-column composition; 394 requests include extensive advertising and recommendation infrastructure.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Reduce secondary chrome, defer non-core modules, and establish a clear content hierarchy around headlines and article text.",
      "effort": "large"
    },
    {
      "id": "F05",
      "severity": "low",
      "confidence": "medium",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "same-document-transitions",
      "guidanceCategory": "user-experience",
      "summary": "Navigation and state changes use abrupt legacy swaps rather than view transitions.",
      "evidence": "DOM inspection found no view-transition CSS/API evidence, and routes are conventional MPA navigations with no cross-document transition declaration.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/article-dom.json"
      ],
      "suggestedFix": "Apply progressive cross-document View Transitions to article/list navigation, with reduced-motion handling and a fallback.",
      "effort": "medium"
    },
    {
      "id": "F06",
      "severity": "low",
      "confidence": "medium",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "shrinking-header-on-scroll",
      "guidanceCategory": "user-experience",
      "summary": "Long pages provide no scroll-aware header or progress cue.",
      "evidence": "The page exceeds 6,000 CSS pixels, while DOM/CSS inspection and screenshots show static chrome and no scroll progress or scroll-state treatment.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ],
      "suggestedFix": "For long article pages, add a restrained scroll-state-aware header or reading-progress cue without increasing chrome.",
      "effort": "medium"
    },
    {
      "id": "F07",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "summary": "Loading and interactivity are slow.",
      "evidence": "Lighthouse measured LCP 4.2s, TBT 610ms, Speed Index 12.1s and time-to-interactive 32.7s; the CDP trace observed LCP 16.9s and 898ms total blocking time.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-trace-summary.json"
      ],
      "suggestedFix": "Prioritise the LCP resource, delay non-critical scripts and widgets, break long tasks, and remeasure on representative templates.",
      "effort": "large"
    },
    {
      "id": "F08",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "summary": "The page ships an excessive render and network dependency footprint.",
      "evidence": "HAR recorded 394 requests and 4.34MB transferred, including 110 scripts (2.44MB), parser-blocking legacy scripts, and missing cache headers on major resources.",
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Remove or defer non-critical dependencies, load scripts with appropriate async/defer semantics, improve caching, and prioritise only the LCP image.",
      "effort": "large"
    },
    {
      "id": "F09",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "break-up-long-tasks",
      "guidanceCategory": "performance",
      "summary": "Large amounts of unused CSS and JavaScript are delivered.",
      "evidence": "Lighthouse estimated 1,189KiB unused JavaScript and 176KiB unused CSS, while the HAR attributes 3.43MB to third parties.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Audit tag-manager and ad-tech payloads, conditionally load optional integrations, remove duplicate/legacy bundles, and split code by user-visible feature.",
      "effort": "large"
    },
    {
      "id": "F10",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "summary": "Important images and links lack accessible names.",
      "evidence": "Lighthouse failed image-alt and link-name; the platform probe found unnamed logo/social links and images without alt text.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/accessibility-platform.json"
      ],
      "suggestedFix": "Give linked images meaningful alt text or aria-labels, use empty alt only for decoration, and ensure every focusable control has an accessible name.",
      "effort": "medium"
    },
    {
      "id": "F11",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "summary": "Text contrast and preference-adaptive contrast are insufficient.",
      "evidence": "Lighthouse found white #fff text on #9fb0bc at 2.23:1, below 4.5:1; no prefers-contrast/forced-colors adaptation was found.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/home-dom.json"
      ],
      "suggestedFix": "Raise contrast to WCAG minimums and add forced-colors/prefers-contrast treatment that preserves controls and text.",
      "effort": "small"
    },
    {
      "id": "F12",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "summary": "Heading and landmark structure is inconsistent.",
      "evidence": "Lighthouse failed heading-order; the DOM probe found no main landmark, an empty H1, a second H1, and skipped heading levels. Focus outlines were visible, but structure remains confusing.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/accessibility-platform.json",
        "evidence/focus.json"
      ],
      "suggestedFix": "Use one content H1, logical heading levels, and a main landmark while retaining the visible focus treatment.",
      "effort": "medium"
    },
    {
      "id": "F13",
      "severity": "medium",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "summary": "Many controls are too small for reliable touch use.",
      "evidence": "The platform probe counted 199 visible interactive elements below 24px in at least one dimension; scaling the desktop layout down makes targets still harder to acquire.",
      "artifacts": [
        "evidence/accessibility-platform.json",
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Use at least 24x24 CSS pixel targets (prefer 44x44 for primary touch controls), add spacing, and preserve non-hover and keyboard access.",
      "effort": "large"
    },
    {
      "id": "F14",
      "severity": "high",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "summary": "Third-party integrations generate runtime and network errors.",
      "evidence": "Lighthouse recorded CORS failures, failed resources, an OpenX JSON parse error, and an uncaught pa.sendEvents TypeError.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "suggestedFix": "Remove failing integrations or isolate and guard them so optional ad/analytics failures do not produce uncaught exceptions.",
      "effort": "medium"
    },
    {
      "id": "F15",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "summary": "Image and document asset hygiene is weak.",
      "evidence": "The images primitive found 18 images without dimensions, 14 oversized images, 59/59 in legacy formats, 31 below-fold images not natively lazy-loaded, and no responsive sources for 13 relevant images.",
      "artifacts": [
        "evidence/images.json"
      ],
      "suggestedFix": "Provide dimensions/aspect-ratio, srcset/sizes and AVIF/WebP variants; use native lazy loading below the fold and correctly sized sources.",
      "effort": "large"
    },
    {
      "id": "F16",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-discoverable",
      "principleCheckId": "canonical-and-indexing-signals",
      "summary": "Canonical and sitemap indexing signals are incomplete.",
      "evidence": "No canonical link was present on home, category, article, or search templates; /sitemap.xml returned 404. Raw HTML remained strong at 96% content coverage.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/category-dom.json",
        "evidence/article-dom.json",
        "evidence/search-dom.json",
        "evidence/robots-sitemap.json",
        "evidence/discoverability.json"
      ],
      "suggestedFix": "Emit self-referential canonical URLs for indexable templates and publish a sitemap index referenced from robots.txt.",
      "effort": "medium"
    },
    {
      "id": "F17",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "summary": "Important browser security headers and cookie protections are absent.",
      "evidence": "HTTPS is used, but CSP, HSTS, nosniff, Referrer-Policy and Permissions-Policy are missing; 13 of 21 observed cookies lacked Secure and many used SameSite=None.",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "suggestedFix": "Deploy a restrictive CSP, HSTS and nosniff; add referrer/permissions policies and mark all HTTPS cookies Secure with the narrowest SameSite/HttpOnly settings.",
      "effort": "medium"
    },
    {
      "id": "F18",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "privacy",
      "summary": "The page has an unusually large tracking and third-party footprint.",
      "evidence": "The tracker probe found 78 third-party origins and 16 known tracker hosts; HAR recorded 314 third-party requests and 3.43MB transferred before user interaction.",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/cookies.json"
      ],
      "suggestedFix": "Inventory every vendor, remove low-value trackers, obtain consent where required, batch analytics, shorten retention, and delay optional vendors until intent.",
      "effort": "large"
    },
    {
      "id": "F19",
      "severity": "medium",
      "confidence": "medium",
      "principleId": "be-private-and-secure",
      "principleCheckId": "in-context-permissions-and-modern-auth",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "summary": "The visible account flow exposes no evidence of phishing-resistant authentication.",
      "evidence": "Login/account surfaces and extensive Piano scripts are present, but DOM/source recon found no WebAuthn/passkey integration; no permission prompt fired on load.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/accessibility-platform.json"
      ],
      "suggestedFix": "Offer passkeys/WebAuthn alongside account recovery and request any browser permission only after an explanatory user action.",
      "effort": "large"
    },
    {
      "id": "F20",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-resilient",
      "principleCheckId": "network-and-http-failure-states",
      "guidanceId": "forms",
      "guidanceCategory": "forms",
      "summary": "The 404 state redirects users instead of offering durable recovery.",
      "evidence": "/sitemap.xml returned a 404 document containing a timed AutoJump back to home, which can erase context before users inspect recovery options.",
      "artifacts": [
        "evidence/robots-sitemap.json"
      ],
      "suggestedFix": "Keep error states stable, explain what failed, preserve the requested path, and offer explicit search, retry, back, and home actions.",
      "effort": "small"
    },
    {
      "id": "F21",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-trustworthy",
      "principleCheckId": "trustworthy-input-assistance",
      "guidanceId": "forms",
      "guidanceCategory": "forms",
      "summary": "Search input assistance is incomplete.",
      "evidence": "The search form works, but its text input has no autocomplete token or explicit aria-label in recon; the UI relies on surrounding presentation.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/search-mobile.png"
      ],
      "suggestedFix": "Associate a visible label with the search field, provide a useful autocomplete/search token, and keep clear submit semantics.",
      "effort": "small"
    },
    {
      "id": "F22",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "deliver-optimized-decorative-images",
      "guidanceCategory": "performance",
      "summary": "Third-party code and oversized media dominate the page budget.",
      "evidence": "Third parties account for 314 requests and 3.43MB; three YouTube thumbnails alone exceed 500KB, while every inspected image uses a legacy format.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/images.json"
      ],
      "suggestedFix": "Set a third-party budget, defer recommendation/ad/media modules, serve appropriately sized modern image formats, and avoid loading below-fold thumbnails before need.",
      "effort": "large"
    },
    {
      "id": "F23",
      "severity": "low",
      "confidence": "high",
      "principleId": "be-agent-ready",
      "principleCheckId": "structured-agent-capabilities",
      "guidanceId": "webmcp",
      "guidanceCategory": "ai",
      "summary": "Content is server-rendered but intentionally unavailable to major AI agents and exposes no structured agent actions.",
      "evidence": "robots.txt disallows GPTBot, ChatGPT-User, Google-Extended, anthropic-ai and Claude-Web; recon found no WebMCP/agentic tool registration. This is an emerging opportunity, not a conventional SEO failure.",
      "artifacts": [
        "evidence/robots-sitemap.json",
        "evidence/discoverability.json"
      ],
      "suggestedFix": "If agent reach is a product goal, define an explicit crawler policy and expose safe structured actions or article affordances instead of requiring scraping.",
      "effort": "large"
    },
    {
      "id": "F24",
      "severity": "medium",
      "confidence": "medium",
      "principleId": "be-memory-efficient",
      "principleCheckId": "no-leak-under-repeated-interaction",
      "guidanceId": "manage-recurring-intervals",
      "guidanceCategory": "performance",
      "summary": "Repeated scrolling is associated with substantial retained heap growth.",
      "evidence": "The baseline heap summary reported 1,049,842 nodes and 52.9MB self size; after ten end-to-end scroll cycles the post summary reported 1,324,198 nodes and 65.4MB. Dynamic ad/feed caching may explain some growth, so leak attribution is medium confidence.",
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-interaction.heapsnapshot"
      ],
      "suggestedFix": "Profile repeated scrolling in one DevTools session, identify retained nodes/listeners/timers, cap caches, tear down observers, and retest after garbage collection.",
      "effort": "large"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Build genuinely responsive templates and restore readable mobile/zoom behavior",
      "priority": 1,
      "findingIds": [
        "F02",
        "F13"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Cut the script, tracker, ad-tech, and third-party budget",
      "priority": 2,
      "findingIds": [
        "F07",
        "F08",
        "F09",
        "F14",
        "F18",
        "F22"
      ],
      "guidanceId": "performance",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Remove the content-obscuring sticky layer and simplify page chrome",
      "priority": 3,
      "findingIds": [
        "F03",
        "F04"
      ],
      "guidanceId": "light-dismiss-a-dialog",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Fix accessible names, heading structure, contrast, and search labelling",
      "priority": 4,
      "findingIds": [
        "F10",
        "F11",
        "F12",
        "F21"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Harden headers and cookies",
      "priority": 5,
      "findingIds": [
        "F17"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Modernise image delivery and dimensions",
      "priority": 6,
      "findingIds": [
        "F15"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Add canonical and sitemap signals",
      "priority": 7,
      "findingIds": [
        "F16"
      ],
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Profile retained heap growth during repeated scrolling",
      "priority": 8,
      "findingIds": [
        "F24"
      ],
      "guidanceId": "manage-recurring-intervals",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Add dark mode and preference-aware contrast",
      "priority": 9,
      "findingIds": [
        "F01"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T10",
      "title": "Improve durable 404/network recovery",
      "priority": 10,
      "findingIds": [
        "F20"
      ],
      "guidanceId": "forms",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 4,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-20T06-05-49-342Z"
}
