{
  "url": "https://www.gov.uk",
  "auditedAt": "2026-07-20T04:40:09.666Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete atomic audit of six representative GOV.UK templates, one transactional step, and a 404 recovery state. Excluded: external sign-in destinations, authenticated account areas, payment/checkout, individual country pages, and every sitemap URL because they are separate hosts/flows or duplicate the selected archetypes.",
  "page": {
    "appType": "mpa",
    "framework": "Server-rendered GOV.UK frontend/templates",
    "notes": "Large public information and government-service directory. Representative templates were selected rather than attempting millions of sitemap URLs."
  },
  "evidenceUsed": [
    "screenshot",
    "DOM snapshot",
    "evaluate probe",
    "mobile layout metrics",
    "DevTools trace",
    "HAR",
    "Lighthouse",
    "discoverability/no-JavaScript comparison",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "heap summary"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "accessibility",
    "css-layout",
    "performance",
    "forms",
    "security",
    "privacy",
    "manage-recurring-intervals",
    "webmcp",
    "cross-document-transitions",
    "shrinking-header-on-scroll",
    "identify-heavy-scripts",
    "optimize-image-priority"
  ],
  "artifacts": [
    {
      "type": "other",
      "path": "evidence/404.json",
      "caption": "404"
    },
    {
      "type": "screenshot",
      "path": "evidence/404.png",
      "caption": "404"
    },
    {
      "type": "layout",
      "path": "evidence/benefits-layout.json",
      "caption": "benefits layout"
    },
    {
      "type": "screenshot",
      "path": "evidence/benefits.png",
      "caption": "benefits"
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "cookies"
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-article-crawler.png",
      "caption": "discoverability article crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-article-rendered.png",
      "caption": "discoverability article rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability-article.json",
      "caption": "discoverability article"
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-home-crawler.png",
      "caption": "discoverability home crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-home-rendered.png",
      "caption": "discoverability home rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability-home.json",
      "caption": "discoverability home"
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-search-crawler.png",
      "caption": "discoverability search crawler"
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-search-rendered.png",
      "caption": "discoverability search rendered"
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability-search.json",
      "caption": "discoverability search"
    },
    {
      "type": "other",
      "path": "evidence/guidance-list.json",
      "caption": "guidance list"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieved.md",
      "caption": "guidance retrieved"
    },
    {
      "type": "other",
      "path": "evidence/guidance-searches.jsonl",
      "caption": "guidance searches"
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "headers"
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.json",
      "caption": "heap baseline"
    },
    {
      "type": "heap",
      "path": "evidence/heap-post.json",
      "caption": "heap post"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-contrast.png",
      "caption": "home contrast"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark",
      "findingIds": [
        "F-001"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom"
    },
    {
      "type": "layout",
      "path": "evidence/home-layout-mobile.json",
      "caption": "home layout mobile",
      "findingIds": [
        "F-003",
        "F-004"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile"
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "home summary",
      "findingIds": [
        "F-005",
        "F-006"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "home trace summary",
      "findingIds": [
        "F-004"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "home trace"
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "home"
    },
    {
      "type": "screenshot",
      "path": "evidence/home.png",
      "caption": "home",
      "findingIds": [
        "F-001"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images.json",
      "caption": "images",
      "findingIds": [
        "F-006"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "lighthouse home",
      "findingIds": [
        "F-003",
        "F-005"
      ]
    },
    {
      "type": "other",
      "path": "evidence/lighthouse-summary.json",
      "caption": "lighthouse summary",
      "findingIds": [
        "F-003",
        "F-004",
        "F-005"
      ]
    },
    {
      "type": "other",
      "path": "evidence/menu-interaction.json",
      "caption": "menu interaction"
    },
    {
      "type": "other",
      "path": "evidence/probe-benefits.json",
      "caption": "probe benefits",
      "findingIds": [
        "F-002"
      ]
    },
    {
      "type": "other",
      "path": "evidence/probe-home.json",
      "caption": "probe home",
      "findingIds": [
        "F-001"
      ]
    },
    {
      "type": "other",
      "path": "evidence/probe-search.json",
      "caption": "probe search",
      "findingIds": [
        "F-002"
      ]
    },
    {
      "type": "other",
      "path": "evidence/probe-state-pension.json",
      "caption": "probe state pension",
      "findingIds": [
        "F-002"
      ]
    },
    {
      "type": "other",
      "path": "evidence/probe-travel.json",
      "caption": "probe travel"
    },
    {
      "type": "other",
      "path": "evidence/probe-universal-credit.json",
      "caption": "probe universal credit"
    },
    {
      "type": "other",
      "path": "evidence/recon.json",
      "caption": "recon"
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion.json",
      "caption": "reduced motion"
    },
    {
      "type": "other",
      "path": "evidence/script-placement.json",
      "caption": "script placement"
    },
    {
      "type": "layout",
      "path": "evidence/search-layout.json",
      "caption": "search layout"
    },
    {
      "type": "screenshot",
      "path": "evidence/search.png",
      "caption": "search"
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "secrets"
    },
    {
      "type": "layout",
      "path": "evidence/state-pension-layout.json",
      "caption": "state pension layout"
    },
    {
      "type": "other",
      "path": "evidence/state-pension-question.json",
      "caption": "state pension question"
    },
    {
      "type": "screenshot",
      "path": "evidence/state-pension-question.png",
      "caption": "state pension question"
    },
    {
      "type": "other",
      "path": "evidence/state-pension-start-link.json",
      "caption": "state pension start link"
    },
    {
      "type": "screenshot",
      "path": "evidence/state-pension.png",
      "caption": "state pension"
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "trackers"
    },
    {
      "type": "layout",
      "path": "evidence/travel-layout.json",
      "caption": "travel layout"
    },
    {
      "type": "screenshot",
      "path": "evidence/travel.png",
      "caption": "travel"
    },
    {
      "type": "layout",
      "path": "evidence/universal-credit-layout.json",
      "caption": "universal credit layout"
    },
    {
      "type": "screenshot",
      "path": "evidence/universal-credit.png",
      "caption": "universal credit"
    }
  ],
  "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": "screenshot comparison plus computed CSS media-rule probe",
      "evidence": "Screenshot and CSS probe under prefers-color-scheme: dark showed no palette adaptation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/home-dark.png"
      ],
      "findingIds": [
        "F-001"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "high",
      "method": "emulated preference plus getAnimations() and CSS inspection",
      "evidence": "The reduced-motion emulation was active, no running animations were exposed, and the stylesheet includes reduced-motion handling.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/reduced-motion.json",
        "evidence/probe-home.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "contrast emulation screenshot plus CSS inspection",
      "evidence": "Forced/high-contrast CSS rules are present and the prefers-contrast screenshot retained visible text and controls.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-contrast.png",
        "evidence/probe-home.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "medium",
      "method": "cross-template journey observation and CSS inspection",
      "evidence": "Representative same-origin route changes were abrupt and multiple templates had no View Transition declaration.",
      "pathIds": [
        "benefits",
        "article",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/probe-benefits.json",
        "evidence/probe-search.json",
        "evidence/probe-state-pension.json"
      ],
      "findingIds": [
        "F-002"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "pass",
      "confidence": "high",
      "method": "visual review and stylesheet animation-timeline inspection",
      "evidence": "No scroll-linked visual effect or scroll event animation was observed on the representative templates; the UI does not implement a main-thread parallax anti-pattern.",
      "pathIds": [
        "home",
        "article",
        "travel"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/universal-credit.png",
        "evidence/travel.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "high",
      "method": "DOM control inventory and interaction review",
      "evidence": "Navigation and disclosure interactions use native links, buttons, details, and standard scrolling; no custom pointermove gesture layer was observed.",
      "pathIds": [
        "home",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-search.json",
        "evidence/state-pension-question.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "pass",
      "confidence": "high",
      "method": "long-page screenshots and navigation DOM review",
      "evidence": "The audited pages avoid persistent sticky chrome that needs scroll-state adaptation; contents, step, and A-Z navigation remain available in document flow.",
      "pathIds": [
        "article",
        "calculator",
        "travel"
      ],
      "artifacts": [
        "evidence/universal-credit.png",
        "evidence/state-pension.png",
        "evidence/travel.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "pass",
      "confidence": "high",
      "method": "overlay inventory across representative templates",
      "evidence": "No tooltip or floating menu that could drift from an anchor was present on the audited paths; menus are in-flow and edge-safe.",
      "pathIds": [
        "home",
        "search"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-search.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "high",
      "method": "screenshots, heading inventory, and focus probe",
      "evidence": "Breadcrumbs, contents links, step navigation, descriptive headings, and visible focus cues consistently orient users.",
      "pathIds": [
        "benefits",
        "article",
        "calculator"
      ],
      "artifacts": [
        "evidence/benefits.png",
        "evidence/universal-credit.png",
        "evidence/state-pension.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "pass",
      "confidence": "high",
      "method": "first-load screenshots and overlay inventory",
      "evidence": "The cookie choice is an in-flow banner that pushes rather than obscures content, offers accept/reject/settings equally, and no modal interstitial appeared.",
      "pathIds": [
        "home",
        "article"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/universal-credit.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "pass",
      "confidence": "high",
      "method": "DOM primitive inventory",
      "evidence": "Audited controls use native buttons, fieldsets, radios, selects, and details; no ad-hoc modal div was found.",
      "pathIds": [
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/probe-search.json",
        "evidence/state-pension-question.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "pass",
      "confidence": "high",
      "method": "visual review across archetypes",
      "evidence": "Screenshots show a restrained design with content-dominant layouts, limited framing, and consistent navigation/footer chrome.",
      "pathIds": [
        "home",
        "article",
        "travel"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/universal-credit.png",
        "evidence/travel.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "high",
      "method": "mobile layout metrics across templates",
      "evidence": "All six representative templates reported 0px horizontal overflow at 360x800 and included a viewport meta tag.",
      "pathIds": [
        "home",
        "benefits",
        "article",
        "search",
        "calculator",
        "travel"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/benefits-layout.json",
        "evidence/universal-credit-layout.json",
        "evidence/search-layout.json",
        "evidence/state-pension-layout.json",
        "evidence/travel-layout.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "pass",
      "confidence": "high",
      "method": "stylesheet signal probe plus narrow screenshots",
      "evidence": "Container-query and logical-property signals are present in major shared templates, and mobile screenshots show components reflowing rather than merely shrinking.",
      "pathIds": [
        "home",
        "benefits",
        "article"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-benefits.json",
        "evidence/home-mobile.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse accessibility plus focus and mobile visual probe",
      "evidence": "Lighthouse accessibility scored 1.0; controls retained strong focus styling and the mobile layouts kept controls usable.",
      "pathIds": [
        "home",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/probe-home.json",
        "evidence/state-pension-question.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "first-viewport screenshots and heading/form inventory",
      "evidence": "Each archetype exposes a descriptive H1 and an obvious next action: search, topic links, contents, country lookup, or Start now.",
      "pathIds": [
        "home",
        "benefits",
        "article",
        "search",
        "calculator",
        "travel"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/state-pension.png",
        "evidence/probe-search.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "high",
      "method": "representative search and calculator journey walkthrough",
      "evidence": "A passport query returned 5,962 filterable results and the State Pension journey advanced from its landing page to a clearly labelled first question without an account wall.",
      "pathIds": [
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/probe-search.json",
        "evidence/state-pension-question.png",
        "evidence/state-pension-question.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "pass",
      "confidence": "high",
      "method": "result-state DOM review and deliberate 404 exercise",
      "evidence": "The search reports its result count and a deliberately invalid route returns a titled 404 with homepage and search recovery routes.",
      "pathIds": [
        "search",
        "not-found"
      ],
      "artifacts": [
        "evidence/probe-search.json",
        "evidence/404.json",
        "evidence/404.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse plus trace and layout observer",
      "evidence": "Lighthouse measured LCP 1.6s and TBT 0ms but CLS 0.565, above the good threshold.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json",
        "evidence/home-layout-mobile.json"
      ],
      "findingIds": [
        "F-003"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "two independent layout-shift observations",
      "evidence": "Lighthouse reported CLS 0.565; the separate mobile observer also recorded a late shift at 2.37s, though only 0.0129.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-layout-mobile.json"
      ],
      "findingIds": [
        "F-004"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "DevTools trace and Lighthouse",
      "evidence": "The trace and Lighthouse both recorded zero long tasks/zero total blocking time.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "pass",
      "confidence": "high",
      "method": "HAR summary confirmed against live script attributes",
      "evidence": "The load transferred 205,446 bytes in 17 successful requests with no cache, compression, redirect, or HTTP hygiene warnings; the flagged application script is type=module at the body end and therefore deferred by platform semantics.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/script-placement.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse code-coverage diagnostics",
      "evidence": "Lighthouse estimated 26,909 bytes unused JS and 39,277 bytes unused CSS on the homepage.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F-005"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse accessibility and DOM form inventory",
      "evidence": "Lighthouse accessibility scored 1.0 with image-alt, form-label, and link-name audits passing; DOM probes found labels on representative fields.",
      "pathIds": [
        "home",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/probe-search.json",
        "evidence/state-pension-question.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse contrast audit and emulated screenshot",
      "evidence": "Lighthouse colour contrast passed and the high-contrast screenshot preserved legible controls and text.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-contrast.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse structure audit, landmark inventory, and focus probe",
      "evidence": "Lighthouse heading order passed; landmarks and headings were present on all templates, with skip navigation and visible high-contrast focus styling.",
      "pathIds": [
        "home",
        "article",
        "search"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/probe-home.json",
        "evidence/probe-universal-credit.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "high",
      "method": "visual review across desktop and narrow layouts",
      "evidence": "Representative desktop and 360px screenshots show generous line spacing, readable measure, clear hierarchy, and no clipping or overflow.",
      "pathIds": [
        "home",
        "article",
        "travel"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/universal-credit.png",
        "evidence/travel.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "pass",
      "confidence": "high",
      "method": "mobile layouts, viewport inspection, and Lighthouse",
      "evidence": "All templates reflowed at 360px without horizontal overflow, viewport scaling was not disabled, and Lighthouse accessibility scored 1.0. No audited path contained time-based media requiring captions.",
      "pathIds": [
        "home",
        "benefits",
        "article",
        "search",
        "calculator",
        "travel"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-layout-mobile.json",
        "evidence/travel-layout.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse console-errors audit",
      "evidence": "Lighthouse found no browser errors logged to the console.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse best-practices plus image inventory",
      "evidence": "Lighthouse doctype and charset audits passed; all homepage images had explicit dimensions and correct display proportions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/images.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse best-practices and journey observation",
      "evidence": "Lighthouse best-practices scored 1.0 and reported no BFCache blocker; no permission prompt or paste prevention appeared during the paths.",
      "pathIds": [
        "home",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "DOM metadata probes across templates",
      "evidence": "Every representative template had a descriptive title and meta description.",
      "pathIds": [
        "home",
        "benefits",
        "article",
        "search",
        "calculator",
        "travel"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-benefits.json",
        "evidence/probe-universal-credit.json",
        "evidence/probe-search.json",
        "evidence/probe-state-pension.json",
        "evidence/probe-travel.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse SEO, robots/sitemap fetch, discoverability diff",
      "evidence": "Lighthouse SEO scored 1.0; links, viewport, and robots audits passed, while raw HTML retained all rendered content words.",
      "pathIds": [
        "home",
        "article",
        "search"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/recon.json",
        "evidence/discoverability-home.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "high",
      "method": "metadata probes plus robots/sitemap and fetch status",
      "evidence": "Public pages returned 200 and robots.txt points to a current sitemap; canonical URLs were present on homepage, article, calculator, and intentionally noindexed search canonicalized to the search endpoint.",
      "pathIds": [
        "home",
        "article",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/probe-home.json",
        "evidence/probe-universal-credit.json",
        "evidence/probe-search.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "high",
      "method": "JSON-LD/Open Graph inventory",
      "evidence": "Entity-bearing article and service templates exposed JSON-LD and Open Graph metadata; the homepage also exposed social metadata.",
      "pathIds": [
        "home",
        "article",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-universal-credit.json",
        "evidence/probe-state-pension.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "pass",
      "confidence": "high",
      "method": "headers and cookie primitives",
      "evidence": "HTTPS, nonce-based CSP, HSTS, nosniff, frame protection, Referrer-Policy, and Permissions-Policy were present. The sole first-party preference cookie was Secure and not authentication-sensitive.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "pass",
      "confidence": "high",
      "method": "HAR and tracker primitives",
      "evidence": "Before optional consent, the network and tracker probes observed zero third-party requests/origins and no known trackers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "pass",
      "confidence": "high",
      "method": "load observation and form inventory",
      "evidence": "No browser permission request occurred on load and no authentication form was present in the audited GOV.UK templates; sign-in destinations were links to separate services, so passkey support was not asserted here.",
      "pathIds": [
        "home",
        "article"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-universal-credit.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "pass",
      "confidence": "high",
      "method": "security headers and cookies primitives",
      "evidence": "HSTS, SAMEORIGIN/frame-ancestors, a nonce CSP, strict-origin referrer policy, and a permissions policy were all active; no third-party cookie was set.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "discoverability no-JavaScript comparison",
      "evidence": "Raw-server HTML contained 100% of rendered content words on homepage, article, and search, with titles/descriptions preserved and no empty app shell.",
      "pathIds": [
        "home",
        "article",
        "search"
      ],
      "artifacts": [
        "evidence/discoverability-home.json",
        "evidence/discoverability-article.json",
        "evidence/discoverability-search.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "high",
      "method": "menu interaction, overlay inventory, and Lighthouse",
      "evidence": "Native, in-flow controls avoided clipped overlays; the menu toggled aria-expanded predictably and no console/runtime error was reported.",
      "pathIds": [
        "home",
        "search"
      ],
      "artifacts": [
        "evidence/menu-interaction.json",
        "evidence/probe-search.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "high",
      "method": "site-type and manifest recon",
      "evidence": "The audited property is a public, server-rendered information and service directory rather than an installable web app; offline completion of live government transactions was not treated as a requirement.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json"
      ],
      "reason": "The audited property is a public, server-rendered information and service directory rather than an installable web app; offline completion of live government transactions was not treated as a requirement."
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "pass",
      "confidence": "high",
      "method": "deliberate HTTP failure exercise",
      "evidence": "A deliberate unknown route returned a clear Page not found state, status code 404, and actionable homepage/search recovery.",
      "pathIds": [
        "not-found"
      ],
      "artifacts": [
        "evidence/404.json",
        "evidence/404.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "high",
      "method": "DOM language and stylesheet inspection",
      "evidence": "All representative documents declared lang=en and shared CSS included logical inline/block properties; content and reading order were coherent.",
      "pathIds": [
        "home",
        "benefits",
        "article",
        "search",
        "calculator",
        "travel"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-search.json",
        "evidence/probe-travel.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "not-applicable",
      "confidence": "high",
      "method": "content and form inventory",
      "evidence": "The representative public paths are deliberately UK-English and did not present currency, user-locale number formatting, or locale-selectable data requiring an Intl comparison.",
      "pathIds": [
        "search",
        "article"
      ],
      "artifacts": [
        "evidence/probe-search.json",
        "evidence/probe-universal-credit.json"
      ],
      "reason": "The representative public paths are deliberately UK-English and did not present currency, user-locale number formatting, or locale-selectable data requiring an Intl comparison."
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "content and form inventory",
      "evidence": "No audited path displayed or accepted time-zone-sensitive events or timestamps; a time-zone/DST implementation claim would be fabricated.",
      "pathIds": [
        "search",
        "article"
      ],
      "artifacts": [
        "evidence/probe-search.json",
        "evidence/probe-universal-credit.json"
      ],
      "reason": "No audited path displayed or accepted time-zone-sensitive events or timestamps; a time-zone/DST implementation claim would be fabricated."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "first-load and journey visual review",
      "evidence": "Cookie accept and reject actions have equal prominence, settings are linked, and no disguised advertising, forced continuity, or confirmshaming appeared.",
      "pathIds": [
        "home",
        "calculator"
      ],
      "artifacts": [
        "evidence/home.png",
        "evidence/state-pension.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "pass",
      "confidence": "high",
      "method": "form DOM and error-state walkthrough",
      "evidence": "The calculator uses a clear fieldset/radio question and preserves browser/server navigation; the exercised 404 uses plain language and recovery actions rather than blame.",
      "pathIds": [
        "calculator",
        "not-found"
      ],
      "artifacts": [
        "evidence/state-pension-question.json",
        "evidence/state-pension-question.png",
        "evidence/404.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "pass",
      "confidence": "high",
      "method": "form field and autocomplete inventory",
      "evidence": "Search and filter inputs had explicit labels and appropriate input types; autocomplete=off was limited to searches and a bot-trap, not personal identity/payment fields.",
      "pathIds": [
        "home",
        "search",
        "calculator"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/probe-search.json",
        "evidence/state-pension-question.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "route and form inventory",
      "evidence": "No checkout, subscription, authentication, consent grant beyond optional cookies, or account-management form was part of the representative GOV.UK-owned paths; outbound sign-in services were not audited as this host.",
      "pathIds": [
        "home",
        "article"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/probe-universal-credit.json"
      ],
      "reason": "No checkout, subscription, authentication, consent grant beyond optional cookies, or account-management form was part of the representative GOV.UK-owned paths; outbound sign-in services were not audited as this host."
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "images primitive and HAR",
      "evidence": "The image audit found four legacy PNG promotional images and one 240px app icon rendered at 80px, although all were dimensioned and lazy-loaded.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F-006"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "pass",
      "confidence": "high",
      "method": "HAR and trace summaries",
      "evidence": "The page loaded only 17 requests, transferred 205KB, had no third-party requests, and trace observers saw no long tasks or persistent animation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-trace-summary.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "pass",
      "confidence": "high",
      "method": "HAR resource budget and visual review",
      "evidence": "The homepage transferred 205KB with zero third-party bytes, no audio/video, no autoplay, and only 25KB of images.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.png"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "site profile and no-JavaScript content inspection",
      "evidence": "This is an information and navigation publication with crawlable semantic HTML, not a declared agent-action surface; no WebMCP capability requirement was inferred.",
      "pathIds": [
        "home",
        "article"
      ],
      "artifacts": [
        "evidence/discoverability-home.json",
        "evidence/discoverability-article.json"
      ],
      "reason": "This is an information and navigation publication with crawlable semantic HTML, not a declared agent-action surface; no WebMCP capability requirement was inferred."
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "feature and script inventory",
      "evidence": "No summarisation or language-model feature is offered on the audited pages, so requiring on-device inference would add a feature unrelated to the site’s stated tasks.",
      "pathIds": [
        "home",
        "article"
      ],
      "artifacts": [
        "evidence/probe-home.json",
        "evidence/home-summary.json"
      ],
      "reason": "No summarisation or language-model feature is offered on the audited pages, so requiring on-device inference would add a feature unrelated to the site’s stated tasks."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "high",
      "method": "baseline and post-interaction heap summaries",
      "evidence": "After ten menu open/close cycles, heap grew only 69,109 bytes (1.14%) and 800 nodes (0.71%); constructor populations remained essentially stable.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "high",
      "method": "heap summary and DOM inventory",
      "evidence": "The homepage heap was about 6.04MB with 112,444 snapshot nodes, proportionate for the 129-control server-rendered page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/probe-home.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "high",
      "method": "before/after heap constructor comparison",
      "evidence": "No Detached constructor appeared among the top constructors, and repeated menu interaction added only 7 closures and 2 arrays, with no material accumulation signal.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F-001"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F-002"
      ]
    },
    {
      "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": "pass"
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F-003",
        "F-004",
        "F-005"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F-006"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "The site has no declared agent-facing or on-device-inference surface; both emerging checks were judged out of scope with check-specific rationales."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and global navigation template; entry point, cookie choice, search, and service discovery.",
      "url": "https://www.gov.uk/",
      "conditions": [
        "desktop",
        "360x800",
        "prefers-color-scheme: dark",
        "prefers-contrast: more",
        "prefers-reduced-motion: reduce",
        "keyboard focus"
      ],
      "result": "issues"
    },
    {
      "id": "benefits",
      "description": "Topic listing archetype representing browse and taxonomy navigation.",
      "url": "https://www.gov.uk/browse/benefits",
      "conditions": [
        "desktop",
        "360x800"
      ],
      "result": "issues"
    },
    {
      "id": "article",
      "description": "Long-form guidance archetype with contents navigation and structured metadata.",
      "url": "https://www.gov.uk/universal-credit",
      "conditions": [
        "desktop",
        "360x800",
        "JavaScript disabled crawler view"
      ],
      "result": "issues"
    },
    {
      "id": "search",
      "description": "Search results and filtering form, representing query and refinement tasks.",
      "url": "https://www.gov.uk/search/all?keywords=passport",
      "conditions": [
        "desktop",
        "360x800",
        "JavaScript disabled crawler view"
      ],
      "result": "issues"
    },
    {
      "id": "calculator",
      "description": "Transactional service landing page and first State Pension calculator question.",
      "url": "https://www.gov.uk/state-pension-age",
      "conditions": [
        "desktop",
        "360x800",
        "first journey step"
      ],
      "result": "issues"
    },
    {
      "id": "travel",
      "description": "Large A-Z listing and country-search archetype.",
      "url": "https://www.gov.uk/foreign-travel-advice",
      "conditions": [
        "desktop",
        "360x800"
      ],
      "result": "issues"
    },
    {
      "id": "not-found",
      "description": "Representative HTTP failure and recovery state.",
      "url": "https://www.gov.uk/this-page-does-not-exist-web-uplift",
      "conditions": [
        "404 response"
      ],
      "result": "pass"
    }
  ],
  "findings": [
    {
      "id": "F-001",
      "pathId": "home",
      "url": "https://www.gov.uk/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "user-experience",
      "severity": "medium",
      "confidence": "high",
      "summary": "GOV.UK does not adapt its palette to the user’s dark colour-scheme preference.",
      "evidence": "The prefers-color-scheme: dark screenshot is pixel-identical in appearance and file size (69,468 bytes) to the default screenshot; the computed CSS probe found no prefers-color-scheme or light-dark() rule.",
      "artifacts": [
        "evidence/home.png",
        "evidence/home-dark.png",
        "evidence/probe-home.json"
      ],
      "suggestedFix": "Declare color-scheme and add a preference-driven dark palette using prefers-color-scheme or light-dark(), preserving GOV.UK contrast and forced-colour behavior.",
      "effort": "medium"
    },
    {
      "id": "F-002",
      "pathId": "article",
      "url": "https://www.gov.uk/universal-credit",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "cross-document-transitions",
      "guidanceCategory": "css",
      "severity": "low",
      "confidence": "medium",
      "summary": "Cross-document navigation still swaps pages abruptly rather than using progressively enhanced View Transitions.",
      "evidence": "Representative MPA journeys across homepage, topic, guidance, search, and calculator pages were exercised; no visible transition was present, and several template probes contained no view-transition CSS. The pages remain fully usable.",
      "artifacts": [
        "evidence/probe-benefits.json",
        "evidence/probe-search.json",
        "evidence/probe-state-pension.json"
      ],
      "suggestedFix": "Progressively enable same-origin cross-document View Transitions and use restrained directional transitions that are disabled under reduced motion.",
      "effort": "medium"
    },
    {
      "id": "F-003",
      "pathId": "home",
      "url": "https://www.gov.uk/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "severity": "high",
      "confidence": "high",
      "summary": "The lab Core Web Vitals run fails the good CLS threshold despite fast paint and an idle main thread.",
      "evidence": "Lighthouse measured LCP 1.6 s and TBT 0 ms, but CLS 0.565, producing a performance score of 0.78. A separate 360px layout observation measured CLS 0.0129, so the shift is condition-sensitive but reproducible in Lighthouse.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-summary.json",
        "evidence/home-layout-mobile.json"
      ],
      "suggestedFix": "Use a Lighthouse trace to identify the shifted nodes, reserve their space before paint, and verify CLS below 0.1 across clean desktop and mobile runs.",
      "effort": "medium"
    },
    {
      "id": "F-004",
      "pathId": "home",
      "url": "https://www.gov.uk/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "severity": "high",
      "confidence": "high",
      "summary": "The homepage has a substantial condition-dependent layout shift during the Lighthouse load.",
      "evidence": "Lighthouse reported cumulative layout shift 0.565. The independent mobile observer saw one smaller shift at 2.37 s (0.0129), confirming late movement even though the magnitude differed by run condition.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-layout-mobile.json",
        "evidence/home-trace-summary.json"
      ],
      "suggestedFix": "Locate the Lighthouse layout-shift sources, reserve dimensions for late UI, fonts, and consent state, then regression-test clean-profile loads.",
      "effort": "medium"
    },
    {
      "id": "F-005",
      "pathId": "home",
      "url": "https://www.gov.uk/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "performance",
      "severity": "low",
      "confidence": "high",
      "summary": "The homepage ships a mostly unused shared CSS bundle and a substantially unused JavaScript bundle.",
      "evidence": "Lighthouse estimated 39,277 bytes (93.2%) of the 42,156-byte application CSS and 26,909 bytes (64.3%) of the 41,825-byte application JavaScript were unused on the homepage.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/lighthouse-home.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Split template-specific CSS and JavaScript from the shared bundle, preserving caching while loading homepage features conditionally.",
      "effort": "medium"
    },
    {
      "id": "F-006",
      "pathId": "home",
      "url": "https://www.gov.uk/",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "severity": "low",
      "confidence": "high",
      "summary": "Homepage promotional raster assets are all legacy PNGs, and the app icon is delivered at three times its rendered width.",
      "evidence": "The images primitive found 4 legacy PNG images and the 240px GOV.UK app icon rendered at 80px. All images had explicit dimensions and below-fold lazy loading, limiting the impact.",
      "artifacts": [
        "evidence/images.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Serve appropriately sized AVIF/WebP alternatives with responsive sources while retaining the existing width, height, and lazy-loading behavior.",
      "effort": "small"
    }
  ],
  "taskList": [
    {
      "id": "T-001",
      "title": "Identify and eliminate the clean-load homepage layout shift",
      "priority": 1,
      "findingIds": [
        "F-003",
        "F-004"
      ],
      "guidanceId": "performance",
      "status": "open"
    },
    {
      "id": "T-002",
      "title": "Add a preference-driven dark colour scheme",
      "priority": 2,
      "findingIds": [
        "F-001"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T-003",
      "title": "Split unused shared CSS and JavaScript by template/feature",
      "priority": 3,
      "findingIds": [
        "F-005"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T-004",
      "title": "Right-size and modernise homepage promotional images",
      "priority": 4,
      "findingIds": [
        "F-006"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T-005",
      "title": "Progressively enhance MPA navigation with restrained cross-document transitions",
      "priority": 5,
      "findingIds": [
        "F-002"
      ],
      "guidanceId": "cross-document-transitions",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 7,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-20T04-40-09-666Z"
}
