{
  "url": "https://www.sondakika.com",
  "auditedAt": "2026-07-19T10:43:32.709Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Atomic coverage complete across 58/58 checks and five representative paths.",
  "page": {
    "appType": "mpa",
    "framework": "server-rendered multi-page site",
    "notes": "Public Turkish news site. Covered homepage, section, article, currency utility and 404. Excluded separate portal login and destructive/account flows."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "evaluate-probe",
    "layout-metrics",
    "trace",
    "har",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "discoverability",
    "heap-summary comparison",
    "Lighthouse",
    "curl HTTP/robots/sitemap/manifest"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "component-specific-light-dark-theme",
    "accessibility",
    "adapt-scrollbar-to-contrast-preferences",
    "same-document-transitions",
    "cross-document-transitions",
    "group-element-transitions",
    "faster-spa-view-transitions",
    "scrollytelling",
    "parallax-scroll-effects",
    "scroll-entry-exit-effects",
    "carousel-slide-effects",
    "physics-based-easing",
    "individual-transform-properties",
    "animate-element-entry-exit",
    "animate-to-from-top-layer",
    "animate-to-intrinsic-sizes",
    "dynamic-sibling-animations",
    "interactive-content-reveal",
    "pull-to-reveal",
    "swipe-to-remove",
    "shrinking-header-on-scroll",
    "scroll-progress-indicator",
    "scroll-position-aware-elements",
    "scroll-snap-realtime-feedback",
    "scroll-snap-state-sync",
    "scroll-target-on-load",
    "soft-edge-content-fade",
    "scrollability-affordance-hints",
    "anchor-positioning-tab-underline",
    "position-aware-tooltips",
    "interest-triggered-tooltips",
    "interest-triggered-action-previews",
    "directional-navigation-transitions",
    "carousel-snap-highlights",
    "navigation-drawer",
    "stack-drill-down",
    "persistent-app-tours",
    "persistent-toast-notifications",
    "light-dismiss-a-dialog",
    "platform-controls-dismiss-dialog",
    "declarative-dialog-popover-control",
    "animated-select-picker",
    "branded-select-styling",
    "brand-consistent-forms",
    "custom-select-picker-layouts",
    "rich-media-picker",
    "complex-shapes",
    "shaped-cutouts",
    "overflow-clipping-control",
    "visually-texture-content",
    "apply-webgl-shaders",
    "interactive-content-in-3d-scenes",
    "highlight-text-ranges",
    "prevent-text-wrapping",
    "customize-scrollbar-color-and-thickness",
    "export-html-media-from-canvas",
    "fluid-scaling",
    "calculate-with-intrinsic-sizes",
    "css-layout",
    "size-aware-styling",
    "content-based-styling",
    "child-state-based-styling",
    "design-token-reactivity",
    "dynamic-sibling-styling",
    "form-fields-automatically-fit-contents",
    "improve-text-layout-and-legibility",
    "forms",
    "accessible-error-announcement",
    "required-field-feedback",
    "validate-input-after-interaction",
    "identify-inp-causes",
    "schedule-tasks-by-priority",
    "optimize-preload-priority",
    "improve-next-page-load-performance",
    "interactions-in-complex-layouts",
    "performance",
    "visually-stable-font-fallbacks",
    "break-up-long-tasks",
    "identify-heavy-scripts",
    "optimize-script-priority",
    "defer-rendering-heavy-content",
    "defer-work-until-scroll-ends",
    "optimize-image-priority",
    "conditional-async-dependencies",
    "expose-canvas-content-to-browser-features",
    "move-dom-element-without-losing-state",
    "precise-text-alignment",
    "visually-stable-mixed-fonts",
    "css",
    "html",
    "reduce-style-repetition",
    "security",
    "privacy",
    "batch-analytics-events",
    "full-session-analytics",
    "calculate-total-foreground-time",
    "passkeys",
    "passkey-registration",
    "passkey-authentication",
    "passkey-reauthentication",
    "passkey-conditional-create",
    "passkey-management",
    "flicker-free-client-side-ab-testing",
    "consistent-cross-document-transitions",
    "stabilize-reactive-state",
    "resilient-context-menus-and-nested-dropdowns",
    "persistent-top-layer-ui",
    "detect-initial-visibility-state",
    "sequence-distributed-events",
    "translator",
    "language-detection",
    "support-global-calendar-systems",
    "capture-location-agnostic-data",
    "format-human-readable-durations",
    "manage-recurring-intervals",
    "calculate-event-differentials",
    "coordinate-global-events",
    "model-partial-time-concepts",
    "search-hidden-content",
    "select-menu-interaction",
    "style-parent-with-has",
    "autofill-address-form",
    "autofill-payment-form",
    "autofill-sign-in-form",
    "autofill-sign-up-form",
    "autofill-highlight-inputs",
    "deliver-optimized-decorative-images",
    "resolution-optimized-pseudo-elements",
    "deprioritize-background-fetches",
    "efficient-background-processing",
    "webmcp",
    "agentic-forms",
    "agentic-javascript-tools",
    "language-model",
    "summarizer"
  ],
  "artifacts": [
    {
      "type": "other",
      "path": "evidence/404-headers.txt",
      "caption": "404 headers",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/404-mobile.png",
      "caption": "404 mobile",
      "findingIds": []
    },
    {
      "type": "layout",
      "path": "evidence/article-layout.json",
      "caption": "article layout",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/article-mobile.png",
      "caption": "article mobile",
      "findingIds": [
        "F05"
      ]
    },
    {
      "type": "other",
      "path": "evidence/article-probe.json",
      "caption": "article probe",
      "findingIds": [
        "F21",
        "F27",
        "F28"
      ]
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "cookies",
      "findingIds": [
        "F22"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/currency-layout.json",
      "caption": "currency layout",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/currency-mobile.png",
      "caption": "currency mobile",
      "findingIds": [
        "F05"
      ]
    },
    {
      "type": "other",
      "path": "evidence/currency-probe.json",
      "caption": "currency probe",
      "findingIds": [
        "F27"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-article-crawler.png",
      "caption": "discoverability article crawler",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-article-rendered.png",
      "caption": "discoverability article rendered",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability-article.json",
      "caption": "discoverability article",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-home-crawler.png",
      "caption": "discoverability home crawler",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-home-rendered.png",
      "caption": "discoverability home rendered",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability-home.json",
      "caption": "discoverability home",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "headers",
      "findingIds": [
        "F22",
        "F25"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.heapsnapshot",
      "caption": "heap baseline",
      "findingIds": [
        "F32"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-post-scroll.heapsnapshot",
      "caption": "heap post scroll",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark-dismissed.png",
      "caption": "home dark dismissed",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "home desktop",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dismissed.png",
      "caption": "home dismissed",
      "findingIds": []
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-high-contrast.png",
      "caption": "home high contrast",
      "findingIds": []
    },
    {
      "type": "layout",
      "path": "evidence/home-mobile-layout.json",
      "caption": "home mobile layout",
      "findingIds": [
        "F03",
        "F10",
        "F17"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile",
      "findingIds": [
        "F03",
        "F05",
        "F23"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-probe.json",
      "caption": "home probe",
      "findingIds": [
        "F01",
        "F02",
        "F04",
        "F06",
        "F07",
        "F08",
        "F16",
        "F17",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-summary.json",
      "caption": "home summary",
      "findingIds": [
        "F12",
        "F30",
        "F31"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "home trace summary",
      "findingIds": [
        "F09",
        "F11",
        "F30"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "home trace",
      "findingIds": []
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "home",
      "findingIds": [
        "F12",
        "F23"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images-home.json",
      "caption": "images home",
      "findingIds": [
        "F19",
        "F29"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-article-summary.json",
      "caption": "lighthouse article summary",
      "findingIds": []
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-article.json",
      "caption": "lighthouse article",
      "findingIds": [
        "F09",
        "F12",
        "F13",
        "F14",
        "F15",
        "F16",
        "F18",
        "F22",
        "F24",
        "F29"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home-summary.json",
      "caption": "lighthouse home summary",
      "findingIds": []
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "lighthouse home",
      "findingIds": [
        "F09",
        "F10",
        "F11",
        "F12",
        "F13",
        "F15",
        "F18",
        "F19",
        "F20",
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/manifest.json",
      "caption": "manifest",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/recon.json",
      "caption": "recon",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/robots-headers.txt",
      "caption": "robots headers",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/robots.txt",
      "caption": "robots",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "secrets",
      "findingIds": []
    },
    {
      "type": "layout",
      "path": "evidence/section-layout.json",
      "caption": "section layout",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/section-mobile.png",
      "caption": "section mobile",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/sitemap.xml",
      "caption": "sitemap",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/static-probe.json",
      "caption": "static probe",
      "findingIds": [
        "F04",
        "F14",
        "F26",
        "F32"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "trackers",
      "findingIds": [
        "F23",
        "F30",
        "F31"
      ]
    }
  ],
  "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": "evidence/home-dark.png, evidence/home-probe.json reviewed against Honours prefers-color-scheme: a usable dark mode exists and is driven by the user's preference (color-scheme / prefers-color-scheme / light-dark()), not hard-coded light only.",
      "evidence": "The dark-mode probe reported colorScheme \"normal\" and a white body background; the dark screenshot retains the light consent surface and page palette.",
      "artifacts": [
        "evidence/home-dark.png",
        "evidence/home-probe.json"
      ],
      "findingIds": [
        "F01"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "high",
      "method": "Active animation probe under prefers-reduced-motion: reduce",
      "evidence": "Reduced-motion emulation found zero active animations, so no non-essential motion remained.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Visual capture under forced-colors: active",
      "evidence": "Forced-colors/high-contrast screenshot retains visible text, borders and controls.",
      "artifacts": [
        "evidence/home-high-contrast.png"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json reviewed against State and route changes use View Transitions (including same-document, cross-document and scroll-driven/staggered) rather than instant, jarring swaps.",
      "evidence": "The active probe found browser support but no authored view-transition usage; navigation remains a hard document swap.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "findingIds": [
        "F02"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No scroll-linked animation or parallax surface was present to implement or test.",
      "reason": "No scroll-linked animation or parallax surface was present to implement or test.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No gesture-driven carousel, swipe, pull-to-refresh or comparable custom gesture was present.",
      "reason": "No gesture-driven carousel, swipe, pull-to-refresh or comparable custom gesture was present.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-mobile-layout.json, evidence/home-mobile.png reviewed against Sticky/affixed UI reacts to scroll state and position (e.g. the new scroll-state(scrolled) query, shrinking headers, progress indicators) so chrome responds to position instead of static or JS-driven toggling.",
      "evidence": "The 22,394px homepage has no authored container/scroll-state signal and no visible reading or feed-position cue.",
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F03"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No tooltip or edge-sensitive anchored popover was exposed in the representative paths.",
      "reason": "No tooltip or edge-sensitive anchored popover was exposed in the representative paths.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json, evidence/static-probe.json reviewed against Navigation and in-page jumps guide attention (highlight effects, scroll/carousel markers, directional transitions, drill-down and drawer navigation) so the user can follow where focus moved.",
      "evidence": "The navigation probe found no authored View Transition, scroll marker, or scroll snap behavior on a very long feed.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/static-probe.json"
      ],
      "findingIds": [
        "F04"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-mobile.png, evidence/article-mobile.png, evidence/currency-mobile.png reviewed against No intrusive pop-ups, interstitials or banners that obscure content on load; overlays are dismissible and content-first.",
      "evidence": "Mobile screenshots of the homepage, article and currency utility show the consent dialog obscuring all primary content before interaction.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/article-mobile.png",
        "evidence/currency-mobile.png"
      ],
      "findingIds": [
        "F05"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json reviewed against Overlays and rich controls use the right primitive: popover (with declarative light-dismiss) for transient UI, dialog for modal flows, details for disclosure, native-but-branded selects and pickers, rather than ad-hoc divs.",
      "evidence": "The DOM probe found 0 <dialog>, 0 popover, 0 details, and four role=dialog elements.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "findingIds": [
        "F06"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "pass",
      "confidence": "high",
      "method": "Representative screenshots and layout review",
      "evidence": "Beyond the consent layer, layouts devote the viewport to headlines, article content and utility data rather than decorative app framing.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/section-mobile.png"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "high",
      "method": "Layout metrics at 360x800",
      "evidence": "All four representative 360px layouts reported 0px horizontal overflow and a viewport meta tag.",
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/section-layout.json",
        "evidence/article-layout.json",
        "evidence/currency-layout.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json reviewed against Components adapt to their container with container queries (incl. anchored container queries) and content/state-based styling where reused at different sizes, not only global viewport breakpoints.",
      "evidence": "The active probe found no authored @container usage across reusable news cards and navigation components.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "findingIds": [
        "F07"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json reviewed against Touch targets are adequately sized and hover-only affordances have a non-hover fallback, and keyboard focus is visible, so the UI works for touch, pointer and keyboard alike.",
      "evidence": "Programmatic focus on the first link produced outline:none and no box-shadow; the probe listed many 15–20px-high links.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "findingIds": [
        "F08"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "First-viewport screenshots and heading probes",
      "evidence": "Headings and navigation clearly identify breaking news, category, article and currency purposes.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/article-probe.json",
        "evidence/currency-probe.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "high",
      "method": "Navigation recon plus article discoverability load",
      "evidence": "Homepage links use real hrefs and the representative article loaded with headline, metadata and content in raw HTML.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/discoverability-article.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "pass",
      "confidence": "high",
      "method": "Direct 404-route screenshot and response headers",
      "evidence": "The unknown route returns a clear Turkish 404 state with explanation, search and category recovery links.",
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/404-headers.txt"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-home.json, evidence/lighthouse-article.json, evidence/home-trace-summary.json reviewed against Core Web Vitals are in the good range: LCP is fast, interaction latency (INP) is low, and CLS is minimal; work is prioritised and deferred sensibly.",
      "evidence": "Lighthouse measured homepage LCP 9.3s and CLS 0.38; article LCP was 19.4s with 550ms TBT.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F09"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-mobile-layout.json, evidence/lighthouse-home.json reviewed against No cumulative layout shift from late content (images, banners, fonts) that arrives without reserved space.",
      "evidence": "The mobile layout observer measured CLS 0.391, including a single 0.38675 shift; Lighthouse independently measured 0.38.",
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F10"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-trace-summary.json, evidence/lighthouse-home.json reviewed against The main thread is not blocked by long tasks or heavy scripting; work is deferred, chunked, prioritised, or moved off-thread.",
      "evidence": "The trace recorded a 997ms long task and 947ms TBT; Lighthouse reported 18.5s main-thread work on the homepage.",
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F11"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-summary.json, evidence/home.har, evidence/lighthouse-home.json, evidence/lighthouse-article.json reviewed against Critical resources are delivered efficiently: cache headers are useful, render-blocking chains are short, fonts do not block or shift text, HTTP delivery is modern, and network dependency trees do not delay the main content.",
      "evidence": "HAR recorded 149 requests and 3.59MB transferred; Lighthouse estimated 540–1180ms render-blocking savings and 513–890KiB cache savings.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har",
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F12"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-home.json, evidence/lighthouse-article.json reviewed against The page does not ship large unused or duplicated JavaScript/CSS, avoidable legacy bundles, or third-party code that dominates the load without user value.",
      "evidence": "Lighthouse estimated 1,001KiB unused JS on the homepage, 1,335KiB on the article, and 61KiB unused CSS.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F13"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-article.json, evidence/static-probe.json reviewed against Interactive elements have accessible names, correct roles, and form fields have labels; images have alt text where meaningful; canvas/expressive content is exposed to assistive technology.",
      "evidence": "Lighthouse failed link-name on the representative article, and the DOM probe found an empty anchor without text, aria-label, or an image alt.",
      "artifacts": [
        "evidence/lighthouse-article.json",
        "evidence/static-probe.json"
      ],
      "findingIds": [
        "F14"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-home.json, evidence/lighthouse-article.json reviewed against Text and essential UI meet WCAG colour-contrast minimums against their background.",
      "evidence": "Lighthouse failed the color-contrast audit on both homepage and article templates.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F15"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json, evidence/lighthouse-article.json reviewed against Heading and landmark structure is logical, focus order follows reading order, keyboard focus is always visible, and interactive state survives DOM moves.",
      "evidence": "The probe found multiple H1s, hundreds of H2s, no <main>, and focus with outline:none; Lighthouse also reported malformed article list structure.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F16"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "high",
      "method": "Visual review at 360x800",
      "evidence": "Representative mobile screenshots show readable body copy and headings without clipping or horizontal overflow.",
      "artifacts": [
        "evidence/article-mobile.png",
        "evidence/article-layout.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json, evidence/home-mobile-layout.json reviewed against The experience remains usable when zoomed or reflowed, touch targets are large enough, media has captions or equivalents where needed, and the viewport does not prevent user scaling.",
      "evidence": "The target probe found many navigation links only 15–20px tall, despite successful narrow-viewport reflow.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/home-mobile-layout.json"
      ],
      "findingIds": [
        "F17"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-home.json, evidence/lighthouse-article.json reviewed against The page loads without console errors or uncaught exceptions.",
      "evidence": "Lighthouse failed errors-in-console on both homepage and article.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F18"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/images-home.json, evidence/lighthouse-home.json reviewed against Valid doctype and charset, images sized with correct aspect ratio, no deprecated APIs misused, and CSS/HTML are well structured and not needlessly repetitive. (HTTPS, CSP and permission hygiene are judged under be-private-and-secure, not here.)",
      "evidence": "The image audit found 7 missing dimensions, 26 oversized images, 63 without srcset and 93 legacy-format images; Lighthouse found incorrect aspect ratios.",
      "artifacts": [
        "evidence/images-home.json",
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F19"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-home.json reviewed against The page uses the platform cleanly: no deprecated APIs, no avoidable BFCache blockers, no broken source maps or inspector issues, no stale vulnerable libraries, no paste-prevention on inputs, and no notification/geolocation prompts on load.",
      "evidence": "Lighthouse failed notification-on-start, deprecated APIs, inspector issues and BFCache (five reasons) on the homepage.",
      "artifacts": [
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F20"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "DOM/evaluate metadata probes",
      "evidence": "Homepage and article have descriptive titles and meta descriptions.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/article-probe.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "high",
      "method": "DOM links, robots.txt and discoverability capture",
      "evidence": "Real href links, viewport metadata and permissive robots were observed; raw content coverage is high.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/robots.txt",
        "evidence/discoverability-home.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "high",
      "method": "HTTP and metadata inspection",
      "evidence": "Pages returned 200 with canonicals; robots and sitemap files were fetched and no accidental noindex was found.",
      "artifacts": [
        "evidence/article-probe.json",
        "evidence/robots.txt",
        "evidence/sitemap.xml"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/article-probe.json reviewed against Where the page represents an article, product, organization, event, place or other rich entity, structured data and share-preview metadata accurately describe the visible content.",
      "evidence": "The article probe returned \"invalid\" for its application/ld+json block, despite correct title, description and canonical signals.",
      "artifacts": [
        "evidence/article-probe.json"
      ],
      "findingIds": [
        "F21"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/headers.json, evidence/cookies.json, evidence/lighthouse-article.json reviewed against Served over HTTPS with a sensible Content-Security-Policy and secure, SameSite cookies; no mixed content or obvious transport/header smells.",
      "evidence": "Headers found no CSP or HSTS; cookie audit found all 33 cookies flagged, including 30 without Secure and pervasive SameSite=None; article Lighthouse found one insecure request.",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F22"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/trackers.json, evidence/home.har, evidence/home-mobile.png reviewed against No over-collection of user data, no leaky third parties, and analytics/background data collection is minimised and batched rather than chatty or session-wide by default.",
      "evidence": "Tracker capture found 35 third-party origins and five known tracker domains; the consent copy names 619 partners and HAR shows 149 requests.",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home.har",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F23"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/lighthouse-home.json, evidence/lighthouse-article.json reviewed against Permission prompts are requested in context (not on load), and authentication uses modern, phishing-resistant methods (passkeys / WebAuthn) where relevant rather than passwords alone.",
      "evidence": "Lighthouse failed notification-on-start on both homepage and article. Authentication was not exercised because login is a separate portal.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F24"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/headers.json reviewed against Browser-enforced defenses are configured where appropriate: HSTS, clickjacking protection (frame-ancestors / X-Frame-Options), Trusted Types for XSS-sensitive apps, origin isolation, privacy-preserving third-party cookie posture, and sensible Referrer-Policy / Permissions-Policy.",
      "evidence": "The header audit found no frame protection, X-Content-Type-Options, Referrer-Policy or Permissions-Policy, in addition to missing CSP and HSTS.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F25"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Discoverability no-JS/raw HTML comparison",
      "evidence": "Raw HTML contains 90% of homepage and 68% of article rendered content, including title/H1/description; neither is a JS shell.",
      "artifacts": [
        "evidence/discoverability-home.json",
        "evidence/discoverability-article.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "high",
      "method": "Mobile screenshots and layout metrics",
      "evidence": "Representative templates loaded and reflowed without horizontal clipping, and the consent overlay remained within viewport bounds.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/article-layout.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "pass",
      "confidence": "high",
      "method": "Manifest link and fetched manifest",
      "evidence": "A valid manifest is linked and returned for this app-capable news site; offline content was not required for the core public reading path.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/manifest.json"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "pass",
      "confidence": "high",
      "method": "Direct failure-state exercise",
      "evidence": "The tested unknown URL renders an actionable 404 with search and route links rather than a blank shell.",
      "artifacts": [
        "evidence/404-mobile.png"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-probe.json, evidence/static-probe.json reviewed against Correct lang and dir attributes, logical CSS properties (inline/block) rather than physical left/right, and translation-ready markup so the layout and reading order survive other languages and writing modes.",
      "evidence": "The probe confirmed lang=tr, but found 0 logical-property tokens and 34 physical left/right padding or margin tokens in page HTML/CSS.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/static-probe.json"
      ],
      "findingIds": [
        "F26"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/article-probe.json, evidence/currency-probe.json reviewed against Dates, numbers, currencies, durations and calendar systems are formatted locale-aware (Intl), location-agnostic where stored, and recurring intervals and event differentials are modelled correctly.",
      "evidence": "Article time elements use non-ISO datetime values such as 19.07.2026 09:44:00, and the currency template exposes locale data without a table structure.",
      "artifacts": [
        "evidence/article-probe.json",
        "evidence/currency-probe.json"
      ],
      "findingIds": [
        "F27"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/article-probe.json reviewed against Time handling survives time zones and DST: events coordinate across zones, partial time concepts are modelled, and stored times are unambiguous.",
      "evidence": "The datetime attributes are local dotted date strings with no UTC offset or IANA zone, so DST/zone interpretation is not deterministic.",
      "artifacts": [
        "evidence/article-probe.json"
      ],
      "findingIds": [
        "F28"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "First-load consent screenshot",
      "evidence": "Consent presents equally prominent Consent and Do not consent actions and a manage-options path; no forced continuity was observed.",
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No user-data form with validation was present on the audited public templates.",
      "reason": "No user-data form with validation was present on the audited public templates.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "The only public text input observed was optional 404 search; no address, payment or account input was in scope.",
      "reason": "The only public text input observed was optional 404 search; no address, payment or account input was in scope.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No checkout, subscription or account-management flow exists on the audited public host; login is a separate portal.",
      "reason": "No checkout, subscription or account-management flow exists on the audited public host; login is a separate portal.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/images-home.json, evidence/lighthouse-article.json reviewed against Images and decorative assets are optimised and served at appropriate resolutions; decorative pseudo-element imagery and heavy decorative images are resolution-optimised rather than oversized.",
      "evidence": "Of 100 images, 93 use legacy formats, 63 lack srcset and 26 are oversized; Lighthouse estimates up to 448KiB image savings on the article.",
      "artifacts": [
        "evidence/images-home.json",
        "evidence/lighthouse-article.json"
      ],
      "findingIds": [
        "F29"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-summary.json, evidence/home-trace-summary.json, evidence/trackers.json reviewed against Background work and fetching are not wasteful: background processing is efficient and de-prioritised, and the lightest technique that achieves the result is preferred over heavy or redundant work.",
      "evidence": "HAR recorded 39 scripts and 35 third-party origins; trace TBT was 947ms and Lighthouse reported 18.5s main-thread work.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-trace-summary.json",
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F30"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/home-summary.json, evidence/trackers.json reviewed against Third-party scripts, fonts, video, audio, animation and heavy media are proportionate to the user value they provide; autoplay or background media is avoided unless essential and resource use is cached or deferred where possible.",
      "evidence": "The homepage transferred 3.59MB across 149 requests, including 1.79MB of scripts and 35 third-party origins.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F31"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "The public news-reading site exposes no transactional agent capability requiring WebMCP; crawlable content remains available in raw HTML.",
      "reason": "The public news-reading site exposes no transactional agent capability requiring WebMCP; crawlable content remains available in raw HTML.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Applicability judgement from representative-path recon",
      "evidence": "No user task on these public templates requires on-device inference; absence is an emerging opportunity, not a failure.",
      "reason": "No user task on these public templates requires on-device inference; absence is an emerging opportunity, not a failure.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "high",
      "method": "Baseline/post heap comparison after repeated scroll",
      "evidence": "After ten full-page scroll cycles, heap node count fell from 720,065 to 662,127 and self size from 39.3MB to 37.1MB rather than growing.",
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-scroll.heapsnapshot"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "issues",
      "confidence": "high",
      "method": "evidence/heap-baseline.heapsnapshot, evidence/static-probe.json reviewed against Heap size and DOM node count are reasonable for what the page is; the footprint is proportionate rather than bloated.",
      "evidence": "The baseline heap had 720,065 heap nodes and 39.3MB self size, while the DOM probe counted 13,996 elements for a news listing.",
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/static-probe.json"
      ],
      "findingIds": [
        "F32"
      ],
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "high",
      "method": "Before/after heap totals under repeated interaction",
      "evidence": "The repeated-scroll post snapshot had 57,938 fewer nodes overall; no accumulating population was signaled in this bounded exercise.",
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-scroll.heapsnapshot"
      ],
      "pathIds": [
        "home"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F03",
        "F04"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F05",
        "F06"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F07",
        "F08"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F09",
        "F10",
        "F11",
        "F12",
        "F13"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F14",
        "F15",
        "F16",
        "F17"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F18",
        "F19",
        "F20"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F22",
        "F23",
        "F24",
        "F25"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F26",
        "F27",
        "F28"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F29",
        "F30",
        "F31"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "All registered checks were judged inapplicable to the representative public news-reading surfaces."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F32"
      ]
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and breaking-news listing; representative primary entry and densest template.",
      "url": "https://www.sondakika.com/",
      "conditions": [
        "desktop",
        "viewport: 360x800",
        "prefers-color-scheme: dark",
        "prefers-reduced-motion: reduce",
        "forced-colors: active",
        "keyboard focus"
      ],
      "result": "issues"
    },
    {
      "id": "section",
      "description": "Güncel category listing; representative section/index template.",
      "url": "https://www.sondakika.com/guncel/",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "article",
      "description": "Current news story; representative article/detail and reading journey.",
      "url": "https://www.sondakika.com/haber/haber-ahbap-sorusturmasinda-yeni-perde-biradan-otele-20065848/",
      "conditions": [
        "viewport: 360x800",
        "crawler without JavaScript"
      ],
      "result": "issues"
    },
    {
      "id": "currency",
      "description": "Currency-rates utility; representative data/utility surface.",
      "url": "https://www.sondakika.com/doviz-kurlari/",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "not-found",
      "description": "Unknown route; representative HTTP failure and recovery state.",
      "url": "https://www.sondakika.com/does-not-exist-web-uplift-404",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "pass"
    }
  ],
  "findings": [
    {
      "id": "F09",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "severity": "critical",
      "confidence": "high",
      "summary": "Core Web Vitals are poor on primary templates.",
      "evidence": "Lighthouse measured homepage LCP 9.3s and CLS 0.38; article LCP was 19.4s with 550ms TBT.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json",
        "evidence/home-trace-summary.json"
      ],
      "suggestedFix": "Prioritize the LCP asset, reduce third-party startup work, reserve space, and retest each template against good CWV thresholds.",
      "effort": "large"
    },
    {
      "id": "F22",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "severity": "critical",
      "confidence": "high",
      "summary": "Transport protections and cookie attributes are unsafe.",
      "evidence": "Headers found no CSP or HSTS; cookie audit found all 33 cookies flagged, including 30 without Secure and pervasive SameSite=None; article Lighthouse found one insecure request.",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Add HSTS and a restrictive CSP, remove mixed content, and set Secure plus appropriate SameSite/HttpOnly attributes.",
      "effort": "medium"
    },
    {
      "id": "F23",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "severity": "critical",
      "confidence": "high",
      "summary": "The page has an excessive tracking and third-party data footprint.",
      "evidence": "Tracker capture found 35 third-party origins and five known tracker domains; the consent copy names 619 partners and HAR shows 149 requests.",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home.har",
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Reduce vendors to the minimum needed, block all optional requests before consent, batch analytics, and document each retained processor.",
      "effort": "large"
    },
    {
      "id": "F25",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "severity": "critical",
      "confidence": "high",
      "summary": "Browser-enforced defensive policies are absent.",
      "evidence": "The header audit found no frame protection, X-Content-Type-Options, Referrer-Policy or Permissions-Policy, in addition to missing CSP and HSTS.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "suggestedFix": "Deploy frame-ancestors, nosniff, strict Referrer-Policy and least-privilege Permissions-Policy alongside CSP/HSTS.",
      "effort": "medium"
    },
    {
      "id": "F05",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "severity": "high",
      "confidence": "high",
      "summary": "A full-screen consent interstitial blocks every audited page on first load.",
      "evidence": "Mobile screenshots of the homepage, article and currency utility show the consent dialog obscuring all primary content before interaction.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/article-mobile.png",
        "evidence/currency-mobile.png"
      ],
      "suggestedFix": "Use a compact, content-preserving consent treatment where legally permitted, keep reject and accept equally prominent, and defer non-essential vendors until choice.",
      "effort": "medium"
    },
    {
      "id": "F08",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Keyboard focus is invisible and multiple controls have small hit areas.",
      "evidence": "Programmatic focus on the first link produced outline:none and no box-shadow; the probe listed many 15–20px-high links.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "suggestedFix": "Provide a strong :focus-visible indicator and make interactive target boxes at least 24px, preferably 44px for touch.",
      "effort": "small"
    },
    {
      "id": "F10",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "visually-stable-font-fallbacks",
      "severity": "high",
      "confidence": "high",
      "summary": "The homepage shifts substantially after load.",
      "evidence": "The mobile layout observer measured CLS 0.391, including a single 0.38675 shift; Lighthouse independently measured 0.38.",
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/lighthouse-home.json"
      ],
      "suggestedFix": "Reserve dimensions for late banners, consent/ad slots, images and fonts; identify and eliminate the 0.38675 shift source.",
      "effort": "medium"
    },
    {
      "id": "F11",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-main-thread",
      "guidanceId": "break-up-long-tasks",
      "severity": "high",
      "confidence": "high",
      "summary": "Heavy JavaScript blocks the main thread.",
      "evidence": "The trace recorded a 997ms long task and 947ms TBT; Lighthouse reported 18.5s main-thread work on the homepage.",
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-home.json"
      ],
      "suggestedFix": "Remove or defer non-essential scripts, split long tasks, and schedule lower-priority work after the core content is interactive.",
      "effort": "large"
    },
    {
      "id": "F12",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-preload-priority",
      "severity": "high",
      "confidence": "high",
      "summary": "Resource delivery is heavy and includes render-blocking and weak-cache opportunities.",
      "evidence": "HAR recorded 149 requests and 3.59MB transferred; Lighthouse estimated 540–1180ms render-blocking savings and 513–890KiB cache savings.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har",
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Shorten critical chains, set durable cache headers for immutable assets, preload only the LCP resource, and defer non-critical CSS/JS.",
      "effort": "large"
    },
    {
      "id": "F13",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "severity": "high",
      "confidence": "high",
      "summary": "Large amounts of unused JavaScript and CSS ship on primary pages.",
      "evidence": "Lighthouse estimated 1,001KiB unused JS on the homepage, 1,335KiB on the article, and 61KiB unused CSS.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Route-split first-party bundles, conditionally load ad/analytics integrations, and remove unused CSS and legacy code.",
      "effort": "large"
    },
    {
      "id": "F14",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Some article links lack accessible names.",
      "evidence": "Lighthouse failed link-name on the representative article, and the DOM probe found an empty anchor without text, aria-label, or an image alt.",
      "artifacts": [
        "evidence/lighthouse-article.json",
        "evidence/static-probe.json"
      ],
      "suggestedFix": "Give every interactive link a discernible name and preserve meaningful image alternatives.",
      "effort": "small"
    },
    {
      "id": "F15",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Text/background combinations fail minimum contrast.",
      "evidence": "Lighthouse failed the color-contrast audit on both homepage and article templates.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Adjust foreground and background design tokens to meet WCAG AA contrast in every state.",
      "effort": "small"
    },
    {
      "id": "F16",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Heading/landmark structure and keyboard focus are not reliable.",
      "evidence": "The probe found multiple H1s, hundreds of H2s, no <main>, and focus with outline:none; Lighthouse also reported malformed article list structure.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Use one page-level H1, a main landmark, valid list semantics, and an obvious :focus-visible treatment in logical order.",
      "effort": "medium"
    },
    {
      "id": "F20",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "security",
      "severity": "high",
      "confidence": "high",
      "summary": "The page requests notification permission on load and has platform hygiene failures.",
      "evidence": "Lighthouse failed notification-on-start, deprecated APIs, inspector issues and BFCache (five reasons) on the homepage.",
      "artifacts": [
        "evidence/lighthouse-home.json"
      ],
      "suggestedFix": "Request notifications only after a user gesture and clear deprecated APIs, inspector issues, and BFCache blockers.",
      "effort": "medium"
    },
    {
      "id": "F24",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "in-context-permissions-and-modern-auth",
      "guidanceId": "security",
      "severity": "high",
      "confidence": "high",
      "summary": "Notification permission is requested at page startup rather than in context.",
      "evidence": "Lighthouse failed notification-on-start on both homepage and article. Authentication was not exercised because login is a separate portal.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Ask for notification permission only after an explicit, relevant user action and explain the value before the browser prompt.",
      "effort": "small"
    },
    {
      "id": "F29",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "deliver-optimized-decorative-images",
      "severity": "high",
      "confidence": "high",
      "summary": "Image delivery wastes bytes across a content-heavy news page.",
      "evidence": "Of 100 images, 93 use legacy formats, 63 lack srcset and 26 are oversized; Lighthouse estimates up to 448KiB image savings on the article.",
      "artifacts": [
        "evidence/images-home.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Generate responsive AVIF/WebP variants, use srcset/sizes, preserve intrinsic dimensions and avoid oversized decorative assets.",
      "effort": "medium"
    },
    {
      "id": "F30",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-sustainable",
      "principleCheckId": "no-wasteful-work",
      "guidanceId": "deprioritize-background-fetches",
      "severity": "high",
      "confidence": "high",
      "summary": "Background and third-party work is disproportionate to reading news.",
      "evidence": "HAR recorded 39 scripts and 35 third-party origins; trace TBT was 947ms and Lighthouse reported 18.5s main-thread work.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-trace-summary.json",
        "evidence/trackers.json"
      ],
      "suggestedFix": "Do not start optional advertising/analytics work before consent; defer and conditionally load integrations after core content.",
      "effort": "large"
    },
    {
      "id": "F31",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "efficient-background-processing",
      "severity": "high",
      "confidence": "high",
      "summary": "Third-party scripts dominate a multi-megabyte page load.",
      "evidence": "The homepage transferred 3.59MB across 149 requests, including 1.79MB of scripts and 35 third-party origins.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json"
      ],
      "suggestedFix": "Set a third-party byte/request budget, remove low-value vendors, and lazy-load remaining ad/media dependencies.",
      "effort": "large"
    },
    {
      "id": "F01",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "severity": "medium",
      "confidence": "high",
      "summary": "The site does not adapt to the user’s dark color-scheme preference.",
      "evidence": "The dark-mode probe reported colorScheme \"normal\" and a white body background; the dark screenshot retains the light consent surface and page palette.",
      "artifacts": [
        "evidence/home-dark.png",
        "evidence/home-probe.json"
      ],
      "suggestedFix": "Declare color-scheme and provide preference-driven dark surface/text tokens with prefers-color-scheme or light-dark().",
      "effort": "small"
    },
    {
      "id": "F06",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "semantic-dismissible-primitives",
      "guidanceId": "declarative-dialog-popover-control",
      "severity": "medium",
      "confidence": "high",
      "summary": "Consent overlays are custom role=dialog structures rather than native dialog primitives.",
      "evidence": "The DOM probe found 0 <dialog>, 0 popover, 0 details, and four role=dialog elements.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "suggestedFix": "Use <dialog> for modal consent flows with native focus containment, Escape behavior, and explicit close/reject actions.",
      "effort": "medium"
    },
    {
      "id": "F17",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "fluid-scaling",
      "severity": "medium",
      "confidence": "high",
      "summary": "Several interactive targets are too short for reliable touch use.",
      "evidence": "The target probe found many navigation links only 15–20px tall, despite successful narrow-viewport reflow.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/home-mobile-layout.json"
      ],
      "suggestedFix": "Increase the clickable box with padding and spacing while preserving the overflow-free mobile layout.",
      "effort": "small"
    },
    {
      "id": "F18",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "Primary pages log browser console errors.",
      "evidence": "Lighthouse failed errors-in-console on both homepage and article.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/lighthouse-article.json"
      ],
      "suggestedFix": "Fix first-party exceptions and failed resource calls; isolate third-party failures so they do not pollute or destabilize the page.",
      "effort": "medium"
    },
    {
      "id": "F19",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "optimize-image-priority",
      "severity": "medium",
      "confidence": "high",
      "summary": "Image dimensions, aspect ratios, and formats are not consistently sound.",
      "evidence": "The image audit found 7 missing dimensions, 26 oversized images, 63 without srcset and 93 legacy-format images; Lighthouse found incorrect aspect ratios.",
      "artifacts": [
        "evidence/images-home.json",
        "evidence/lighthouse-home.json"
      ],
      "suggestedFix": "Set intrinsic width/height, preserve aspect ratio, add responsive sources, and deliver AVIF/WebP where appropriate.",
      "effort": "medium"
    },
    {
      "id": "F21",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-discoverable",
      "principleCheckId": "structured-and-shareable-metadata",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "The representative article’s JSON-LD is not parseable as JSON.",
      "evidence": "The article probe returned \"invalid\" for its application/ld+json block, despite correct title, description and canonical signals.",
      "artifacts": [
        "evidence/article-probe.json"
      ],
      "suggestedFix": "Emit valid NewsArticle JSON-LD that matches the visible headline, dates, author, image and canonical URL; validate it in CI.",
      "effort": "small"
    },
    {
      "id": "F26",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-internationalised",
      "principleCheckId": "lang-dir-and-logical-properties",
      "guidanceId": "translator",
      "severity": "medium",
      "confidence": "high",
      "summary": "The Turkish language is declared, but physical CSS directions dominate.",
      "evidence": "The probe confirmed lang=tr, but found 0 logical-property tokens and 34 physical left/right padding or margin tokens in page HTML/CSS.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/static-probe.json"
      ],
      "suggestedFix": "Retain lang=tr and migrate layout rules to margin/padding/inset-inline and block logical properties so bidi layouts can adapt.",
      "effort": "medium"
    },
    {
      "id": "F27",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-internationalised",
      "principleCheckId": "locale-aware-data",
      "guidanceId": "capture-location-agnostic-data",
      "severity": "medium",
      "confidence": "high",
      "summary": "Visible date/currency data is not exposed in robust locale-aware semantics.",
      "evidence": "Article time elements use non-ISO datetime values such as 19.07.2026 09:44:00, and the currency template exposes locale data without a table structure.",
      "artifacts": [
        "evidence/article-probe.json",
        "evidence/currency-probe.json"
      ],
      "suggestedFix": "Format with Intl for tr-TR and expose machine-readable ISO dates and semantic data tables.",
      "effort": "medium"
    },
    {
      "id": "F28",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-internationalised",
      "principleCheckId": "time-zone-correctness",
      "guidanceId": "coordinate-global-events",
      "severity": "medium",
      "confidence": "high",
      "summary": "Article timestamps are ambiguous about offset and time zone.",
      "evidence": "The datetime attributes are local dotted date strings with no UTC offset or IANA zone, so DST/zone interpretation is not deterministic.",
      "artifacts": [
        "evidence/article-probe.json"
      ],
      "suggestedFix": "Store unambiguous instants, render with Intl.DateTimeFormat, and use ISO 8601 datetime attributes including an offset.",
      "effort": "small"
    },
    {
      "id": "F32",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "be-memory-efficient",
      "principleCheckId": "bounded-footprint",
      "guidanceId": "defer-rendering-heavy-content",
      "severity": "medium",
      "confidence": "high",
      "summary": "The homepage has a large initial memory and DOM footprint.",
      "evidence": "The baseline heap had 720,065 heap nodes and 39.3MB self size, while the DOM probe counted 13,996 elements for a news listing.",
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/static-probe.json"
      ],
      "suggestedFix": "Virtualize or paginate deep feeds, reduce duplicate hidden markup, and conditionally instantiate consent/ad components.",
      "effort": "large"
    },
    {
      "id": "F02",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "cross-document-transitions",
      "severity": "low",
      "confidence": "high",
      "summary": "Page and route changes have no authored View Transitions.",
      "evidence": "The active probe found browser support but no authored view-transition usage; navigation remains a hard document swap.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "suggestedFix": "Add same-document or cross-document View Transitions for primary article and section navigation, with reduced-motion handling.",
      "effort": "medium"
    },
    {
      "id": "F03",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "scroll-progress-indicator",
      "severity": "low",
      "confidence": "high",
      "summary": "The long news feed provides no scroll-state progress or responsive chrome.",
      "evidence": "The 22,394px homepage has no authored container/scroll-state signal and no visible reading or feed-position cue.",
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Use scroll-state-aware sticky chrome or a lightweight declarative progress indicator where it helps orientation.",
      "effort": "medium"
    },
    {
      "id": "F04",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "directs-attention",
      "guidanceId": "directional-navigation-transitions",
      "severity": "low",
      "confidence": "high",
      "summary": "Navigation does not visibly direct attention after state or route changes.",
      "evidence": "The navigation probe found no authored View Transition, scroll marker, or scroll snap behavior on a very long feed.",
      "artifacts": [
        "evidence/home-probe.json",
        "evidence/static-probe.json"
      ],
      "suggestedFix": "Add directional transitions or clear current/target highlighting for route and in-page navigation.",
      "effort": "medium"
    },
    {
      "id": "F07",
      "pathId": "home",
      "url": "https://www.sondakika.com/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "severity": "low",
      "confidence": "high",
      "summary": "No component-level container-query adaptation was found.",
      "evidence": "The active probe found no authored @container usage across reusable news cards and navigation components.",
      "artifacts": [
        "evidence/home-probe.json"
      ],
      "suggestedFix": "Introduce container-type and focused @container rules for cards reused in rails, grids, and narrow columns.",
      "effort": "medium"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Core Web Vitals are poor on primary templates.",
      "priority": 1,
      "findingIds": [
        "F09"
      ],
      "guidanceId": "performance",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Transport protections and cookie attributes are unsafe.",
      "priority": 2,
      "findingIds": [
        "F22"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "The page has an excessive tracking and third-party data footprint.",
      "priority": 3,
      "findingIds": [
        "F23"
      ],
      "guidanceId": "privacy",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Browser-enforced defensive policies are absent.",
      "priority": 4,
      "findingIds": [
        "F25"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "A full-screen consent interstitial blocks every audited page on first load.",
      "priority": 5,
      "findingIds": [
        "F05"
      ],
      "guidanceId": "light-dismiss-a-dialog",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Keyboard focus is invisible and multiple controls have small hit areas.",
      "priority": 6,
      "findingIds": [
        "F08"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "The homepage shifts substantially after load.",
      "priority": 7,
      "findingIds": [
        "F10"
      ],
      "guidanceId": "visually-stable-font-fallbacks",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Heavy JavaScript blocks the main thread.",
      "priority": 8,
      "findingIds": [
        "F11"
      ],
      "guidanceId": "break-up-long-tasks",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Resource delivery is heavy and includes render-blocking and weak-cache opportunities.",
      "priority": 9,
      "findingIds": [
        "F12"
      ],
      "guidanceId": "optimize-preload-priority",
      "status": "open"
    },
    {
      "id": "T10",
      "title": "Large amounts of unused JavaScript and CSS ship on primary pages.",
      "priority": 10,
      "findingIds": [
        "F13"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T11",
      "title": "Some article links lack accessible names.",
      "priority": 11,
      "findingIds": [
        "F14"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T12",
      "title": "Text/background combinations fail minimum contrast.",
      "priority": 12,
      "findingIds": [
        "F15"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T13",
      "title": "Heading/landmark structure and keyboard focus are not reliable.",
      "priority": 13,
      "findingIds": [
        "F16"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T14",
      "title": "The page requests notification permission on load and has platform hygiene failures.",
      "priority": 14,
      "findingIds": [
        "F20"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T15",
      "title": "Notification permission is requested at page startup rather than in context.",
      "priority": 15,
      "findingIds": [
        "F24"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T16",
      "title": "Image delivery wastes bytes across a content-heavy news page.",
      "priority": 16,
      "findingIds": [
        "F29"
      ],
      "guidanceId": "deliver-optimized-decorative-images",
      "status": "open"
    },
    {
      "id": "T17",
      "title": "Background and third-party work is disproportionate to reading news.",
      "priority": 17,
      "findingIds": [
        "F30"
      ],
      "guidanceId": "deprioritize-background-fetches",
      "status": "open"
    },
    {
      "id": "T18",
      "title": "Third-party scripts dominate a multi-megabyte page load.",
      "priority": 18,
      "findingIds": [
        "F31"
      ],
      "guidanceId": "efficient-background-processing",
      "status": "open"
    },
    {
      "id": "T19",
      "title": "The site does not adapt to the user’s dark color-scheme preference.",
      "priority": 19,
      "findingIds": [
        "F01"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T20",
      "title": "Consent overlays are custom role=dialog structures rather than native dialog primitives.",
      "priority": 20,
      "findingIds": [
        "F06"
      ],
      "guidanceId": "declarative-dialog-popover-control",
      "status": "open"
    },
    {
      "id": "T21",
      "title": "Several interactive targets are too short for reliable touch use.",
      "priority": 21,
      "findingIds": [
        "F17"
      ],
      "guidanceId": "fluid-scaling",
      "status": "open"
    },
    {
      "id": "T22",
      "title": "Primary pages log browser console errors.",
      "priority": 22,
      "findingIds": [
        "F18"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T23",
      "title": "Image dimensions, aspect ratios, and formats are not consistently sound.",
      "priority": 23,
      "findingIds": [
        "F19"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T24",
      "title": "The representative article’s JSON-LD is not parseable as JSON.",
      "priority": 24,
      "findingIds": [
        "F21"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T25",
      "title": "The Turkish language is declared, but physical CSS directions dominate.",
      "priority": 25,
      "findingIds": [
        "F26"
      ],
      "guidanceId": "translator",
      "status": "open"
    },
    {
      "id": "T26",
      "title": "Visible date/currency data is not exposed in robust locale-aware semantics.",
      "priority": 26,
      "findingIds": [
        "F27"
      ],
      "guidanceId": "capture-location-agnostic-data",
      "status": "open"
    },
    {
      "id": "T27",
      "title": "Article timestamps are ambiguous about offset and time zone.",
      "priority": 27,
      "findingIds": [
        "F28"
      ],
      "guidanceId": "coordinate-global-events",
      "status": "open"
    },
    {
      "id": "T28",
      "title": "The homepage has a large initial memory and DOM footprint.",
      "priority": 28,
      "findingIds": [
        "F32"
      ],
      "guidanceId": "defer-rendering-heavy-content",
      "status": "open"
    },
    {
      "id": "T29",
      "title": "Page and route changes have no authored View Transitions.",
      "priority": 29,
      "findingIds": [
        "F02"
      ],
      "guidanceId": "cross-document-transitions",
      "status": "open"
    },
    {
      "id": "T30",
      "title": "The long news feed provides no scroll-state progress or responsive chrome.",
      "priority": 30,
      "findingIds": [
        "F03"
      ],
      "guidanceId": "scroll-progress-indicator",
      "status": "open"
    },
    {
      "id": "T31",
      "title": "Navigation does not visibly direct attention after state or route changes.",
      "priority": 31,
      "findingIds": [
        "F04"
      ],
      "guidanceId": "directional-navigation-transitions",
      "status": "open"
    },
    {
      "id": "T32",
      "title": "No component-level container-query adaptation was found.",
      "priority": 32,
      "findingIds": [
        "F07"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 5,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-19T10-43-32-709Z"
}
