{
  "url": "https://turbo.az",
  "auditedAt": "2026-07-20T10:27:43.187Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete multi-template audit; no local source was supplied, so no fixes were applied.",
  "page": {
    "appType": "mpa",
    "framework": "Server-rendered application with client-side enhancements",
    "notes": "Azerbaijani vehicle marketplace with inventory listing, detail, dealer, create-listing, authentication and recovery surfaces."
  },
  "evidenceUsed": [
    "Modern Web Guidance 0.0.172 search/retrieve",
    "screenshot",
    "DOM/computed-style",
    "evaluate probes",
    "layout metrics/CLS/long tasks",
    "HAR summary",
    "performance trace",
    "Lighthouse",
    "discoverability/raw HTML",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "heap summaries"
  ],
  "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": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "Homepage under dark preference remains light",
      "condition": "prefers-color-scheme: dark",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion-probe.json",
      "caption": "Animation/transition probe under reduced motion",
      "condition": "prefers-reduced-motion: reduce",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-high-contrast.png",
      "caption": "Homepage under forced colors/high contrast",
      "condition": "forced-colors: active, prefers-contrast: more",
      "findingIds": []
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "Rendered homepage DOM and selected computed styles",
      "condition": "default",
      "findingIds": [
        "F02",
        "F04",
        "F16"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "Homepage, desktop viewport",
      "condition": "1440x900",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/listing.png",
      "caption": "Vehicle listing/index template",
      "condition": "1440x900",
      "findingIds": [
        "F03"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/detail.png",
      "caption": "Vehicle detail and seller contact template",
      "condition": "1440x900",
      "findingIds": [
        "F05"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "Homepage at narrow viewport showing scaled desktop layout",
      "condition": "360x800",
      "findingIds": [
        "F06",
        "F07"
      ]
    },
    {
      "type": "other",
      "path": "evidence/input-focus-targets.json",
      "caption": "Interactive target size and focus-style probe",
      "condition": "default",
      "findingIds": [
        "F08"
      ]
    },
    {
      "type": "other",
      "path": "evidence/create-flow-probe.json",
      "caption": "Create-listing form and label/autocomplete inspection",
      "condition": "create flow",
      "findingIds": [
        "F27"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/error.png",
      "caption": "Branded 404 recovery state",
      "condition": "1440x900",
      "findingIds": []
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse.json",
      "caption": "Lighthouse performance, accessibility, best-practices and SEO audit",
      "condition": "mobile",
      "findingIds": [
        "F09",
        "F11",
        "F13",
        "F14",
        "F15",
        "F17",
        "F19"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/home-mobile-layout.json",
      "caption": "Mobile layout metrics, CLS and long tasks",
      "condition": "360x800",
      "findingIds": [
        "F10",
        "F20"
      ]
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "Compact homepage network signals",
      "condition": "default",
      "findingIds": [
        "F12"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images.json",
      "caption": "Image sizing, format, responsive-source and alt audit",
      "condition": "default",
      "findingIds": [
        "F18",
        "F28"
      ]
    },
    {
      "type": "other",
      "path": "evidence/site-files.json",
      "caption": "robots, sitemap and manifest endpoint probe",
      "condition": "default",
      "findingIds": [
        "F21"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/detail-dom.json",
      "caption": "Detail template DOM",
      "condition": "default",
      "findingIds": [
        "F22"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "Security response-header audit",
      "condition": "default",
      "findingIds": [
        "F23"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "Third-party tracker inventory",
      "condition": "default",
      "findingIds": [
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/login-probe.json",
      "caption": "Authentication entry inspection",
      "condition": "login hash route",
      "findingIds": [
        "F25"
      ]
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability.json",
      "caption": "Raw HTML versus rendered content comparison",
      "condition": "JS on/off",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-rendered.png",
      "caption": "Rendered browser view",
      "condition": "JavaScript enabled",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-crawler.png",
      "caption": "Crawler/no-JS view",
      "condition": "JavaScript disabled",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/pwa-probe.json",
      "caption": "Manifest fetch and service-worker registration probe",
      "condition": "default",
      "findingIds": [
        "F26"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/error-dom.json",
      "caption": "404 template DOM",
      "condition": "default",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/create-invalid-probe.json",
      "caption": "Invalid submit and recovery behavior",
      "condition": "create flow",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.json",
      "caption": "Baseline heap summary",
      "condition": "before interaction",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-post-scroll.json",
      "caption": "Heap summary after ten scroll cycles",
      "condition": "after repeated interaction",
      "findingIds": []
    }
  ],
  "config": {
    "loaded": false
  },
  "coverage": {
    "catalogVersion": "modern-web-guidance@0.0.172",
    "catalogChecksum": "sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7",
    "expected": 58,
    "recorded": 58,
    "judged": 58,
    "blocked": 0,
    "notRun": 0,
    "missing": 0,
    "unknown": 0,
    "duplicates": 0,
    "complete": true
  },
  "checkOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-color-scheme",
      "status": "issues",
      "confidence": "high",
      "method": "emulated screenshots and computed-style/animation probes",
      "evidence": "The dark-emulated screenshot remains the same light gray and white palette as the default capture; computed `color-scheme` is `normal`.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dark.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "high",
      "method": "emulated screenshots and computed-style/animation probes",
      "evidence": "Under prefers-reduced-motion: reduce, the probe found no running animations and only short 0.2s control transitions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/reduced-motion-probe.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "emulated screenshots and computed-style/animation probes",
      "evidence": "The forced-colors/prefers-contrast screenshot retains readable text, control borders, focus shapes, and inventory imagery.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-high-contrast.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "DOM/CSS/event-listener inspection and interaction review",
      "evidence": "DOM inspection found no authored transition behavior and navigation uses ordinary full-page swaps; the page does not use same-document or cross-document View Transitions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "pass",
      "confidence": "high",
      "method": "DOM/CSS/event-listener inspection and interaction review",
      "evidence": "DOM/CSS and animation probes found no scroll-linked animation or main-thread scroll animation to implement incorrectly.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "high",
      "method": "DOM/CSS/event-listener inspection and interaction review",
      "evidence": "Representative listing and detail pages retain native scrolling and ordinary link/control gestures without custom pointer-drag behavior fighting the platform.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "DOM/CSS inspection and screenshots across scroll/navigation states",
      "evidence": "The long listing keeps static navigation chrome and DOM/CSS evidence contains no scroll-state container rules or progress affordance.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/listing.png"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "issues",
      "confidence": "high",
      "method": "DOM/CSS inspection and screenshots across scroll/navigation states",
      "evidence": "The home DOM contains custom `tz-dropdown` div controls while no `dialog`, `popover`, or `details` elements were found; no anchor-positioning rules were found for floating menus.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "high",
      "method": "DOM/CSS inspection and screenshots across scroll/navigation states",
      "evidence": "Desktop screenshots show persistent labelled navigation, selected filter states, and detail-page breadcrumbs that preserve orientation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "pass",
      "confidence": "high",
      "method": "screenshots and semantic DOM overlay inspection",
      "evidence": "All five initial screenshots show core content immediately with no modal, consent wall, or full-viewport interstitial obscuring it.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "screenshots and semantic DOM overlay inspection",
      "evidence": "The home DOM contains custom `tz-dropdown` div controls while no `dialog`, `popover`, or `details` elements were found; no anchor-positioning rules were found for floating menus.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "screenshots and semantic DOM overlay inspection",
      "evidence": "Desktop screenshots devote both side rails and the top banner to advertising around the primary inventory, reducing the visual share given to the core task.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/detail.png"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "issues",
      "confidence": "high",
      "method": "mobile layout plus focus/target probes",
      "evidence": "At a 360x800 viewport, layout metrics report no viewport meta, a 1010 CSS-pixel layout viewport, and visual scale 0.356; the screenshot shows tiny desktop content rather than mobile reflow.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "mobile layout plus focus/target probes",
      "evidence": "The page probe found zero container rules and the narrow capture preserves the same fixed four-column desktop component layout.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "mobile layout plus focus/target probes",
      "evidence": "The target probe found 60 controls below 24px in one sampled set, including 17px-high header links and 13px controls; several empty card links focus with `outline: none`.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/input-focus-targets.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "representative task walkthrough and state inspection",
      "evidence": "Home, listing, detail, dealer and create screenshots clearly expose vehicles, filtering, seller contact, and create-listing actions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/detail.png",
        "evidence/create-flow-probe.json",
        "evidence/error.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "high",
      "method": "representative task walkthrough and state inspection",
      "evidence": "The listing-to-detail path exposes price and seller contact, while create-listing advances to a labelled required-field form without an account wall.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/detail.png",
        "evidence/create-flow-probe.json",
        "evidence/error.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "pass",
      "confidence": "high",
      "method": "representative task walkthrough and state inspection",
      "evidence": "A deliberately invalid URL returns a branded 404 with a clear homepage recovery link; invalid listing fields use native required validation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/detail.png",
        "evidence/create-flow-probe.json",
        "evidence/error.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "trace, layout, HAR and image audit",
      "evidence": "Lighthouse measured LCP 16.0s, FCP 7.7s, Speed Index 16.6s and performance 0.50; the independent trace measured LCP 11.09s.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "trace, layout, HAR and image audit",
      "evidence": "The layout observer measured CLS 0.397 with large shifts of 0.157 and 0.113; 38 of 39 images lacked explicit dimensions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile-layout.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "issues",
      "confidence": "high",
      "method": "trace, layout, HAR and image audit",
      "evidence": "Lighthouse reports 3.4s of main-thread work, TBT 240ms and time-to-interactive 33.9s; the trace also recorded a 67ms long task.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "trace, layout, HAR and image audit",
      "evidence": "HAR captured 136 requests and 3.53MB transferred; Lighthouse reports 2.51s document response, render-blocking savings of 2.81s, font-display savings of 3s and weak cache lifetimes.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "trace, layout, HAR and image audit",
      "evidence": "Lighthouse estimates 773KiB of unused JavaScript, 71KiB unused CSS, and 23KiB legacy JavaScript; HAR shows 51 script requests totalling 1.72MB.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse accessibility plus DOM/focus/media probes",
      "evidence": "Lighthouse fails image-alt and link-name; the image probe found 10 images without alt, and the home probe found 20 visible form controls without labels.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse accessibility plus DOM/focus/media probes",
      "evidence": "Lighthouse accessibility reports the color-contrast audit as failing.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse accessibility plus DOM/focus/media probes",
      "evidence": "Lighthouse reports no main landmark; home, listing, create and dealer DOMs contain no `<main>`, and the focus probe found empty card links with no outline.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse accessibility plus DOM/focus/media probes",
      "evidence": "At desktop size the inventory cards and detail text use clear hierarchy and readable line lengths; observed clipping is confined to the separately failed mobile adaptation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse accessibility plus DOM/focus/media probes",
      "evidence": "At a 360x800 viewport, layout metrics report no viewport meta, a 1010 CSS-pixel layout viewport, and visual scale 0.356; the screenshot shows tiny desktop content rather than mobile reflow.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F06",
        "F08"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse, console and DOM/image probes",
      "evidence": "Lighthouse `errors-in-console` audit failed on a clean load.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F17"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse, console and DOM/image probes",
      "evidence": "The images primitive found 38 of 39 images without dimensions, 26 oversized, 29 without responsive sources, and 30 in legacy formats.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json"
      ],
      "findingIds": [
        "F18"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse, console and DOM/image probes",
      "evidence": "Lighthouse inspector-issues audit failed and also identified legacy JavaScript; the document lacks a standard mobile viewport.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "findingIds": [
        "F19"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "discoverability, metadata, robots and sitemap probes",
      "evidence": "Home has a descriptive Azerbaijani title and meta description; detail and dealer templates also provide route-specific titles.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "issues",
      "confidence": "high",
      "method": "discoverability, metadata, robots and sitemap probes",
      "evidence": "Lighthouse fails meta-viewport and the DOM/layout probes confirm the primary templates omit viewport metadata, despite crawlable links and permissive robots.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile-layout.json"
      ],
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "issues",
      "confidence": "high",
      "method": "discoverability, metadata, robots and sitemap probes",
      "evidence": "robots points to a sitemap, but the sampled sitemap content lists `http://turbo.az` URLs while page canonicals and transport use HTTPS.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/site-files.json"
      ],
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "issues",
      "confidence": "high",
      "method": "discoverability, metadata, robots and sitemap probes",
      "evidence": "The detail page has Open Graph tags but DOM inspection found no JSON-LD block for the visible vehicle, price, availability, and seller data.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/detail-dom.json"
      ],
      "findingIds": [
        "F22"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "headers, cookies, trackers, secrets and HAR",
      "evidence": "HTTPS, HSTS and nosniff are present, but CSP only declares `frame-ancestors`; Permissions-Policy is missing, and 8 sampled first-party cookies lack Secure while many use SameSite=None.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "headers, cookies, trackers, secrets and HAR",
      "evidence": "Tracker capture found 25 third-party origins and seven known tracker domains; HAR recorded 136 requests and cookies include 400-day analytics identifiers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "issues",
      "confidence": "high",
      "method": "headers, cookies, trackers, secrets and HAR",
      "evidence": "The visible sign-in entry and rendered/source probes showed no WebAuthn/passkey capability; no permission prompt fired on load.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/login-probe.json"
      ],
      "findingIds": [
        "F25"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "headers, cookies, trackers, secrets and HAR",
      "evidence": "HTTPS, HSTS and nosniff are present, but CSP only declares `frame-ancestors`; Permissions-Policy is missing, and 8 sampled first-party cookies lack Secure while many use SameSite=None.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "crawler/no-JS comparison, manifest/service-worker and error route probes",
      "evidence": "Discoverability measured 99% raw/rendered content coverage, with title, h1 and description in server HTML and no empty JS shell.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/discoverability.json",
        "evidence/discoverability-rendered.png",
        "evidence/discoverability-crawler.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "high",
      "method": "crawler/no-JS comparison, manifest/service-worker and error route probes",
      "evidence": "Representative pages and custom controls rendered without clipped open overlays or broken async shells during the inspected states.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "issues",
      "confidence": "high",
      "method": "crawler/no-JS comparison, manifest/service-worker and error route probes",
      "evidence": "A web-app manifest link is present, but the PWA probe found zero service-worker registrations and the cross-origin manifest fetch failed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/pwa-probe.json"
      ],
      "findingIds": [
        "F26"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "pass",
      "confidence": "high",
      "method": "crawler/no-JS comparison, manifest/service-worker and error route probes",
      "evidence": "The 404 route displays a concise error and actionable link back to the homepage rather than a blank shell.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/error.png",
        "evidence/error-dom.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "high",
      "method": "DOM language/direction and locale-content/source signals",
      "evidence": "Primary pages declare `lang=az`, preserve Azerbaijani reading order, and expose a separate RU locale route.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/detail.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "pass",
      "confidence": "high",
      "method": "DOM language/direction and locale-content/source signals",
      "evidence": "Screenshots show Azerbaijani relative dates and locally formatted prices/currency, with a dedicated Russian locale available.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/detail.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and representative-path applicability judgement",
      "evidence": "This Azerbaijan-local marketplace shows relative/local listing dates but has no cross-zone scheduling or event coordination surface in the representative paths.",
      "reason": "This Azerbaijan-local marketplace shows relative/local listing dates but has no cross-zone scheduling or event coordination surface in the representative paths.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "flow, form/autocomplete and visual review",
      "evidence": "Representative browse, detail and create screens show clear prices/actions and no confirmshaming, forced continuity, or consent wall.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/detail.png",
        "evidence/create-flow-probe.json",
        "evidence/create-invalid-probe.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "pass",
      "confidence": "high",
      "method": "flow, form/autocomplete and visual review",
      "evidence": "Create form uses required constraints after submit, keeps the user on the form, and exposes browser validation without deleting entered context.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/detail.png",
        "evidence/create-flow-probe.json",
        "evidence/create-invalid-probe.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "issues",
      "confidence": "high",
      "method": "flow, form/autocomplete and visual review",
      "evidence": "The create-listing flow exposes name, email, phone and location fields, but name/email/phone have empty autocomplete values and several controls lack labels.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/create-flow-probe.json"
      ],
      "findingIds": [
        "F27"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "pass",
      "confidence": "high",
      "method": "flow, form/autocomplete and visual review",
      "evidence": "The inspected marketplace path makes price, seller identity, phone/message actions and listing condition visible before contact, with no checkout or subscription commitment.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/detail.png",
        "evidence/create-flow-probe.json",
        "evidence/create-invalid-probe.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "HAR, images, trace and media/background-work inspection",
      "evidence": "The image audit found 26 oversized images, 29 without responsive sources, 30 legacy-format assets and no modern-format images; Lighthouse estimates 1.23MiB image savings.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json"
      ],
      "findingIds": [
        "F28"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "HAR, images, trace and media/background-work inspection",
      "evidence": "Tracker capture found 25 third-party origins and seven known tracker domains; HAR recorded 136 requests and cookies include 400-day analytics identifiers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "HAR, images, trace and media/background-work inspection",
      "evidence": "Tracker capture found 25 third-party origins and seven known tracker domains; HAR recorded 136 requests and cookies include 400-day analytics identifiers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F24",
        "F28"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and representative-path applicability judgement",
      "evidence": "No declared or observed agent-facing surface; this emerging capability is an opportunity rather than an obligation for the audited consumer marketplace.",
      "reason": "No declared or observed agent-facing surface; this emerging capability is an opportunity rather than an obligation for the audited consumer marketplace.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and representative-path applicability judgement",
      "evidence": "No summarisation or generative task was observed where on-device inference is necessary; this emerging check is not applicable to the representative flows.",
      "reason": "No summarisation or generative task was observed where on-device inference is necessary; this emerging check is not applicable to the representative flows.",
      "pathIds": [
        "home"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "high",
      "method": "baseline/post-interaction heap summaries and metrics",
      "evidence": "After ten full-page scroll cycles, heap self size rose only 0.53% (48.11MB to 48.36MB) and Object/Promise populations stayed effectively flat.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-scroll.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "high",
      "method": "baseline/post-interaction heap summaries and metrics",
      "evidence": "The image-heavy marketplace baseline heap summary is about 48.1MB; despite a large snapshot graph, it remained bounded through the exercise.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-scroll.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "high",
      "method": "baseline/post-interaction heap summaries and metrics",
      "evidence": "No Detached* constructor appeared in either top-constructor summary; post-scroll edges fell and key constructor populations remained stable.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-scroll.json"
      ]
    }
  ],
  "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": [
        "F04",
        "F05"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F06",
        "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",
        "F06",
        "F08"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F17",
        "F18",
        "F19"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F20",
        "F21",
        "F22"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F23",
        "F24",
        "F25"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F26"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F27"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F28",
        "F24"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "No declared or observed agent-facing surface; this emerging capability is an opportunity rather than an obligation for the audited consumer marketplace. No summarisation or generative task was observed where on-device inference is necessary; this emerging check is not applicable to the representative flows."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and search/filter surface; represents the primary discovery entry point.",
      "url": "https://turbo.az",
      "conditions": [
        "desktop",
        "360x800",
        "dark preference",
        "reduced motion",
        "forced colors",
        "keyboard focus",
        "no JavaScript"
      ],
      "result": "issues"
    },
    {
      "id": "listing",
      "description": "All-inventory listing; represents long result pages and card grids.",
      "url": "https://turbo.az/autos",
      "conditions": [
        "desktop"
      ],
      "result": "issues"
    },
    {
      "id": "detail",
      "description": "Representative vehicle detail; covers offer metadata, media and seller contact.",
      "url": "https://turbo.az/autos/10504896-kia-sorento",
      "conditions": [
        "desktop"
      ],
      "result": "issues"
    },
    {
      "id": "create",
      "description": "Create-listing journey through vehicle type selection and required-field form.",
      "url": "https://turbo.az/autos/new",
      "conditions": [
        "desktop",
        "invalid submit"
      ],
      "result": "issues"
    },
    {
      "id": "dealers",
      "description": "Dealer index; represents directory/index content.",
      "url": "https://turbo.az/avtosalonlar",
      "conditions": [
        "desktop"
      ],
      "result": "issues"
    },
    {
      "id": "error",
      "description": "Unknown URL; covers HTTP/error recovery state.",
      "url": "https://turbo.az/this-route-does-not-exist-audit",
      "conditions": [
        "desktop"
      ],
      "result": "pass"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "severity": "medium",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "summary": "No dark color scheme",
      "evidence": "The dark-emulated screenshot remains the same light gray and white palette as the default capture; computed `color-scheme` is `normal`.",
      "suggestedFix": "Declare `color-scheme: light dark` and provide preference-driven surface/text tokens with `prefers-color-scheme` or `light-dark()`.",
      "artifacts": [
        "evidence/home-dark.png"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F02",
      "severity": "low",
      "confidence": "high",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "same-document-transitions",
      "summary": "Route and state changes are abrupt",
      "evidence": "DOM inspection found no authored transition behavior and navigation uses ordinary full-page swaps; the page does not use same-document or cross-document View Transitions.",
      "suggestedFix": "Add progressive View Transitions to route and major state changes, while retaining normal navigation as fallback.",
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F03",
      "severity": "low",
      "confidence": "high",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "shrinking-header-on-scroll",
      "summary": "Page chrome does not respond to scroll state",
      "evidence": "The long listing keeps static navigation chrome and DOM/CSS evidence contains no scroll-state container rules or progress affordance.",
      "suggestedFix": "Use a sticky header with a CSS scroll-state container query or a lightweight progress/scrollability affordance where useful.",
      "artifacts": [
        "evidence/listing.png"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F04",
      "severity": "low",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "semantic-dismissible-primitives",
      "guidanceId": "declarative-dialog-popover-control",
      "summary": "Custom dropdown overlays bypass semantic primitives",
      "evidence": "The home DOM contains custom `tz-dropdown` div controls while no `dialog`, `popover`, or `details` elements were found; no anchor-positioning rules were found for floating menus.",
      "suggestedFix": "Use native select where possible, or `popover`/dialog with declarative light dismiss and CSS anchor positioning for transient menus.",
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F05",
      "severity": "medium",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "reduced-chrome",
      "guidanceId": "reduce-style-repetition",
      "summary": "Advertising chrome competes with listings",
      "evidence": "Desktop screenshots devote both side rails and the top banner to advertising around the primary inventory, reducing the visual share given to the core task.",
      "suggestedFix": "Reduce or defer non-essential ad chrome, reserve stable ad slots, and prioritise inventory in the initial viewport.",
      "artifacts": [
        "evidence/detail.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F06",
      "severity": "critical",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "responsive-no-horizontal-scroll",
      "guidanceId": "fluid-scaling",
      "summary": "Mobile renders a scaled desktop canvas",
      "evidence": "At a 360x800 viewport, layout metrics report no viewport meta, a 1010 CSS-pixel layout viewport, and visual scale 0.356; the screenshot shows tiny desktop content rather than mobile reflow.",
      "suggestedFix": "Add a standard viewport meta tag and replace the fixed 1010px shell with fluid/intrinsic responsive layout.",
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F07",
      "severity": "medium",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "summary": "Components do not adapt to their container",
      "evidence": "The page probe found zero container rules and the narrow capture preserves the same fixed four-column desktop component layout.",
      "suggestedFix": "Introduce container queries for search controls, cards, and navigation so each component adapts to available inline size.",
      "artifacts": [
        "evidence/home-mobile.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F08",
      "severity": "high",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "summary": "Touch targets and some focus states are inadequate",
      "evidence": "The target probe found 60 controls below 24px in one sampled set, including 17px-high header links and 13px controls; several empty card links focus with `outline: none`.",
      "suggestedFix": "Provide at least 24x24 CSS-pixel targets (prefer 44x44 for primary touch controls), non-hover affordances, and clear `:focus-visible` styling.",
      "artifacts": [
        "evidence/input-focus-targets.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F09",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "summary": "Loading performance is poor",
      "evidence": "Lighthouse measured LCP 16.0s, FCP 7.7s, Speed Index 16.6s and performance 0.50; the independent trace measured LCP 11.09s.",
      "suggestedFix": "Prioritise the LCP resource, reduce server/document latency, and defer non-critical scripts, ads, and below-fold work.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F10",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "visually-stable-font-fallbacks",
      "summary": "The mobile load shifts substantially",
      "evidence": "The layout observer measured CLS 0.397 with large shifts of 0.157 and 0.113; 38 of 39 images lacked explicit dimensions.",
      "suggestedFix": "Reserve image/ad space with width, height, or aspect-ratio and use stable font fallbacks.",
      "artifacts": [
        "evidence/home-mobile-layout.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F11",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-main-thread",
      "guidanceId": "break-up-long-tasks",
      "summary": "Main-thread work delays readiness",
      "evidence": "Lighthouse reports 3.4s of main-thread work, TBT 240ms and time-to-interactive 33.9s; the trace also recorded a 67ms long task.",
      "suggestedFix": "Remove unnecessary startup work, break long tasks, and schedule non-critical work by priority.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F12",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "summary": "Critical delivery is slow and heavy",
      "evidence": "HAR captured 136 requests and 3.53MB transferred; Lighthouse reports 2.51s document response, render-blocking savings of 2.81s, font-display savings of 3s and weak cache lifetimes.",
      "suggestedFix": "Shorten document latency, defer confirmed non-critical resources, set useful cache lifetimes, use `font-display`, and prioritise the LCP image.",
      "artifacts": [
        "evidence/home-summary.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F13",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "summary": "Large unused script and style payloads ship on load",
      "evidence": "Lighthouse estimates 773KiB of unused JavaScript, 71KiB unused CSS, and 23KiB legacy JavaScript; HAR shows 51 script requests totalling 1.72MB.",
      "suggestedFix": "Code-split by route/feature, conditionally load analytics and ads, remove unused CSS, and stop serving avoidable legacy code.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F14",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "summary": "Accessible names and labels are incomplete",
      "evidence": "Lighthouse fails image-alt and link-name; the image probe found 10 images without alt, and the home probe found 20 visible form controls without labels.",
      "suggestedFix": "Add meaningful alt text, discernible link names, and programmatic labels for every visible form control.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F15",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "summary": "Text contrast fails WCAG checks",
      "evidence": "Lighthouse accessibility reports the color-contrast audit as failing.",
      "suggestedFix": "Adjust text and essential UI color tokens to meet WCAG AA in default, dark, and forced-color conditions.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F16",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "summary": "Landmarks and focus treatment are incomplete",
      "evidence": "Lighthouse reports no main landmark; home, listing, create and dealer DOMs contain no `<main>`, and the focus probe found empty card links with no outline.",
      "suggestedFix": "Add semantic main/navigation landmarks, remove unnamed links, and make keyboard focus consistently visible in reading order.",
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F17",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "html",
      "summary": "The page logs browser errors",
      "evidence": "Lighthouse `errors-in-console` audit failed on a clean load.",
      "suggestedFix": "Resolve network and runtime console errors and monitor uncaught exceptions in production.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F18",
      "severity": "high",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "html",
      "summary": "Image asset markup is unsound",
      "evidence": "The images primitive found 38 of 39 images without dimensions, 26 oversized, 29 without responsive sources, and 30 in legacy formats.",
      "suggestedFix": "Emit intrinsic dimensions, responsive `srcset`/`sizes`, and appropriately compressed modern formats.",
      "artifacts": [
        "evidence/images.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F19",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "summary": "DevTools reports platform hygiene issues",
      "evidence": "Lighthouse inspector-issues audit failed and also identified legacy JavaScript; the document lacks a standard mobile viewport.",
      "suggestedFix": "Review DevTools Issues, remove deprecated/legacy behavior, and keep platform metadata and source delivery clean.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F20",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-discoverable",
      "principleCheckId": "crawlable-and-mobile-friendly",
      "guidanceId": "html",
      "summary": "Public pages fail mobile-friendly viewport requirements",
      "evidence": "Lighthouse fails meta-viewport and the DOM/layout probes confirm the primary templates omit viewport metadata, despite crawlable links and permissive robots.",
      "suggestedFix": "Add a standard scalable viewport declaration to every public template and preserve real href links.",
      "artifacts": [
        "evidence/home-mobile-layout.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F21",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-discoverable",
      "principleCheckId": "canonical-and-indexing-signals",
      "guidanceId": "html",
      "summary": "Sitemap URLs are inconsistent with HTTPS canonicals",
      "evidence": "robots points to a sitemap, but the sampled sitemap content lists `http://turbo.az` URLs while page canonicals and transport use HTTPS.",
      "suggestedFix": "Emit HTTPS sitemap URLs that agree with canonical links and verify the robots-declared sitemap endpoint.",
      "artifacts": [
        "evidence/site-files.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F22",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-discoverable",
      "principleCheckId": "structured-and-shareable-metadata",
      "guidanceId": "html",
      "summary": "Vehicle detail pages lack structured product/vehicle data",
      "evidence": "The detail page has Open Graph tags but DOM inspection found no JSON-LD block for the visible vehicle, price, availability, and seller data.",
      "suggestedFix": "Add accurate schema.org JSON-LD for vehicle/product offers and keep it aligned with visible content.",
      "artifacts": [
        "evidence/detail-dom.json"
      ],
      "effort": "medium",
      "pathId": "detail",
      "url": "https://turbo.az/autos/10504896-kia-sorento"
    },
    {
      "id": "F23",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "summary": "Security policy and cookies need hardening",
      "evidence": "HTTPS, HSTS and nosniff are present, but CSP only declares `frame-ancestors`; Permissions-Policy is missing, and 8 sampled first-party cookies lack Secure while many use SameSite=None.",
      "suggestedFix": "Deploy a restrictive content CSP, add an intentional Permissions-Policy, and set Secure/SameSite cookie attributes consistently.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F24",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "summary": "Tracking and third-party footprint is excessive",
      "evidence": "Tracker capture found 25 third-party origins and seven known tracker domains; HAR recorded 136 requests and cookies include 400-day analytics identifiers.",
      "suggestedFix": "Audit vendor necessity, gate optional tracking on consent, shorten identifier lifetimes, batch analytics, and defer third parties until needed.",
      "artifacts": [
        "evidence/trackers.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F25",
      "severity": "low",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "in-context-permissions-and-modern-auth",
      "guidanceId": "passkeys",
      "summary": "Authentication exposes no phishing-resistant option",
      "evidence": "The visible sign-in entry and rendered/source probes showed no WebAuthn/passkey capability; no permission prompt fired on load.",
      "suggestedFix": "Offer passkey/WebAuthn registration and authentication alongside recovery-safe fallbacks.",
      "artifacts": [
        "evidence/login-probe.json"
      ],
      "effort": "large",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F26",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-resilient",
      "principleCheckId": "offline-and-installable",
      "guidanceId": "html",
      "summary": "The app-like marketplace has no offline worker",
      "evidence": "A web-app manifest link is present, but the PWA probe found zero service-worker registrations and the cross-origin manifest fetch failed.",
      "suggestedFix": "Make the manifest fetchable with correct CORS and add a minimal service worker/offline fallback for core browsing and recovery.",
      "artifacts": [
        "evidence/pwa-probe.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F27",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-trustworthy",
      "principleCheckId": "trustworthy-input-assistance",
      "guidanceId": "autofill-sign-up-form",
      "summary": "Seller form omits useful autocomplete tokens",
      "evidence": "The create-listing flow exposes name, email, phone and location fields, but name/email/phone have empty autocomplete values and several controls lack labels.",
      "suggestedFix": "Apply correct `name`, `email`, `tel`, and address autocomplete tokens and preserve visible labels.",
      "artifacts": [
        "evidence/create-flow-probe.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://turbo.az"
    },
    {
      "id": "F28",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "deliver-optimized-decorative-images",
      "summary": "Image delivery wastes bytes",
      "evidence": "The image audit found 26 oversized images, 29 without responsive sources, 30 legacy-format assets and no modern-format images; Lighthouse estimates 1.23MiB image savings.",
      "suggestedFix": "Generate AVIF/WebP variants and responsive sources sized to card/detail slots, including decorative ad imagery.",
      "artifacts": [
        "evidence/images.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://turbo.az"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Add a standard viewport meta tag and replace the fixed 1010px shell with fluid/intrinsic responsive layout.",
      "priority": 1,
      "findingIds": [
        "F06"
      ],
      "guidanceId": "fluid-scaling",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Prioritise the LCP resource, reduce server/document latency, and defer non-critical scripts, ads, and below-fold work.",
      "priority": 2,
      "findingIds": [
        "F09"
      ],
      "guidanceId": "performance",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Reserve image/ad space with width, height, or aspect-ratio and use stable font fallbacks.",
      "priority": 3,
      "findingIds": [
        "F10"
      ],
      "guidanceId": "visually-stable-font-fallbacks",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Shorten document latency, defer confirmed non-critical resources, set useful cache lifetimes, use `font-display`, and prioritise the LCP image.",
      "priority": 4,
      "findingIds": [
        "F12"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Audit vendor necessity, gate optional tracking on consent, shorten identifier lifetimes, batch analytics, and defer third parties until needed.",
      "priority": 5,
      "findingIds": [
        "F24"
      ],
      "guidanceId": "privacy",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Provide at least 24x24 CSS-pixel targets (prefer 44x44 for primary touch controls), non-hover affordances, and clear `:focus-visible` styling.",
      "priority": 6,
      "findingIds": [
        "F08"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Add meaningful alt text, discernible link names, and programmatic labels for every visible form control.",
      "priority": 7,
      "findingIds": [
        "F14"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Adjust text and essential UI color tokens to meet WCAG AA in default, dark, and forced-color conditions.",
      "priority": 8,
      "findingIds": [
        "F15"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Add semantic main/navigation landmarks, remove unnamed links, and make keyboard focus consistently visible in reading order.",
      "priority": 9,
      "findingIds": [
        "F16"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T10",
      "title": "Deploy a restrictive content CSP, add an intentional Permissions-Policy, and set Secure/SameSite cookie attributes consistently.",
      "priority": 10,
      "findingIds": [
        "F23"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T11",
      "title": "Generate AVIF/WebP variants and responsive sources sized to card/detail slots, including decorative ad imagery.",
      "priority": 11,
      "findingIds": [
        "F28"
      ],
      "guidanceId": "deliver-optimized-decorative-images",
      "status": "open"
    },
    {
      "id": "T12",
      "title": "Code-split by route/feature, conditionally load analytics and ads, remove unused CSS, and stop serving avoidable legacy code.",
      "priority": 12,
      "findingIds": [
        "F13"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T13",
      "title": "Remove unnecessary startup work, break long tasks, and schedule non-critical work by priority.",
      "priority": 13,
      "findingIds": [
        "F11"
      ],
      "guidanceId": "break-up-long-tasks",
      "status": "open"
    },
    {
      "id": "T14",
      "title": "Emit intrinsic dimensions, responsive `srcset`/`sizes`, and appropriately compressed modern formats.",
      "priority": 14,
      "findingIds": [
        "F18"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T15",
      "title": "Add a standard scalable viewport declaration to every public template and preserve real href links.",
      "priority": 15,
      "findingIds": [
        "F20"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T16",
      "title": "Introduce container queries for search controls, cards, and navigation so each component adapts to available inline size.",
      "priority": 16,
      "findingIds": [
        "F07"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    },
    {
      "id": "T17",
      "title": "Reduce or defer non-essential ad chrome, reserve stable ad slots, and prioritise inventory in the initial viewport.",
      "priority": 17,
      "findingIds": [
        "F05"
      ],
      "guidanceId": "reduce-style-repetition",
      "status": "open"
    },
    {
      "id": "T18",
      "title": "Emit HTTPS sitemap URLs that agree with canonical links and verify the robots-declared sitemap endpoint.",
      "priority": 18,
      "findingIds": [
        "F21"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T19",
      "title": "Add accurate schema.org JSON-LD for vehicle/product offers and keep it aligned with visible content.",
      "priority": 19,
      "findingIds": [
        "F22"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T20",
      "title": "Make the manifest fetchable with correct CORS and add a minimal service worker/offline fallback for core browsing and recovery.",
      "priority": 20,
      "findingIds": [
        "F26"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T21",
      "title": "Apply correct `name`, `email`, `tel`, and address autocomplete tokens and preserve visible labels.",
      "priority": 21,
      "findingIds": [
        "F27"
      ],
      "guidanceId": "autofill-sign-up-form",
      "status": "open"
    },
    {
      "id": "T22",
      "title": "Resolve network and runtime console errors and monitor uncaught exceptions in production.",
      "priority": 22,
      "findingIds": [
        "F17"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T23",
      "title": "Review DevTools Issues, remove deprecated/legacy behavior, and keep platform metadata and source delivery clean.",
      "priority": 23,
      "findingIds": [
        "F19"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T24",
      "title": "Declare `color-scheme: light dark` and provide preference-driven surface/text tokens with `prefers-color-scheme` or `light-dark()`.",
      "priority": 24,
      "findingIds": [
        "F01"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T25",
      "title": "Use native select where possible, or `popover`/dialog with declarative light dismiss and CSS anchor positioning for transient menus.",
      "priority": 25,
      "findingIds": [
        "F04"
      ],
      "guidanceId": "declarative-dialog-popover-control",
      "status": "open"
    },
    {
      "id": "T26",
      "title": "Add progressive View Transitions to route and major state changes, while retaining normal navigation as fallback.",
      "priority": 26,
      "findingIds": [
        "F02"
      ],
      "guidanceId": "same-document-transitions",
      "status": "open"
    },
    {
      "id": "T27",
      "title": "Use a sticky header with a CSS scroll-state container query or a lightweight progress/scrollability affordance where useful.",
      "priority": 27,
      "findingIds": [
        "F03"
      ],
      "guidanceId": "shrinking-header-on-scroll",
      "status": "open"
    },
    {
      "id": "T28",
      "title": "Offer passkey/WebAuthn registration and authentication alongside recovery-safe fallbacks.",
      "priority": 28,
      "findingIds": [
        "F25"
      ],
      "guidanceId": "passkeys",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 6,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-20T10-27-43-187Z"
}
