{
  "url": "https://labs.google",
  "auditedAt": "2026-07-18T20:49:02.219Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Atomic coverage complete across 58 checks and five representative page templates plus the 404 recovery state.",
  "page": {
    "appType": "hybrid",
    "framework": "Angular homepage/detail/form templates plus a Next.js Flow template",
    "notes": "Public AI-experiment directory. Representative coverage excludes authenticated experiences and external product hosts because they are separate origins."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "layout-metrics",
    "evaluate-probe",
    "trace",
    "har",
    "discoverability",
    "headers",
    "cookies",
    "trackers",
    "images",
    "secrets",
    "heap-summary",
    "Lighthouse",
    "axe-core",
    "Modern Web Guidance"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "accessibility",
    "forms",
    "performance",
    "security",
    "privacy",
    "optimize-image-priority",
    "break-up-long-tasks",
    "identify-heavy-scripts",
    "fluid-scaling",
    "improve-text-layout-and-legibility",
    "manage-recurring-intervals"
  ],
  "artifacts": [
    {
      "type": "screenshot",
      "path": "evidence/404-mobile.png",
      "caption": "404 mobile"
    },
    {
      "type": "other",
      "path": "evidence/404-probe.json",
      "caption": "404 probe"
    },
    {
      "type": "other",
      "path": "evidence/axe.json",
      "caption": "axe",
      "findingIds": [
        "F05",
        "F06",
        "F07"
      ]
    },
    {
      "type": "other",
      "path": "evidence/carousel-interaction.json",
      "caption": "carousel interaction"
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "cookies"
    },
    {
      "type": "screenshot",
      "path": "evidence/dreambeans-discoverability-crawler.png",
      "caption": "dreambeans discoverability crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/dreambeans-discoverability-rendered.png",
      "caption": "dreambeans discoverability rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/dreambeans-discoverability.json",
      "caption": "dreambeans discoverability"
    },
    {
      "type": "dom",
      "path": "evidence/dreambeans-dom.json",
      "caption": "dreambeans dom"
    },
    {
      "type": "other",
      "path": "evidence/dreambeans-meta.json",
      "caption": "dreambeans meta"
    },
    {
      "type": "screenshot",
      "path": "evidence/dreambeans.png",
      "caption": "dreambeans"
    },
    {
      "type": "dom",
      "path": "evidence/flow-dom.json",
      "caption": "flow dom",
      "findingIds": [
        "F07"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/flow-mobile.png",
      "caption": "flow mobile"
    },
    {
      "type": "other",
      "path": "evidence/focus-targets.json",
      "caption": "focus targets"
    },
    {
      "type": "screenshot",
      "path": "evidence/fx-tools-flow-discoverability-crawler.png",
      "caption": "fx tools flow discoverability crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/fx-tools-flow-discoverability-rendered.png",
      "caption": "fx tools flow discoverability rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/fx-tools-flow-discoverability.json",
      "caption": "fx tools flow discoverability"
    },
    {
      "type": "other",
      "path": "evidence/fx-tools-flow-meta.json",
      "caption": "fx tools flow meta",
      "findingIds": [
        "F07"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "headers",
      "findingIds": [
        "F08"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.heapsnapshot",
      "caption": "heap baseline"
    },
    {
      "type": "heap",
      "path": "evidence/heap-post.heapsnapshot",
      "caption": "heap post"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "home desktop"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-crawler.png",
      "caption": "home discoverability crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-rendered.png",
      "caption": "home discoverability rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/home-discoverability.json",
      "caption": "home discoverability"
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom"
    },
    {
      "type": "layout",
      "path": "evidence/home-mobile-layout.json",
      "caption": "home mobile layout"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile"
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "home summary",
      "findingIds": [
        "F03"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "home trace summary",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "home trace",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "home",
      "findingIds": [
        "F03"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images.json",
      "caption": "images",
      "findingIds": [
        "F11"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-summary.json",
      "caption": "lighthouse summary",
      "findingIds": [
        "F02",
        "F04",
        "F05",
        "F12"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse.json",
      "caption": "lighthouse",
      "findingIds": [
        "F04"
      ]
    },
    {
      "type": "other",
      "path": "evidence/mwg-list.json",
      "caption": "mwg list"
    },
    {
      "type": "other",
      "path": "evidence/mwg-retrieved.md",
      "caption": "mwg retrieved"
    },
    {
      "type": "other",
      "path": "evidence/mwg-searches.jsonl",
      "caption": "mwg searches"
    },
    {
      "type": "screenshot",
      "path": "evidence/newsletter-dark.png",
      "caption": "newsletter dark",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/newsletter-discoverability-crawler.png",
      "caption": "newsletter discoverability crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/newsletter-discoverability-rendered.png",
      "caption": "newsletter discoverability rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/newsletter-discoverability.json",
      "caption": "newsletter discoverability"
    },
    {
      "type": "dom",
      "path": "evidence/newsletter-dom.json",
      "caption": "newsletter dom"
    },
    {
      "type": "other",
      "path": "evidence/newsletter-invalid.json",
      "caption": "newsletter invalid",
      "findingIds": [
        "F09"
      ]
    },
    {
      "type": "other",
      "path": "evidence/newsletter-meta.json",
      "caption": "newsletter meta"
    },
    {
      "type": "screenshot",
      "path": "evidence/newsletter-mobile.png",
      "caption": "newsletter mobile",
      "findingIds": [
        "F01",
        "F09"
      ]
    },
    {
      "type": "other",
      "path": "evidence/newsletter-probe.json",
      "caption": "newsletter probe",
      "findingIds": [
        "F09",
        "F10"
      ]
    },
    {
      "type": "other",
      "path": "evidence/preferences-css.json",
      "caption": "preferences css",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "other",
      "path": "evidence/recon.json",
      "caption": "recon"
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion.json",
      "caption": "reduced motion"
    },
    {
      "type": "other",
      "path": "evidence/runtime-probe.json",
      "caption": "runtime probe"
    },
    {
      "type": "screenshot",
      "path": "evidence/science-discoverability-crawler.png",
      "caption": "science discoverability crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/science-discoverability-rendered.png",
      "caption": "science discoverability rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/science-discoverability.json",
      "caption": "science discoverability",
      "findingIds": [
        "F13"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/science-dom.json",
      "caption": "science dom"
    },
    {
      "type": "other",
      "path": "evidence/science-meta.json",
      "caption": "science meta"
    },
    {
      "type": "screenshot",
      "path": "evidence/science.png",
      "caption": "science"
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "secrets"
    },
    {
      "type": "other",
      "path": "evidence/site-map.json",
      "caption": "site map"
    },
    {
      "type": "other",
      "path": "evidence/structural-probe.json",
      "caption": "structural probe",
      "findingIds": [
        "F03",
        "F06",
        "F07"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "trackers"
    }
  ],
  "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": "preference screenshot and CSS probe",
      "evidence": "Preference screenshots and computed styles were compared.",
      "pathIds": [
        "newsletter"
      ],
      "artifacts": [
        "evidence/newsletter-dark.png",
        "evidence/preferences-css.json"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "high",
      "method": "evaluate under reduced-motion",
      "evidence": "Emulated prefers-reduced-motion: reduce produced zero active animations and exposed multiple explicit reduction rules.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/reduced-motion.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "axe and preference CSS probe",
      "evidence": "axe contrast and preference CSS were inspected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/axe.json",
        "evidence/preferences-css.json"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "pass",
      "confidence": "medium",
      "method": "repeat carousel interaction and inspect animations",
      "evidence": "Repeated carousel changes produced bounded CSS animations and clear active-state updates rather than abrupt swaps.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/carousel-interaction.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "pass",
      "confidence": "high",
      "method": "live stylesheet probe",
      "evidence": "CSS inspection found four scroll-timeline/animation-timeline rules.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/structural-probe.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "medium",
      "method": "DOM and interaction inspection",
      "evidence": "Carousels provide native previous/next buttons, skip affordance and declarative animation; no fighting pointer-only gesture was observed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/structural-probe.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "pass",
      "confidence": "medium",
      "method": "screenshot and CSS/DOM inspection",
      "evidence": "Fixed labelled navigation and declarative scroll timelines preserve orientation through the long homepage.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/structural-probe.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "No tooltip, popover, or floating-menu surface appears on the representative paths.",
      "reason": "No tooltip, popover, or floating-menu surface appears on the representative paths.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "high",
      "method": "DOM interaction affordance inspection",
      "evidence": "Carousel sections expose previous/next controls, aria-current progress state, category tabs, and a skip-to-next-section link.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/structural-probe.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "pass",
      "confidence": "high",
      "method": "load screenshots across templates",
      "evidence": "Screenshots show a dismissible consent notice with equal Agree and No thanks actions; no unrelated pop-up or interstitial was present.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/newsletter-mobile.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "No site-authored transient overlay or disclosure control appears on the representative paths; the Google consent component is an external platform control with native buttons.",
      "reason": "No site-authored transient overlay or disclosure control appears on the representative paths; the Google consent component is an external platform control with native buttons.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "pass",
      "confidence": "high",
      "method": "visual review across templates",
      "evidence": "Screenshots show content-led hero, listing, and detail layouts with restrained navigation chrome.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/dreambeans.png",
        "evidence/science.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "high",
      "method": "mobile layout metrics and screenshots",
      "evidence": "At 360x800 the layout primitive reports scrollWidth 360, clientWidth 360 and 0 px horizontal overflow; mobile screenshots remain usable.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/home-mobile.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "pass",
      "confidence": "medium",
      "method": "cross-viewport visual comparison",
      "evidence": "Distinct desktop/mobile screenshots show carousel, navigation, form and product components reflowing within their available width without overflow.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/newsletter-mobile.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "pass",
      "confidence": "medium",
      "method": "programmatic focus and target-size probe",
      "evidence": "Focus probe shows visible browser or authored focus indicators on primary controls, and measured primary targets are generally at least 44 px; mobile navigation remains button-operated.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/focus-targets.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "first-viewport screenshots",
      "evidence": "Each first viewport clearly names its experiment or task and presents Try it now, Learn more, Join Waitlist, Express interest, or signup content.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/dreambeans.png",
        "evidence/science.png",
        "evidence/newsletter-mobile.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "issues",
      "confidence": "high",
      "method": "form submission probe",
      "evidence": "The newsletter flow was exercised with an empty submission.",
      "pathIds": [
        "newsletter"
      ],
      "artifacts": [
        "evidence/newsletter-invalid.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "state exercise",
      "evidence": "Invalid form and invalid-route recovery states were exercised.",
      "pathIds": [
        "newsletter"
      ],
      "artifacts": [
        "evidence/newsletter-invalid.json",
        "evidence/404-probe.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse and trace",
      "evidence": "Lighthouse and a DevTools trace measured load responsiveness and stability.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "pass",
      "confidence": "high",
      "method": "layout observer and Lighthouse",
      "evidence": "Mobile layout observation measured CLS 0.00025 and Lighthouse measured 0.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "trace and Lighthouse",
      "evidence": "Trace recorded only 17.42 ms TBT with three ~50–60 ms long tasks; Lighthouse TBT was 180 ms.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "HAR plus DOM confirmation",
      "evidence": "HAR and DOM media probes measured delivery.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/structural-probe.json"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse",
      "evidence": "Lighthouse code coverage diagnostics quantified unused JavaScript.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "axe and DOM",
      "evidence": "axe and semantic DOM probes examined accessible naming and roles.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/axe.json",
        "evidence/structural-probe.json"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "axe and Lighthouse",
      "evidence": "axe and Lighthouse measured text contrast.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/axe.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "axe, DOM and focus probe",
      "evidence": "Landmarks/headings and focus indicators were inspected across templates.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/axe.json",
        "evidence/focus-targets.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "medium",
      "method": "multi-viewport screenshot review",
      "evidence": "Visual inspection shows comfortable line lengths and unclipped type on detail/listing pages at tested viewports, apart from separately reported contrast.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/dreambeans.png",
        "evidence/science.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "pass",
      "confidence": "medium",
      "method": "viewport, target and media probe",
      "evidence": "Viewport permits scaling, mobile layouts reflow without overflow, and principal controls measure around 44–65 px; autoplay hero media is muted/decorative.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/structural-probe.json",
        "evidence/focus-targets.json",
        "evidence/home-mobile-layout.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse console audit",
      "evidence": "Lighthouse errors-in-console audit passed with no entries.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "DOM, image and Lighthouse probes",
      "evidence": "Doctype, charset, media and responsive-image delivery were inspected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/structural-probe.json",
        "evidence/images.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse",
      "evidence": "Lighthouse best-practice diagnostics were inspected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "issues",
      "confidence": "high",
      "method": "discoverability and meta probes",
      "evidence": "Rendered and raw crawler metadata were compared across routes.",
      "pathIds": [
        "science"
      ],
      "artifacts": [
        "evidence/science-discoverability.json",
        "evidence/science-meta.json"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "high",
      "method": "DOM/meta and robots probes",
      "evidence": "All representative pages expose viewport metadata; navigation uses real href links; robots permits crawling and points to a sitemap.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/site-map.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "high",
      "method": "meta, sitemap and invalid-route probes",
      "evidence": "Representative pages return rendered content, expose canonical URLs, robots allows indexing, sitemap lists routes, and the tested 404 is explicitly noindex.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/site-map.json",
        "evidence/404-probe.json",
        "evidence/dreambeans-meta.json",
        "evidence/science-meta.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "high",
      "method": "metadata probe across routes",
      "evidence": "Every representative page exposes Open Graph metadata and one JSON-LD block matching its visible page type/content.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/structural-probe.json",
        "evidence/newsletter-probe.json",
        "evidence/dreambeans-meta.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "headers primitive",
      "evidence": "Transport and main-document response headers were inspected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "pass",
      "confidence": "medium",
      "method": "cookies, trackers and network probes",
      "evidence": "No cookies were set before consent; analytics requests carried denied/non-personalised consent signals, although two known analytics origins were contacted.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/cookies.json",
        "evidence/trackers.json",
        "evidence/runtime-probe.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "No permission or authentication surface appears in the covered public discovery and newsletter journeys.",
      "reason": "No permission or authentication surface appears in the covered public discovery and newsletter journeys.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "headers primitive",
      "evidence": "Browser-enforced policy headers were inspected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "discoverability primitive across routes",
      "evidence": "Raw HTML retained 80–97% of rendered content across five templates and none was a JS shell.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/newsletter-discoverability.json",
        "evidence/fx-tools-flow-discoverability.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "medium",
      "method": "route screenshots, console and repeated interaction",
      "evidence": "Representative routes and repeated carousel interaction completed without exceptions; controls and state remained present.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/carousel-interaction.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "The audited surfaces are public marketing/content and server-dependent AI product entry pages; offline completion is not a meaningful core task.",
      "reason": "The audited surfaces are public marketing/content and server-dependent AI product entry pages; offline completion is not a meaningful core task.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "pass",
      "confidence": "high",
      "method": "invalid-route screenshot and DOM probe",
      "evidence": "An invalid route presents a clear 404 explanation and a Go Home recovery link, with noindex set.",
      "pathIds": [
        "not-found"
      ],
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/404-probe.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "medium",
      "method": "cross-route DOM/meta and mobile screenshots",
      "evidence": "All representative documents declare lang=en, preserve coherent reading order, and reflow at mobile width.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/newsletter-meta.json",
        "evidence/flow-mobile.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "The representative pages expose no dates, currencies, locale-sensitive numbers, durations, or calendars.",
      "reason": "The representative pages expose no dates, currencies, locale-sensitive numbers, durations, or calendars.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "The representative pages expose no events or time values.",
      "reason": "The representative pages expose no events or time values.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "visual and form inspection",
      "evidence": "Consent offers equally prominent Agree and No thanks controls; signup terms/data-use text is visible and a Clear form action is present.",
      "pathIds": [
        "newsletter"
      ],
      "artifacts": [
        "evidence/newsletter-mobile.png",
        "evidence/newsletter-probe.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "issues",
      "confidence": "high",
      "method": "invalid form interaction",
      "evidence": "The empty newsletter form was submitted and invalid/error announcements inspected.",
      "pathIds": [
        "newsletter"
      ],
      "artifacts": [
        "evidence/newsletter-invalid.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "issues",
      "confidence": "high",
      "method": "form DOM probe",
      "evidence": "Identity-field autocomplete metadata was inspected.",
      "pathIds": [
        "newsletter"
      ],
      "artifacts": [
        "evidence/newsletter-probe.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "No checkout, subscription billing, authentication, or account-management flow exists in the covered site-owned surfaces.",
      "reason": "No checkout, subscription billing, authentication, or account-management flow exists in the covered site-owned surfaces.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "images primitive",
      "evidence": "Rendered and intrinsic image dimensions, formats and srcset were inspected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "HAR and DOM media probe",
      "evidence": "HAR and media probes quantified eager background/non-visible transfers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/structural-probe.json"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "HAR and tracker probe",
      "evidence": "HAR and tracker probes quantified media and third-party cost.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "The audited host is a marketing directory linking to separate experiments, not an agent-facing transactional surface; structured tool exposure is not required for this host.",
      "reason": "The audited host is a marketing directory linking to separate experiments, not an agent-facing transactional surface; structured tool exposure is not required for this host.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "recon and representative-path applicability judgement",
      "evidence": "The directory and signup pages contain no local inference task where a built-in model or summariser would improve the experience.",
      "reason": "The directory and signup pages contain no local inference task where a built-in model or summariser would improve the experience.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "medium",
      "method": "baseline and post-interaction heap-summary comparison",
      "evidence": "After ten full-page scroll cycles, heap size was 25.21 MB versus 23.91 MB baseline (+5.4%); closure count fell slightly and large typed-array populations stayed identical, with no unbounded pattern established.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post.heapsnapshot"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "medium",
      "method": "heap summary and Performance.memory",
      "evidence": "Baseline retained self size was 23.91 MB for a media-rich Angular directory; runtime JS heap was about 17.3 MB, proportionate to the observed page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/runtime-probe.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "medium",
      "method": "before/after heap constructor comparison",
      "evidence": "Heap summaries list no Detached* constructor among top retained populations; closure count changed from 23,054 to 22,986 after repetition.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post.heapsnapshot"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F05"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F02",
        "F03",
        "F04"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F06",
        "F05",
        "F07"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F11",
        "F12"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F09",
        "F10"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F11",
        "F03"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "All checks were judged not applicable to this marketing/directory host."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and experiment directory: primary discovery journey and shared Angular template.",
      "url": "https://labs.google/",
      "conditions": [
        "desktop 1440x1000",
        "mobile 360x800",
        "prefers-color-scheme: dark",
        "prefers-reduced-motion: reduce",
        "keyboard focus",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "dreambeans",
      "description": "Experiment detail archetype with app-store and waitlist calls to action.",
      "url": "https://labs.google/dreambeans",
      "conditions": [
        "desktop 1440x1000",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "science",
      "description": "Distinct science listing template representing themed collection pages.",
      "url": "https://labs.google/science",
      "conditions": [
        "desktop 1440x1000",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "newsletter",
      "description": "Primary public form flow, including empty submission and mobile rendering.",
      "url": "https://labs.google/newsletter",
      "conditions": [
        "mobile 360x800",
        "prefers-color-scheme: dark",
        "empty form submission",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "flow",
      "description": "Next.js product/tool detail template and app-like marketing surface.",
      "url": "https://labs.google/fx/tools/flow",
      "conditions": [
        "mobile 360x800",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "not-found",
      "description": "Invalid-route recovery state.",
      "url": "https://labs.google/this-route-does-not-exist",
      "conditions": [
        "mobile 360x800"
      ],
      "result": "pass"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "pathId": "newsletter",
      "url": "https://labs.google/newsletter",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "user-experience",
      "severity": "medium",
      "confidence": "high",
      "summary": "The newsletter template ignores the user’s dark colour-scheme preference.",
      "evidence": "The newsletter screenshots are visually unchanged under default and prefers-color-scheme: dark, while the computed probe reports color-scheme: normal and finds no prefers-color-scheme rule.",
      "artifacts": [
        "evidence/newsletter-mobile.png",
        "evidence/newsletter-dark.png",
        "evidence/preferences-css.json"
      ],
      "suggestedFix": "Declare color-scheme: light dark and use preference-driven tokens or light-dark() for page surfaces, text, fields, and browser chrome.",
      "effort": "small"
    },
    {
      "id": "F02",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "severity": "high",
      "confidence": "high",
      "summary": "The homepage misses the good LCP range.",
      "evidence": "Mobile Lighthouse measured LCP 4.9 s, FCP 4.0 s, Speed Index 15.5 s and performance 0.62; the independent trace measured LCP 3.70 s and FCP 2.97 s.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json",
        "evidence/home-trace.json"
      ],
      "suggestedFix": "Prioritise only the initial hero candidate, defer non-visible media, and shorten its critical request chain following the performance guidance.",
      "effort": "medium"
    },
    {
      "id": "F03",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "severity": "high",
      "confidence": "high",
      "summary": "The homepage eagerly transfers a disproportionate set of hero videos.",
      "evidence": "The HAR captured 16.24 MB across 49 requests, including 12.46 MB of media; the DOM probe found four muted autoplay videos, including 5.83 MB, 3.78 MB, 1.89 MB and 0.79 MB hero files.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har",
        "evidence/structural-probe.json"
      ],
      "suggestedFix": "Load and prioritise only the visible hero poster/video, lazy-load subsequent slides after intent or idle time, and provide responsive encodes.",
      "effort": "medium"
    },
    {
      "id": "F04",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Substantial JavaScript is shipped but unused on initial load.",
      "evidence": "Lighthouse estimated 349 KiB unused JavaScript: 229 KiB from the 561 KiB main bundle and about 128 KiB across Google Tag Manager scripts.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/lighthouse.json"
      ],
      "suggestedFix": "Route-split optional experiments and load analytics conditionally after consent or idle time.",
      "effort": "medium"
    },
    {
      "id": "F05",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Important homepage text has extremely low contrast.",
      "evidence": "axe and Lighthouse both report four serious failures at roughly 1.14:1, including “Be the first to experiment”, About copy, and “Stay connected”.",
      "artifacts": [
        "evidence/axe.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Change text/surface tokens so normal text reaches 4.5:1 and large text 3:1 in every carousel/background state, then test forced colours.",
      "effort": "small"
    },
    {
      "id": "F06",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "Carousel progress indicators use prohibited ARIA attributes.",
      "evidence": "axe reports aria-label and aria-current on four div elements without a valid role.",
      "artifacts": [
        "evidence/axe.json",
        "evidence/structural-probe.json"
      ],
      "suggestedFix": "Use actual buttons for interactive progress controls, or remove prohibited ARIA from non-interactive indicators and expose state through a valid pattern.",
      "effort": "small"
    },
    {
      "id": "F07",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "Landmark and heading structure is inconsistent across major templates.",
      "evidence": "axe reports pre-footer content outside landmarks; the homepage has no main landmark and renders several H2s before its H1, while the Flow page exposes no H1 at all.",
      "artifacts": [
        "evidence/axe.json",
        "evidence/structural-probe.json",
        "evidence/flow-dom.json",
        "evidence/fx-tools-flow-meta.json"
      ],
      "suggestedFix": "Wrap primary content in main, put a descriptive H1 first on each template, and keep subsequent headings hierarchical.",
      "effort": "small"
    },
    {
      "id": "F08",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "severity": "high",
      "confidence": "high",
      "summary": "The main document omits baseline browser security headers.",
      "evidence": "The headers primitive confirms HTTPS but no CSP, HSTS, X-Content-Type-Options, clickjacking protection, Referrer-Policy, or Permissions-Policy.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "suggestedFix": "Add a restrictive CSP and HSTS first, then nosniff, frame-ancestors, Referrer-Policy and a minimal Permissions-Policy at the edge.",
      "effort": "medium"
    },
    {
      "id": "F09",
      "pathId": "newsletter",
      "url": "https://labs.google/newsletter",
      "principleId": "be-trustworthy",
      "principleCheckId": "humane-error-handling",
      "guidanceId": "forms",
      "guidanceCategory": "forms",
      "severity": "high",
      "confidence": "high",
      "summary": "The newsletter form marks fields required visually but provides no native or announced invalid state.",
      "evidence": "First name, last name and email display “*” but required=false; empty requestSubmit produced zero :invalid fields, no role=alert/aria-live message, and no recovery feedback.",
      "artifacts": [
        "evidence/newsletter-probe.json",
        "evidence/newsletter-invalid.json",
        "evidence/newsletter-mobile.png"
      ],
      "suggestedFix": "Apply required and meaningful names, validate after interaction, connect field-level messages with aria-describedby, and announce the error summary.",
      "effort": "small"
    },
    {
      "id": "F10",
      "pathId": "newsletter",
      "url": "https://labs.google/newsletter",
      "principleId": "be-trustworthy",
      "principleCheckId": "trustworthy-input-assistance",
      "guidanceId": "forms",
      "guidanceCategory": "forms",
      "severity": "medium",
      "confidence": "high",
      "summary": "Newsletter identity fields omit autocomplete metadata.",
      "evidence": "The form probe reports empty autocomplete values for first name, last name and email.",
      "artifacts": [
        "evidence/newsletter-probe.json"
      ],
      "suggestedFix": "Use autocomplete=\"given-name\", \"family-name\", and \"email\", plus stable name attributes.",
      "effort": "trivial"
    },
    {
      "id": "F11",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Many experiment images are oversized and lack responsive candidates.",
      "evidence": "The images primitive found 8 oversized images and 16 of 20 without srcset; a 4320 px Learn Your Way image displays at 277 px.",
      "artifacts": [
        "evidence/images.json"
      ],
      "suggestedFix": "Generate width-based WebP/AVIF candidates, add sizes/srcset, and cap source dimensions to realistic rendered sizes.",
      "effort": "medium"
    },
    {
      "id": "F12",
      "pathId": "home",
      "url": "https://labs.google/",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "severity": "low",
      "confidence": "high",
      "summary": "The production JavaScript bundle has no usable source map.",
      "evidence": "Lighthouse valid-source-maps reports the large main-M4OSHQNV.js file is missing a source map.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Publish a production source map to an authenticated error-monitoring endpoint or expose a restricted map that DevTools can resolve.",
      "effort": "small"
    },
    {
      "id": "F13",
      "pathId": "science",
      "url": "https://labs.google/science",
      "principleId": "be-discoverable",
      "principleCheckId": "title-and-description",
      "guidanceId": "accessibility",
      "guidanceCategory": "html",
      "severity": "low",
      "confidence": "medium",
      "summary": "The Science page’s meta description is not present in raw crawler HTML.",
      "evidence": "The discoverability primitive found the rendered page description but metaDescriptionPresentInRaw=false, reducing parity for non-JavaScript crawlers.",
      "artifacts": [
        "evidence/science-discoverability.json"
      ],
      "suggestedFix": "Server-render the description in the initial head for the Science route.",
      "effort": "trivial"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Stop eagerly transferring non-visible hero videos and optimise responsive media",
      "priority": 1,
      "findingIds": [
        "F02",
        "F03",
        "F11"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Add baseline security response headers",
      "priority": 2,
      "findingIds": [
        "F08"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Fix homepage colour contrast in every carousel/background state",
      "priority": 3,
      "findingIds": [
        "F05"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Make newsletter validation semantic, announced, and recoverable",
      "priority": 4,
      "findingIds": [
        "F09"
      ],
      "guidanceId": "forms",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Repair landmarks, headings, and carousel ARIA semantics",
      "priority": 5,
      "findingIds": [
        "F06",
        "F07"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Split unused JavaScript and defer analytics",
      "priority": 6,
      "findingIds": [
        "F04"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Respect dark-mode preference on the newsletter template",
      "priority": 7,
      "findingIds": [
        "F01"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Add autocomplete tokens to newsletter identity fields",
      "priority": 8,
      "findingIds": [
        "F10"
      ],
      "guidanceId": "forms",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Server-render the Science meta description",
      "priority": 9,
      "findingIds": [
        "F13"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T10",
      "title": "Publish a production-debugging source map",
      "priority": 10,
      "findingIds": [
        "F12"
      ],
      "guidanceId": "performance",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 6,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-18T20-49-02-219Z"
}
