{
  "url": "https://weathernews.jp",
  "auditedAt": "2026-07-18T23:40:48.670Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete agentic audit of five representative public templates plus a not-found recovery state.",
  "page": {
    "appType": "hybrid",
    "framework": "Legacy multi-page templates with Vue/jQuery utilities",
    "notes": "Public Japanese weather, radar, emergency, forecast, and news service. A Google Funding Choices consent wall appears on every fresh profile."
  },
  "evidenceUsed": [
    "screenshot",
    "DOM",
    "evaluate-probe",
    "layout-metrics",
    "trace",
    "HAR",
    "Lighthouse",
    "discoverability",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "heap-summary",
    "raw HTTP robots/sitemap"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "accessibility",
    "performance",
    "privacy",
    "forms",
    "optimize-image-priority",
    "webmcp",
    "break-up-long-tasks",
    "identify-heavy-scripts",
    "light-dismiss-a-dialog",
    "visually-stable-font-fallbacks",
    "manage-recurring-intervals",
    "html",
    "fluid-scaling",
    "same-document-transitions",
    "size-aware-styling",
    "accessible-error-announcement",
    "security"
  ],
  "artifacts": [
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "cookies",
      "findingIds": [
        "F11"
      ]
    },
    {
      "type": "other",
      "path": "evidence/guidance-list.json",
      "caption": "guidance list",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guidance-searches.txt",
      "caption": "guidance searches",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-accessibility.md",
      "caption": "guide accessibility",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-accessible-error-announcement.md",
      "caption": "guide accessible error announcement",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-break-up-long-tasks.md",
      "caption": "guide break up long tasks",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-dark-mode.md",
      "caption": "guide dark mode",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-fluid-scaling.md",
      "caption": "guide fluid scaling",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-forms.md",
      "caption": "guide forms",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-html.md",
      "caption": "guide html",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-identify-heavy-scripts.md",
      "caption": "guide identify heavy scripts",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-light-dismiss-dialog.md",
      "caption": "guide light dismiss dialog",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-manage-intervals.md",
      "caption": "guide manage intervals",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-optimize-image-priority.md",
      "caption": "guide optimize image priority",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-performance.md",
      "caption": "guide performance",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-privacy.md",
      "caption": "guide privacy",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-same-document-transitions.md",
      "caption": "guide same document transitions",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-size-aware-styling.md",
      "caption": "guide size aware styling",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-visual-stability.md",
      "caption": "guide visual stability",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/guide-webmcp.md",
      "caption": "guide webmcp",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "headers",
      "findingIds": [
        "F11"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "home desktop",
      "findingIds": [
        "F01",
        "F02",
        "F12"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-crawler.png",
      "caption": "home discoverability crawler",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-rendered.png",
      "caption": "home discoverability rendered",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/home-discoverability.json",
      "caption": "home discoverability",
      "findingIds": [
        "F13"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-forced-colors.png",
      "caption": "home forced colors",
      "findingIds": [
        "F05"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-images.json",
      "caption": "home images",
      "findingIds": [
        "F04",
        "F09",
        "F15"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/home-layout-mobile.json",
      "caption": "home layout mobile",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile-content.png",
      "caption": "home mobile content",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile",
      "findingIds": [
        "F01",
        "F06"
      ]
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "home summary",
      "findingIds": [
        "F08",
        "F12",
        "F15"
      ]
    },
    {
      "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": []
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "lighthouse home",
      "findingIds": []
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-summary.json",
      "caption": "lighthouse summary",
      "findingIds": [
        "F04",
        "F05",
        "F06",
        "F07",
        "F08",
        "F09",
        "F10"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/not-found-mobile.png",
      "caption": "not found mobile",
      "findingIds": [
        "F14"
      ]
    },
    {
      "type": "other",
      "path": "evidence/not-found-probe.json",
      "caption": "not found probe",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/platform-probe.json",
      "caption": "platform probe",
      "findingIds": [
        "F03",
        "F08"
      ]
    },
    {
      "type": "other",
      "path": "evidence/quake-meta.json",
      "caption": "quake meta",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/quake-mobile.png",
      "caption": "quake mobile",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/radar-discoverability-crawler.png",
      "caption": "radar discoverability crawler",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/radar-discoverability-rendered.png",
      "caption": "radar discoverability rendered",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/radar-discoverability.json",
      "caption": "radar discoverability",
      "findingIds": [
        "F13"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/radar-heap-baseline.json",
      "caption": "radar heap baseline",
      "findingIds": [
        "F16"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/radar-heap-post-valid.json",
      "caption": "radar heap post valid",
      "findingIds": [
        "F16"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/radar-heap-post.json",
      "caption": "radar heap post",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/radar-mobile.png",
      "caption": "radar mobile",
      "findingIds": [
        "F01",
        "F03"
      ]
    },
    {
      "type": "other",
      "path": "evidence/recon-links.json",
      "caption": "recon links",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion.json",
      "caption": "reduced motion",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "secrets",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/topics-discoverability-crawler.png",
      "caption": "topics discoverability crawler",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/topics-discoverability-rendered.png",
      "caption": "topics discoverability rendered",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/topics-discoverability.json",
      "caption": "topics discoverability",
      "findingIds": [
        "F13"
      ]
    },
    {
      "type": "other",
      "path": "evidence/topics-links.json",
      "caption": "topics links",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/topics-mobile.png",
      "caption": "topics mobile",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "trackers",
      "findingIds": [
        "F12",
        "F15"
      ]
    },
    {
      "type": "other",
      "path": "evidence/ui-probe-mobile.json",
      "caption": "ui probe mobile",
      "findingIds": [
        "F04",
        "F06"
      ]
    },
    {
      "type": "other",
      "path": "evidence/week-meta.json",
      "caption": "week meta",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/week-mobile.png",
      "caption": "week mobile",
      "findingIds": [
        "F01",
        "F03"
      ]
    }
  ],
  "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": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F02.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dark.png"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Under prefers-reduced-motion: reduce, matchMedia was true and getAnimations() returned no active animations; no non-essential motion remained.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "The forced-colors: active and prefers-contrast: more screenshot retained visible text and controls; separate baseline contrast defects are recorded under be-inclusive.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F03.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No scroll-linked animation was present on representative templates, so there is no such implementation to assess.",
      "reason": "No scroll-linked animation was present on representative templates, so there is no such implementation to assess.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Representative pages use normal document scrolling and conventional map controls without observed motion that fights scrolling.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Representative mobile route screenshots expose breadcrumbs, labelled sections, and consistent header navigation that preserve orientation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No site-owned tooltip, popover, or floating menu requiring anchored positioning was present in the representative first-load paths.",
      "reason": "No site-owned tooltip, popover, or floating menu requiring anchored positioning was present in the representative first-load paths.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Representative mobile route screenshots expose breadcrumbs, labelled sections, and consistent header navigation that preserve orientation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F01.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png",
        "evidence/quake-mobile.png",
        "evidence/topics-mobile.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F01.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png",
        "evidence/quake-mobile.png",
        "evidence/topics-mobile.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "After accounting for the separately reported consent wall, the weather templates devote the main region to forecast, alert, radar, and news content with purposeful chrome.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "At 360x800, layout reported scrollWidth=clientWidth=360 and zero horizontal overflow with a viewport meta present.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F03.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F06.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/ui-probe-mobile.json",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Titles, h1s, weather maps, radar, forecast and emergency links make the purpose and next weather-information action explicit on representative paths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F01.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png",
        "evidence/quake-mobile.png",
        "evidence/topics-mobile.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F14.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/not-found-mobile.png"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F07.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Mobile layout observation measured CLS 0.0916, within the good <=0.1 range, with no horizontal overflow.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F07.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F08.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-summary.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F08.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-summary.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F04.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-images.json",
        "evidence/ui-probe-mobile.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F05.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-forced-colors.png"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F04.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-images.json",
        "evidence/ui-probe-mobile.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Representative screenshots show readable Japanese text layout and no horizontal clipping at 360 px.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F06.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/ui-probe-mobile.json",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F10.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F09.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-images.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F10.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "DOM/meta probes across homepage, weekly forecast, and earthquake pages found descriptive titles/descriptions, canonical links, real href links, JSON-LD and Open Graph metadata; robots.txt allows these public paths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F06.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/ui-probe-mobile.json",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "DOM/meta probes across homepage, weekly forecast, and earthquake pages found descriptive titles/descriptions, canonical links, real href links, JSON-LD and Open Graph metadata; robots.txt allows these public paths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "DOM/meta probes across homepage, weekly forecast, and earthquake pages found descriptive titles/descriptions, canonical links, real href links, JSON-LD and Open Graph metadata; robots.txt allows these public paths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F11.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F12.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/home-desktop.png"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Platform probe found no permission request signal on load; authentication is not part of the public representative paths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F11.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F13.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/radar-discoverability.json",
        "evidence/topics-discoverability.json"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Screenshots and DOM probes show stable route rendering and representative overlays remain inside the mobile viewport.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "Live forecasts, radar, and alerts are intrinsically network-dependent; a manifest exists, but full offline operation is not a reasonable requirement for this public real-time service.",
      "reason": "Live forecasts, radar, and alerts are intrinsically network-dependent; a manifest exists, but full offline operation is not a reasonable requirement for this public real-time service.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F14.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/not-found-mobile.png"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "The document declares lang=ja; representative pages render Japanese calendar/time labels, and network evidence includes dayjs UTC/timezone support for forecast data.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "The document declares lang=ja; representative pages render Japanese calendar/time labels, and network evidence includes dayjs UTC/timezone support for forecast data.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "The document declares lang=ja; representative pages render Japanese calendar/time labels, and network evidence includes dayjs UTC/timezone support for forecast data.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F01.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png",
        "evidence/quake-mobile.png",
        "evidence/topics-mobile.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No user-submitted transactional form was part of the representative public weather paths.",
      "reason": "No user-submitted transactional form was part of the representative public weather paths.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Representative public paths show no commercial continuity or account commitment; search/location controls use predictable native elements.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No checkout, subscription, authentication, or account-management flow was in the audited public scope.",
      "reason": "No checkout, subscription, authentication, or account-management flow was in the audited public scope.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F09.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-images.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F15.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json",
        "evidence/home-images.json"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F15.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json",
        "evidence/home-images.json"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "The public weather site does not declare an agent-facing capability surface; this emerging check is contextual.",
      "reason": "The public weather site does not declare an agent-facing capability surface; this emerging check is contextual.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No on-device inference use case is required for the site’s core forecast and safety-information tasks.",
      "reason": "No on-device inference use case is required for the site’s core forecast and safety-information tasks.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "issues",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F16.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/radar-heap-baseline.json",
        "evidence/radar-heap-post-valid.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "issues",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, security, discoverability, or heap evidence",
      "evidence": "Direct evidence is documented in F16.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/radar-heap-baseline.json",
        "evidence/radar-heap-post-valid.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "medium",
      "method": "Check-specific screenshot, DOM/evaluate, Lighthouse, network, discoverability, or heap evidence",
      "evidence": "Baseline and post heap summaries contained no Detached constructor among retained constructor summaries; no direct detached-DOM growth was observed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/ui-probe-mobile.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F03",
        "F06"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F14"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F07",
        "F08"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F04",
        "F05",
        "F06"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F10",
        "F09"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F11",
        "F12"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F13",
        "F14"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F09",
        "F15"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "The public weather site does not declare an agent-facing capability surface; this emerging check is contextual. No on-device inference use case is required for the site’s core forecast and safety-information tasks."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F16"
      ]
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and primary weather overview; global header, consent, main forecast, navigation, preference and mobile conditions.",
      "url": "https://weathernews.jp/",
      "conditions": [
        "1440x1000",
        "360x800",
        "prefers-color-scheme: dark",
        "prefers-reduced-motion: reduce",
        "forced-colors: active"
      ],
      "result": "issues"
    },
    {
      "id": "radar",
      "description": "Interactive rain-radar archetype and repeated-scroll memory exercise.",
      "url": "https://weathernews.jp/onebox/radar/",
      "conditions": [
        "360x800",
        "10 repeated full-page scroll cycles",
        "no-JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "week",
      "description": "Forecast listing/detail archetype with two-week tabular weather information.",
      "url": "https://weathernews.jp/onebox/tenki/week/",
      "conditions": [
        "360x800"
      ],
      "result": "issues"
    },
    {
      "id": "quake",
      "description": "Emergency-information archetype for time-sensitive earthquake content.",
      "url": "https://weathernews.jp/quake/",
      "conditions": [
        "360x800"
      ],
      "result": "issues"
    },
    {
      "id": "topics",
      "description": "News/content listing archetype and no-JavaScript crawler comparison.",
      "url": "https://weathernews.jp/s/topics/",
      "conditions": [
        "360x800",
        "no-JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "not-found",
      "description": "Recovery state for an invalid public URL.",
      "url": "https://weathernews.jp/definitely-not-a-real-weather-page",
      "conditions": [
        "360x800"
      ],
      "result": "issues"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "severity": "high",
      "confidence": "high",
      "summary": "A consent wall obscures every tested primary page on first load",
      "evidence": "Desktop and 360 px screenshots on the homepage, radar, forecast, earthquake, and news paths show a full-page modal before any weather content can be used. The first layer offers Consent and Manage options but no immediate reject action.",
      "suggestedFix": "Keep essential weather content available before consent; offer equally prominent accept and reject choices, and reserve a modal interruption only when legally necessary.",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "guidanceCategory": "user-experience",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png",
        "evidence/quake-mobile.png",
        "evidence/topics-mobile.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F02",
      "severity": "medium",
      "confidence": "high",
      "summary": "The site ignores the user’s dark color-scheme preference",
      "evidence": "The default and prefers-color-scheme: dark screenshots are byte-identical (298,988 bytes), and the page remains a hard-coded light interface.",
      "suggestedFix": "Declare color-scheme: light dark and use system-driven theme tokens or light-dark() for surfaces, text, controls, and browser chrome.",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "user-experience",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dark.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F03",
      "severity": "low",
      "confidence": "high",
      "summary": "Route changes have no transition continuity",
      "evidence": "The platform probe found no view-transition CSS and the site uses conventional full-document navigation across the representative forecast, radar, earthquake, and news routes.",
      "suggestedFix": "Add cross-document View Transitions for same-origin route changes with a no-motion fallback.",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "same-document-transitions",
      "guidanceCategory": "user-experience",
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/radar-mobile.png",
        "evidence/week-mobile.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F04",
      "severity": "high",
      "confidence": "high",
      "summary": "Important images and links lack accessible names and document structure is malformed",
      "evidence": "Lighthouse accessibility scored 0.78 and failed image-alt, link-name, and listitem. The image probe counted 97 of 100 images without alt; Lighthouse identified news links with no discernible name and li elements outside lists.",
      "suggestedFix": "Give meaningful images concise alt text, decorative images alt=\"\", name icon-only and news links, and place list items in ul/ol/menu containers.",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-images.json",
        "evidence/ui-probe-mobile.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F05",
      "severity": "medium",
      "confidence": "high",
      "summary": "Weather labels and consent text fail minimum contrast",
      "evidence": "Lighthouse found ratios of 3.29–3.70:1 for date/tab labels that require 4.5:1, plus consent text as low as 1.82:1.",
      "suggestedFix": "Adjust text and surface tokens to meet WCAG AA in every state, then re-run contrast checks in default and forced-color modes.",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-forced-colors.png"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F06",
      "severity": "high",
      "confidence": "high",
      "summary": "Mobile zoom is disabled and many controls are undersized",
      "evidence": "The page sends user-scalable=no and maximum-scale=1.0; Lighthouse failed meta-viewport. The mobile probe found many 30–36 px controls below a 44 px touch target.",
      "suggestedFix": "Remove user-scalable=no/maximum-scale, retain width=device-width, and enlarge or space touch targets to at least 44 CSS px where practical.",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "fluid-scaling",
      "guidanceCategory": "web-development",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/ui-probe-mobile.json",
        "evidence/home-mobile.png"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F07",
      "severity": "high",
      "confidence": "high",
      "summary": "Lab performance misses the modern loading bar",
      "evidence": "Mobile Lighthouse performance was 0.57 with LCP 12.1 s, Speed Index 7.2 s, TBT 330 ms, and TTI 19.5 s. The desktop trace was healthier at LCP 1.49 s, showing a material device/network sensitivity.",
      "suggestedFix": "Prioritise the true LCP resource, defer non-critical scripts, and break long work into scheduled chunks; verify on mobile throttling.",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F08",
      "severity": "high",
      "confidence": "high",
      "summary": "The critical path ships heavy, blocking, and weakly cached resources",
      "evidence": "The HAR recorded 176 requests and 3.22 MB transferred. Lighthouse estimated 693 KiB unused JS, 430 ms render-blocking savings, 1,521 KiB cache savings, and 847 KiB image savings. Parser-inserted jQuery and site scripts were confirmed without async/defer/module.",
      "suggestedFix": "Split and defer non-critical code, remove duplicate analytics bundles, consolidate critical CSS, set durable cache headers on versioned assets, and preload only the LCP asset.",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "performance",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-summary.json",
        "evidence/platform-probe.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F09",
      "severity": "medium",
      "confidence": "high",
      "summary": "Image markup and delivery waste bandwidth and risk shifts",
      "evidence": "The image audit found 58 images without dimensions, 15 oversized, 12 legacy-format images, and 8 without responsive sources; Lighthouse also failed unsized-images and estimated 847 KiB savings.",
      "suggestedFix": "Set width/height or aspect-ratio, emit responsive srcset/sizes, and serve appropriately compressed AVIF/WebP variants.",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "artifacts": [
        "evidence/home-images.json",
        "evidence/lighthouse-summary.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F10",
      "severity": "medium",
      "confidence": "high",
      "summary": "The page throws a production console error and uses deprecated unload handling",
      "evidence": "Lighthouse captured TypeError: googletag.pubads is not a function at the homepage and an unload listener from jQuery 3.0.0; the unload handler also blocks BFCache.",
      "suggestedFix": "Guard ad bootstrap ordering, update/remove obsolete jQuery integration, replace unload with pagehide/visibilitychange where needed, and restore BFCache eligibility.",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "html",
      "guidanceCategory": "html",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F11",
      "severity": "high",
      "confidence": "high",
      "summary": "Baseline browser security headers and secure cookie attributes are absent",
      "evidence": "The HTTPS document had no CSP, HSTS, nosniff, frame protection, Referrer-Policy, or Permissions-Policy. All seven observed first-party cookies lacked Secure and used SameSite=None.",
      "suggestedFix": "Add a nonce/hash-based CSP, HSTS, nosniff, frame-ancestors, strict referrer and permissions policies; mark HTTPS cookies Secure and choose Lax/Strict unless cross-site use is required.",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F12",
      "severity": "high",
      "confidence": "high",
      "summary": "The first load has a disproportionate advertising and tracking footprint",
      "evidence": "The tracker audit saw 20 third-party origins and six known tracker domains. The consent UI lists 210 partners, while the HAR shows multiple Google Analytics/Tag Manager bundles plus PubMatic, DoubleClick, and Amazon ad traffic.",
      "suggestedFix": "Block non-essential vendors until an informed choice, minimise the vendor list, consolidate analytics, and batch only the measurements needed for declared purposes.",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "privacy",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/home-desktop.png"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F13",
      "severity": "high",
      "confidence": "high",
      "summary": "Core radar and news content collapses without JavaScript",
      "evidence": "Discoverability found only 6% raw/rendered word coverage for radar and 0% for news, classifying both as JS shells; homepage coverage was only 14% despite raw title and h1.",
      "suggestedFix": "Server-render current forecast, radar summary, emergency status, and article-list content; enhance interactive maps and filters after that baseline.",
      "principleId": "be-resilient",
      "principleCheckId": "progressive-enhancement",
      "guidanceId": "html",
      "guidanceCategory": "html",
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/radar-discoverability.json",
        "evidence/topics-discoverability.json"
      ],
      "effort": "large",
      "pathId": "topics",
      "url": "https://weathernews.jp/s/topics/"
    },
    {
      "id": "F14",
      "severity": "medium",
      "confidence": "high",
      "summary": "The not-found state is a dead end",
      "evidence": "A deliberately invalid route returns a bare “404 Not Found” page with no site navigation, search, weather fallback, explanation in Japanese, or recovery link.",
      "suggestedFix": "Serve a branded, localized 404 with weather search, home/emergency links, and a clear explanation while preserving a real 404 status.",
      "principleId": "support-core-task-success",
      "principleCheckId": "clear-system-state-and-recovery",
      "guidanceId": "accessible-error-announcement",
      "guidanceCategory": "accessibility",
      "artifacts": [
        "evidence/not-found-mobile.png"
      ],
      "effort": "small",
      "pathId": "not-found",
      "url": "https://weathernews.jp/definitely-not-a-real-weather-page"
    },
    {
      "id": "F15",
      "severity": "medium",
      "confidence": "high",
      "summary": "The 3.22 MB first load is dominated by scripts, images, and ad technology",
      "evidence": "HAR totals were 1.39 MB script and 1.51 MB image across 176 requests; the largest scripts are ad bidding, DoubleClick, and three Google analytics/tag bundles.",
      "suggestedFix": "Set a per-template transfer budget, remove redundant tags, defer ads below core weather content, and optimise/cap live thumbnails.",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "performance",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json",
        "evidence/home-images.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://weathernews.jp/"
    },
    {
      "id": "F16",
      "severity": "medium",
      "confidence": "medium",
      "summary": "The interactive radar starts with an unusually large DOM/heap footprint and grows after repeated scrolling",
      "evidence": "The baseline radar heap held 802,550 nodes and 44.6 MB self size. After ten end-to-end scroll cycles a fresh post snapshot held 832,244 nodes and 48.1 MB (+29,694 nodes, +3.50 MB). No Detached constructor appeared in the summaries, so leak attribution remains medium-confidence.",
      "suggestedFix": "Profile retained paths in one long-lived session, remove hidden CMP/vendor DOM after choice, virtualise or recycle map/list nodes, and clear observers/timers on teardown.",
      "principleId": "be-memory-efficient",
      "principleCheckId": "bounded-footprint",
      "guidanceId": "manage-recurring-intervals",
      "guidanceCategory": "javascript",
      "artifacts": [
        "evidence/radar-heap-baseline.json",
        "evidence/radar-heap-post-valid.json"
      ],
      "effort": "large",
      "pathId": "radar",
      "url": "https://weathernews.jp/onebox/radar/"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Make weather content available before consent and provide symmetric accept/reject choices",
      "priority": 1,
      "findingIds": [
        "F01",
        "F12"
      ],
      "guidanceId": "privacy",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Restore accessible names, semantics, zoom, targets, and contrast",
      "priority": 2,
      "findingIds": [
        "F04",
        "F05",
        "F06"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Reduce mobile LCP and the script/ad critical path",
      "priority": 3,
      "findingIds": [
        "F07",
        "F08",
        "F15"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Deploy browser security policies and secure cookie attributes",
      "priority": 4,
      "findingIds": [
        "F11"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Server-render core weather, radar summaries, and news listings",
      "priority": 5,
      "findingIds": [
        "F13"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Optimise and dimension responsive images",
      "priority": 6,
      "findingIds": [
        "F09"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Profile and reduce radar/CMP memory retention",
      "priority": 7,
      "findingIds": [
        "F16"
      ],
      "guidanceId": "manage-recurring-intervals",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Add dark mode and route-transition continuity",
      "priority": 8,
      "findingIds": [
        "F02",
        "F03"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Fix production errors, BFCache, and the localized 404",
      "priority": 9,
      "findingIds": [
        "F10",
        "F14"
      ],
      "guidanceId": "html",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 6,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-18T23-40-48-670Z"
}
