{
  "url": "https://isaidub.guru",
  "auditedAt": "2026-07-23T16:33:30.000Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete audit of the redirected canonical site https://isaidub.ceo/ across home, listing, detail, download-step, updates, and error paths.",
  "page": {
    "appType": "mpa",
    "framework": "Server-rendered PHP/Apache-style MPA",
    "notes": "https://isaidub.guru redirects to https://isaidub.ceo/. Public Tamil-dubbed movie catalog. Representative templates audited; year variants and other movie details were deduplicated as shared templates. Checkout/account/forms were not covered because none exist."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "evaluate-probe",
    "layout-metrics",
    "trace",
    "har",
    "discoverability",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "heap-summary",
    "lighthouse",
    "curl-response-inspection",
    "modern-web-guidance"
  ],
  "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/404-mobile.png",
      "caption": "Evidence captured during the audit: 404-mobile.png",
      "findingIds": [
        "F008",
        "F024"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/404-probe.json",
      "caption": "Evidence captured during the audit: 404-probe.json",
      "findingIds": [
        "F008",
        "F024"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-discoverability-crawler.png",
      "caption": "Evidence captured during the audit: detail-discoverability-crawler.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-discoverability-rendered.png",
      "caption": "Evidence captured during the audit: detail-discoverability-rendered.png"
    },
    {
      "type": "discoverability",
      "path": "evidence/detail-discoverability.json",
      "caption": "Evidence captured during the audit: detail-discoverability.json"
    },
    {
      "type": "layout",
      "path": "evidence/detail-layout.json",
      "caption": "Evidence captured during the audit: detail-layout.json"
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-mobile.png",
      "caption": "Evidence captured during the audit: detail-mobile.png",
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/detail-probe.json",
      "caption": "Evidence captured during the audit: detail-probe.json",
      "findingIds": [
        "F004",
        "F013",
        "F016",
        "F019",
        "F020"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/download-step-mobile.png",
      "caption": "Evidence captured during the audit: download-step-mobile.png",
      "findingIds": [
        "F002"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/download-step-probe.json",
      "caption": "Evidence captured during the audit: download-step-probe.json"
    },
    {
      "type": "other",
      "path": "evidence/forced-colors-probe.json",
      "caption": "Evidence captured during the audit: forced-colors-probe.json",
      "condition": "forced-colors: active"
    },
    {
      "type": "other",
      "path": "evidence/guidance-list.json",
      "caption": "Evidence captured during the audit: guidance-list.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-0.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-0.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-1.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-1.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-2.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-2.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-3.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-3.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-4.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-4.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-5.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-5.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-6.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-6.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-retrieve-7.md",
      "caption": "Evidence captured during the audit: guidance-retrieve-7.md"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-SEO-metadata-structured-data-crawler-dis.json",
      "caption": "Evidence captured during the audit: guidance-search-SEO-metadata-structured-data-crawler-dis.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-agent-tools-webmcp-on-device-AI.json",
      "caption": "Evidence captured during the audit: guidance-search-agent-tools-webmcp-on-device-AI.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-core-web-vitals-resource-delivery-images.json",
      "caption": "Evidence captured during the audit: guidance-search-core-web-vitals-resource-delivery-images.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-dark-mode-reduced-motion-contrast-respon.json",
      "caption": "Evidence captured during the audit: guidance-search-dark-mode-reduced-motion-contrast-respon.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-forms-task-success-humane-errors-autocom.json",
      "caption": "Evidence captured during the audit: guidance-search-forms-task-success-humane-errors-autocom.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-internationalization-language-direction-.json",
      "caption": "Evidence captured during the audit: guidance-search-internationalization-language-direction-.json"
    },
    {
      "type": "heap",
      "path": "evidence/guidance-search-memory-leak-retained-heap-detached-DOM-l.json",
      "caption": "Evidence captured during the audit: guidance-search-memory-leak-retained-heap-detached-DOM-l.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-progressive-enhancement-offline-failure-.json",
      "caption": "Evidence captured during the audit: guidance-search-progressive-enhancement-offline-failure-.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-security-privacy-headers-cookies-third-p.json",
      "caption": "Evidence captured during the audit: guidance-search-security-privacy-headers-cookies-third-p.json"
    },
    {
      "type": "other",
      "path": "evidence/guidance-search-view-transitions-scroll-animations-navig.json",
      "caption": "Evidence captured during the audit: guidance-search-view-transitions-scroll-animations-navig.json"
    },
    {
      "type": "other",
      "path": "evidence/home-cookies.json",
      "caption": "Evidence captured during the audit: home-cookies.json",
      "findingIds": [
        "F021",
        "F022",
        "F023"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark-reduced.png",
      "caption": "Evidence captured during the audit: home-dark-reduced.png",
      "findingIds": [
        "F001"
      ],
      "condition": "prefers-color-scheme: dark; prefers-reduced-motion: reduce"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "Evidence captured during the audit: home-desktop.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-crawler.png",
      "caption": "Evidence captured during the audit: home-discoverability-crawler.png"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-rendered.png",
      "caption": "Evidence captured during the audit: home-discoverability-rendered.png"
    },
    {
      "type": "discoverability",
      "path": "evidence/home-discoverability.json",
      "caption": "Evidence captured during the audit: home-discoverability.json"
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "Evidence captured during the audit: home-dom.json",
      "findingIds": [
        "F006",
        "F010",
        "F014",
        "F025"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-forced-colors.png",
      "caption": "Evidence captured during the audit: home-forced-colors.png",
      "condition": "forced-colors: active"
    },
    {
      "type": "other",
      "path": "evidence/home-headers.json",
      "caption": "Evidence captured during the audit: home-headers.json",
      "findingIds": [
        "F021",
        "F023"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/home-heap.json",
      "caption": "Evidence captured during the audit: home-heap.json"
    },
    {
      "type": "other",
      "path": "evidence/home-images.json",
      "caption": "Evidence captured during the audit: home-images.json",
      "findingIds": [
        "F016"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/home-layout-mobile.json",
      "caption": "Evidence captured during the audit: home-layout-mobile.json",
      "findingIds": [
        "F009",
        "F015",
        "F018"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "Evidence captured during the audit: home-mobile.png",
      "findingIds": [
        "F005"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/home-secrets.json",
      "caption": "Evidence captured during the audit: home-secrets.json"
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "Evidence captured during the audit: home-summary.json",
      "findingIds": [
        "F010",
        "F011",
        "F022",
        "F026",
        "F027"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "Evidence captured during the audit: home-trace-summary.json",
      "findingIds": [
        "F009"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "Evidence captured during the audit: home-trace.json"
    },
    {
      "type": "other",
      "path": "evidence/home-trackers.json",
      "caption": "Evidence captured during the audit: home-trackers.json",
      "findingIds": [
        "F022",
        "F027"
      ]
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "Evidence captured during the audit: home.har"
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "Evidence captured during the audit: lighthouse-home.json"
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-summary.json",
      "caption": "Evidence captured during the audit: lighthouse-summary.json",
      "findingIds": [
        "F009",
        "F010",
        "F011",
        "F012",
        "F017",
        "F026"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/listing-layout.json",
      "caption": "Evidence captured during the audit: listing-layout.json"
    },
    {
      "type": "screenshot",
      "path": "evidence/listing-mobile.png",
      "caption": "Evidence captured during the audit: listing-mobile.png",
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/listing-probe.json",
      "caption": "Evidence captured during the audit: listing-probe.json",
      "findingIds": [
        "F019",
        "F020"
      ]
    },
    {
      "type": "other",
      "path": "evidence/memory-metrics.json",
      "caption": "Evidence captured during the audit: memory-metrics.json"
    },
    {
      "type": "other",
      "path": "evidence/platform-accessibility-probe.json",
      "caption": "Evidence captured during the audit: platform-accessibility-probe.json",
      "findingIds": [
        "F002",
        "F006",
        "F007",
        "F013",
        "F015",
        "F016",
        "F025"
      ]
    },
    {
      "type": "other",
      "path": "evidence/preferences-probe.json",
      "caption": "Evidence captured during the audit: preferences-probe.json",
      "findingIds": [
        "F001"
      ]
    },
    {
      "type": "other",
      "path": "evidence/recon.json",
      "caption": "Evidence captured during the audit: recon.json",
      "findingIds": [
        "F018",
        "F019",
        "F025"
      ]
    },
    {
      "type": "other",
      "path": "evidence/robots.txt",
      "caption": "Evidence captured during the audit: robots.txt",
      "findingIds": [
        "F019"
      ]
    },
    {
      "type": "other",
      "path": "evidence/sitemap.xml",
      "caption": "Evidence captured during the audit: sitemap.xml",
      "findingIds": [
        "F019"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/updates-layout.json",
      "caption": "Evidence captured during the audit: updates-layout.json",
      "findingIds": [
        "F003",
        "F004",
        "F005",
        "F014"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/updates-mobile.png",
      "caption": "Evidence captured during the audit: updates-mobile.png",
      "findingIds": [
        "F003",
        "F005",
        "F014"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/updates-probe.json",
      "caption": "Evidence captured during the audit: updates-probe.json",
      "findingIds": [
        "F004",
        "F013"
      ]
    }
  ],
  "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 dark preference, screenshot, and computed-style/CSS probe.",
      "evidence": "Under emulated prefers-color-scheme: dark, the body remained rgb(249,249,249) with black text and computed color-scheme was normal; the dark screenshot matched the light rendering.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dark-reduced.png",
        "evidence/preferences-probe.json"
      ],
      "findingIds": [
        "F001"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "pass",
      "confidence": "high",
      "method": "Emulated reduced-motion condition and getAnimations() probe.",
      "evidence": "Under prefers-reduced-motion: reduce, document.getAnimations() returned an empty list on the home template, so no active non-essential motion remained to suppress.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/preferences-probe.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Forced-colors screenshot and computed-color probe.",
      "evidence": "Under forced-colors: active, body colors mapped to black/white system colors and links to yellow; text and links remained visible.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-forced-colors.png",
        "evidence/forced-colors-probe.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "Representative route walkthrough plus CSS feature probe.",
      "evidence": "The MPA has meaningful home, listing, detail, and download-step navigations, but DOM/CSS inspection found no view-transition CSS or opt-in; route changes are abrupt full-document swaps.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "download"
      ],
      "artifacts": [
        "evidence/platform-accessibility-probe.json",
        "evidence/download-step-mobile.png"
      ],
      "findingIds": [
        "F002"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Screenshot, DOM, CSS, and animation feature inspection.",
      "evidence": "No parallax, scrollytelling, entry/exit reveal, carousel, or other scroll-linked motion exists on the sampled templates, so there is no scroll-linked effect to implement declaratively.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "reason": "No scroll-linked motion is present on the representative templates."
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "not-applicable",
      "confidence": "high",
      "method": "DOM control inventory and representative path walkthrough.",
      "evidence": "The site exposes ordinary links and pagination only; no swipe, drag, pull-to-refresh, carousel, or custom pointer gesture was present on sampled paths.",
      "pathIds": [
        "home",
        "listing",
        "detail"
      ],
      "reason": "No gesture-driven interaction exists."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Mobile layout measurement and CSS feature inspection.",
      "evidence": "The recent-updates template is 57,034 CSS pixels tall, but CSS/DOM inspection found no sticky progress, shrinking header, or scroll-state affordance.",
      "pathIds": [
        "updates"
      ],
      "artifacts": [
        "evidence/updates-layout.json",
        "evidence/updates-mobile.png"
      ],
      "findingIds": [
        "F003"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "not-applicable",
      "confidence": "high",
      "method": "DOM overlay inventory and screenshots.",
      "evidence": "No tooltip, popover, menu, or other anchored overlay appears on the sampled templates (zero dialog/popover elements).",
      "pathIds": [
        "home",
        "listing",
        "detail"
      ],
      "reason": "There is no anchored overlay to position."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "issues",
      "confidence": "high",
      "method": "Heading/landmark probe and mobile screenshots.",
      "evidence": "Detail and updates templates have no h1 and no breadcrumb or main/nav landmarks; the 57,034px updates stream offers no location/progress cue beyond date text.",
      "pathIds": [
        "detail",
        "updates"
      ],
      "artifacts": [
        "evidence/detail-probe.json",
        "evidence/updates-probe.json",
        "evidence/updates-layout.json"
      ],
      "findingIds": [
        "F004"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "pass",
      "confidence": "high",
      "method": "First-load screenshots and DOM overlay inventory.",
      "evidence": "Load screenshots across four templates show content immediately with no full-viewport popup, consent wall, interstitial, or overlay; DOM reports no dialog/popover.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/listing-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/updates-mobile.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "not-applicable",
      "confidence": "high",
      "method": "DOM inventory for dialog, popover, details, forms, and overlays.",
      "evidence": "No transient disclosure, modal flow, select, or overlay exists on the sampled paths, so no dismissible custom primitive needs evaluation.",
      "pathIds": [
        "home",
        "listing",
        "detail"
      ],
      "reason": "No overlay or disclosure control exists."
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Full-page screenshots, body-text recon, and layout height.",
      "evidence": "The home page repeats keyword-heavy promotional copy and 21 near-identical update rows before its category navigation; the updates page is a 57,034px undifferentiated stream.",
      "pathIds": [
        "home",
        "updates"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/updates-mobile.png",
        "evidence/updates-layout.json"
      ],
      "findingIds": [
        "F005"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "high",
      "method": "Mobile layout primitive on four templates.",
      "evidence": "At 360x800, all four templates reported scrollWidth 360, clientWidth 360, viewport meta present, and 0px horizontal overflow.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/listing-layout.json",
        "evidence/detail-layout.json",
        "evidence/updates-layout.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Rendered CSS feature probe across reusable components.",
      "evidence": "CSS inspection found no @container or container-type rules; reusable movie, folder, pagination, and form components adapt only through viewport media queries.",
      "pathIds": [
        "home",
        "listing"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "findingIds": [
        "F006"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Programmatic focus and bounding-box inventory.",
      "evidence": "Keyboard focus is visible, but many category links measure only 14px high and update links 17px high, well below a comfortable touch target.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-accessibility-probe.json"
      ],
      "findingIds": [
        "F007"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "First-viewport screenshots, headings, and body-text walkthrough.",
      "evidence": "The home h1 and introductory text identify the Tamil-dubbed catalog, listing titles name their year, and detail content presents movie facts; the next content links are visible in each first viewport.",
      "pathIds": [
        "home",
        "listing",
        "detail"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/listing-mobile.png",
        "evidence/detail-mobile.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "high",
      "method": "Four-step route walkthrough with DOM and screenshots.",
      "evidence": "The representative journey completed predictably from a home Download Now link to movie detail, then Red Eye (Original), then explicit 720p/360p choices with real hrefs and no account wall.",
      "pathIds": [
        "home",
        "detail",
        "download"
      ],
      "artifacts": [
        "evidence/detail-probe.json",
        "evidence/download-step-probe.json",
        "evidence/download-step-mobile.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "Intentional missing-route navigation, screenshot, and DOM probe.",
      "evidence": "A missing URL returns a bare Apache 404 with no site chrome, home link, search, retry, or recovery action.",
      "pathIds": [
        "error"
      ],
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/404-probe.json"
      ],
      "findingIds": [
        "F008"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse mobile audit corroborated by trace and layout observers.",
      "evidence": "Mobile Lighthouse measured LCP 4.2s (poor), despite CLS 0 and TBT 0ms; the separate desktop trace measured LCP about 1.0s, so the mobile load remains the failing common condition.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json",
        "evidence/home-layout-mobile.json"
      ],
      "findingIds": [
        "F009"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "pass",
      "confidence": "high",
      "method": "Layout-shift observers and Lighthouse.",
      "evidence": "Layout observers measured CLS 0 to 0.000103 across all four templates, and Lighthouse measured CLS 0.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/listing-layout.json",
        "evidence/detail-layout.json",
        "evidence/updates-layout.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "Trace summary, long-task observers, and Lighthouse.",
      "evidence": "The trace and all layout captures recorded no long tasks and 0ms total blocking time; Lighthouse also measured TBT 0ms.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "HAR initiator/priority review confirmed against DOM script async attributes, response headers, and Lighthouse.",
      "evidence": "The HAR confirms two parser-inserted high-priority stylesheets (site CSS plus Google Fonts), while the document is cache-control:no-store and mobile LCP is 4.2s; the async scripts are not counted as render-blocking.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-dom.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F010"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse unused-code audit and HAR byte attribution.",
      "evidence": "Lighthouse estimates 67 KiB unused JavaScript; HAR shows Google Tag Manager alone transfers 152,705 bytes versus 15,701 first-party bytes.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F011"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "pass",
      "confidence": "high",
      "method": "DOM semantic inventory, image primitive, and Lighthouse accessibility audits.",
      "evidence": "All 17 home images have alt text, links use native anchors, and no form controls or canvas are present; Lighthouse image-alt passed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-images.json",
        "evidence/platform-accessibility-probe.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse computed contrast audit.",
      "evidence": "Lighthouse found repeated red 14px rating text at 3.79:1 and the white Page Keywords label on #36a8da at 2.7:1, below the required 4.5:1.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F012"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Focus walk plus heading/landmark DOM inventory on representative templates.",
      "evidence": "Focus is visible, but only a header landmark exists on home and the detail/updates templates contain no headings; there are no main, nav, or footer landmarks.",
      "pathIds": [
        "home",
        "detail",
        "updates"
      ],
      "artifacts": [
        "evidence/platform-accessibility-probe.json",
        "evidence/detail-probe.json",
        "evidence/updates-probe.json"
      ],
      "findingIds": [
        "F013"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "issues",
      "confidence": "high",
      "method": "Computed CSS, mobile screenshots, and layout height.",
      "evidence": "Body text is fixed at 14px and the updates page renders a 57,034px dense stream with long link labels and little grouping; screenshots show cramped scanability on mobile.",
      "pathIds": [
        "home",
        "updates"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/updates-mobile.png",
        "evidence/updates-layout.json"
      ],
      "findingIds": [
        "F014"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Viewport/reflow layout and element bounding-box probe.",
      "evidence": "Reflow has no horizontal overflow and user scaling is allowed, but many links have only 14px to 17px high hit areas, failing comfortable touch-target sizing.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "findingIds": [
        "F015"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "pass",
      "confidence": "high",
      "method": "Lighthouse Runtime/console audit.",
      "evidence": "Lighthouse reported no browser errors logged to the console.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "DOM document probe and image inventory.",
      "evidence": "Doctype and UTF-8 are valid, but all sampled folder images omit authored width/height attributes; the detail poster also omits dimensions.",
      "pathIds": [
        "home",
        "detail"
      ],
      "artifacts": [
        "evidence/home-images.json",
        "evidence/detail-probe.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "findingIds": [
        "F016"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Lighthouse BFCache and inspector-issues audits.",
      "evidence": "Lighthouse reports three BFCache failure reasons due cache-control:no-store/cookie modification and DevTools Issues entries from the ad-tech request chain.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F017"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "DOM metadata probes and discoverability fetch comparison.",
      "evidence": "Home, listing, detail, and updates templates each expose a descriptive title and meta description; raw no-JS HTML preserves them.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/listing-probe.json",
        "evidence/detail-probe.json",
        "evidence/updates-probe.json",
        "evidence/home-discoverability.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "issues",
      "confidence": "high",
      "method": "Anchor inventory, mobile layout, and robots inspection.",
      "evidence": "Content links use real hrefs and the viewport is mobile-friendly, but footer Contact Us and DMCA links both point to the homepage, and the home page repeats generic “Download Now” link text for many different destinations.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/home-layout-mobile.json"
      ],
      "findingIds": [
        "F018"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "issues",
      "confidence": "high",
      "method": "Head metadata probes, response fetches, robots.txt, and sitemap request.",
      "evidence": "Public pages return 200 and robots allows search indexing, but no canonical or hreflang appears on sampled templates and /sitemap.xml returns an Apache 404 page.",
      "pathIds": [
        "home",
        "listing",
        "detail"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/listing-probe.json",
        "evidence/detail-probe.json",
        "evidence/robots.txt",
        "evidence/sitemap.xml"
      ],
      "findingIds": [
        "F019"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "issues",
      "confidence": "high",
      "method": "DOM query for JSON-LD and social metadata on detail/listing templates.",
      "evidence": "The movie detail is a rich entity but exposes no JSON-LD, Open Graph, or Twitter Card metadata on the visible movie page.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/detail-probe.json",
        "evidence/listing-probe.json"
      ],
      "findingIds": [
        "F020"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Security headers and cookie primitives plus HTTPS response inspection.",
      "evidence": "HTTPS is used, but CSP, HSTS, nosniff, framing protection, Referrer-Policy, and Permissions-Policy are absent; PHPSESSID is neither Secure nor HttpOnly and has SameSite=None.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json"
      ],
      "findingIds": [
        "F021"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Trackers, HAR byte attribution, and cookie audit.",
      "evidence": "The page contacts five third-party origins, including Google Analytics and an ad-tech script; third parties account for 178,172 of 193,873 transferred bytes and analytics cookies live 400 days.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trackers.json",
        "evidence/home-summary.json",
        "evidence/home-cookies.json"
      ],
      "findingIds": [
        "F022"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Representative flow inventory and permission/auth API DOM probe.",
      "evidence": "No sign-in/account flow exists and no geolocation, notification, camera, microphone, or other permission prompt fired on load.",
      "pathIds": [
        "home",
        "detail"
      ],
      "reason": "The public download catalog has no authentication or permission-requesting feature."
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Headers and cookie primitives.",
      "evidence": "No HSTS, clickjacking protection, Referrer-Policy, Permissions-Policy, or CSP frame-ancestors is configured, and cookies use a weak SameSite=None posture.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json"
      ],
      "findingIds": [
        "F023"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Discoverability raw-fetch versus rendered-DOM comparison and crawler screenshot pair.",
      "evidence": "Raw server HTML contains 100% of rendered content words on both home and detail, with title/description intact and no empty JS shell.",
      "pathIds": [
        "home",
        "detail"
      ],
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/home-discoverability-rendered.png",
        "evidence/home-discoverability-crawler.png",
        "evidence/detail-discoverability.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "high",
      "method": "Path walkthrough, DOM inventory, layouts, and Lighthouse console audit.",
      "evidence": "The sampled site is server-rendered with ordinary links, no overlays or fragile async UI, no horizontal overflow, and no console errors during representative navigation.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "download"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Manifest/service-worker capability probe and site-type judgement.",
      "evidence": "This is a public content/download catalog rather than an app-like installed experience; no manifest exists, so offline/installability is not a proportionate requirement for this check.",
      "pathIds": [
        "home"
      ],
      "reason": "The site is a conventional content catalog, not an app-like surface requiring installation."
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "issues",
      "confidence": "high",
      "method": "Intentional missing-route screenshot and DOM probe.",
      "evidence": "The tested 404 is a bare server page with no branded context, home link, search, retry, or useful recovery path.",
      "pathIds": [
        "error"
      ],
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/404-probe.json"
      ],
      "findingIds": [
        "F024"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "issues",
      "confidence": "high",
      "method": "DOM lang attribute plus rendered CSS inspection.",
      "evidence": "html lang=en matches most sampled prose, but CSS uses physical padding-left, margin-right, and border-left in reusable components and has no dir strategy, so the layout is not translation/bidi ready for its Tamil-language audience.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/home-dom.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "findingIds": [
        "F025"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Rendered content and DOM/source-level script inventory.",
      "evidence": "The public catalog renders fixed editorial dates and numeric ratings but has no user locale selector, currency, input, or dynamic locale-sensitive calculation to exercise.",
      "pathIds": [
        "home",
        "detail",
        "updates"
      ],
      "reason": "No dynamic locale-sensitive data feature is present."
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Rendered content and script/API inventory.",
      "evidence": "No event scheduling, user-entered time, recurring interval, or cross-zone time calculation exists on the sampled catalog pages.",
      "pathIds": [
        "home",
        "detail",
        "updates"
      ],
      "reason": "The site has no time-zone-sensitive feature."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "Visual inspection and primary journey walkthrough.",
      "evidence": "First-load and download-journey screenshots show no consent wall, confirmshaming, forced continuity, disguised control, or cancellation flow; links behave predictably.",
      "pathIds": [
        "home",
        "detail",
        "download"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/detail-mobile.png",
        "evidence/download-step-mobile.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "not-applicable",
      "confidence": "high",
      "method": "DOM form/control inventory.",
      "evidence": "No user-submittable form or editable field exists on the representative public templates.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "reason": "There is no form validation flow to evaluate."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "not-applicable",
      "confidence": "high",
      "method": "DOM form and input inventory.",
      "evidence": "No address, payment, sign-in, sign-up, search, or other input field appears on the sampled templates.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "updates"
      ],
      "reason": "There are no user input fields requiring autofill assistance."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Representative route and control inventory.",
      "evidence": "No checkout, subscription, consent, authentication, or account-management surface appears in the representative journey.",
      "pathIds": [
        "home",
        "detail",
        "download"
      ],
      "reason": "No commercial or account flow exists in the sampled scope."
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "pass",
      "confidence": "high",
      "method": "HAR resource-type/weight summary and image-format inventory.",
      "evidence": "The home transfers only 4,336 image bytes; repeated folder art is one cached 713-byte SVG and no legacy raster formats appear there.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-images.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "HAR attribution and Lighthouse unused-JS audit.",
      "evidence": "A simple static catalog transfers 178,172 third-party bytes, mainly analytics/ad scripts, versus 15,701 first-party bytes; Lighthouse estimates 67 KiB of JavaScript is unused.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F026"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "HAR and tracker primitives.",
      "evidence": "Third parties consume about 92% of transferred bytes, with Google Tag Manager at 152,705 bytes and additional analytics/ad origins despite no rich media requirement.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-trackers.json"
      ],
      "findingIds": [
        "F027"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Discoverability and feature inventory.",
      "evidence": "The site is a read-only crawlable content catalog with no transactional or productivity capability that needs WebMCP tool registration; raw content is already fully machine-readable.",
      "pathIds": [
        "home",
        "detail"
      ],
      "reason": "No agent-action surface exists; ordinary crawlable content is the appropriate interface."
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Feature and script/API inventory.",
      "evidence": "No summarisation, generation, translation workflow, or other inference feature is offered where on-device AI would improve the experience.",
      "pathIds": [
        "home",
        "detail"
      ],
      "reason": "No inference-backed user feature exists."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Interaction inventory across representative paths.",
      "evidence": "The server-rendered site has ordinary document navigations and no modal, SPA route, editor, infinite scroll, or other same-document interaction to repeat about ten times without fabricating a test.",
      "pathIds": [
        "home",
        "listing",
        "detail",
        "download"
      ],
      "reason": "No representative repeated same-document interaction exists."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "high",
      "method": "Heap summary plus performance.memory and DOM-node count.",
      "evidence": "A settled home state used about 3.51 MB JS heap with 220 DOM elements; the heap summary reports 3.56 MB total self size, proportionate for the page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-heap.json",
        "evidence/memory-metrics.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "high",
      "method": "Heap constructor summary and interaction/DOM inventory.",
      "evidence": "The single-state heap summary shows no Detached* constructor among the reported populations, and the static page has no repeated same-document lifecycle that accumulates listeners or timers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-heap.json",
        "evidence/platform-accessibility-probe.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F001"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F002"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F003",
        "F004"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F005"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F006",
        "F007"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F008"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F009",
        "F010",
        "F011"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F012",
        "F013",
        "F014",
        "F015"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F016",
        "F017"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F018",
        "F019",
        "F020"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F021",
        "F022",
        "F023"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F024"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F025"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F026",
        "F027"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "All checks were judged not applicable to this site type."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Entry page and category hub; covers first impression, global chrome, metadata, preferences, performance, privacy, and navigation.",
      "url": "https://isaidub.ceo/",
      "conditions": [
        "desktop",
        "viewport: 360x800",
        "prefers-color-scheme: dark",
        "prefers-reduced-motion: reduce",
        "forced-colors: active",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "listing",
      "description": "2026 year listing; representative of year/category archive templates and pagination.",
      "url": "https://isaidub.ceo/tamil-2026-dubbed-movies/",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "detail",
      "description": "Red Eye movie detail; representative rich entity/detail and first step of primary download journey.",
      "url": "https://isaidub.ceo/movie/red-eye-2005-tamil-dubbed-movie/",
      "conditions": [
        "viewport: 360x800",
        "no JavaScript crawler"
      ],
      "result": "issues"
    },
    {
      "id": "download",
      "description": "Red Eye quality-selection step; verifies the primary journey exposes concrete 720p/360p choices.",
      "url": "https://isaidub.ceo/movie/92510/",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "pass"
    },
    {
      "id": "updates",
      "description": "Recent updates archive; highest-risk long-content/listing template.",
      "url": "https://isaidub.ceo/recent-updates/",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "error",
      "description": "Intentional missing route; tests HTTP failure and recovery state.",
      "url": "https://isaidub.ceo/definitely-missing-web-uplift",
      "conditions": [
        "viewport: 360x800"
      ],
      "result": "issues"
    }
  ],
  "findings": [
    {
      "id": "F001",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "modern-web-guidance",
      "severity": "medium",
      "confidence": "high",
      "summary": "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": "Under emulated prefers-color-scheme: dark, the body remained rgb(249,249,249) with black text and computed color-scheme was normal; the dark screenshot matched the light rendering.",
      "artifacts": [
        "evidence/home-dark-reduced.png",
        "evidence/preferences-probe.json"
      ],
      "suggestedFix": "Declare color-scheme: light dark and retint surfaces/text with prefers-color-scheme or light-dark().",
      "effort": "small"
    },
    {
      "id": "F002",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "cross-document-transitions",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "State and route changes use View Transitions (including same-document, cross-document and scroll-driven/staggered) rather than instant, jarring swaps.",
      "evidence": "The MPA has meaningful home, listing, detail, and download-step navigations, but DOM/CSS inspection found no view-transition CSS or opt-in; route changes are abrupt full-document swaps.",
      "artifacts": [
        "evidence/platform-accessibility-probe.json",
        "evidence/download-step-mobile.png"
      ],
      "suggestedFix": "Opt eligible MPA pages into same-origin cross-document View Transitions, with a reduced-motion override.",
      "effort": "small"
    },
    {
      "id": "F003",
      "pathId": "updates",
      "url": "https://isaidub.ceo/recent-updates/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "scroll-progress-indicator",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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 recent-updates template is 57,034 CSS pixels tall, but CSS/DOM inspection found no sticky progress, shrinking header, or scroll-state affordance.",
      "artifacts": [
        "evidence/updates-layout.json",
        "evidence/updates-mobile.png"
      ],
      "suggestedFix": "Add a lightweight sticky section/progress affordance for the very long updates archive.",
      "effort": "small"
    },
    {
      "id": "F004",
      "pathId": "detail",
      "url": "https://isaidub.ceo/movie/red-eye-2005-tamil-dubbed-movie/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "directs-attention",
      "guidanceId": "scrollability-affordance-hints",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "Detail and updates templates have no h1 and no breadcrumb or main/nav landmarks; the 57,034px updates stream offers no location/progress cue beyond date text.",
      "artifacts": [
        "evidence/detail-probe.json",
        "evidence/updates-probe.json",
        "evidence/updates-layout.json"
      ],
      "suggestedFix": "Add semantic main/nav/footer landmarks, page h1 headings, breadcrumbs, and current-location cues.",
      "effort": "small"
    },
    {
      "id": "F005",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "reduced-chrome",
      "guidanceId": "improve-text-layout-and-legibility",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "Minimise non-content chrome and borders so the content is the focus, not the application frame; expressive/decorative visuals serve the content rather than crowd it.",
      "evidence": "The home page repeats keyword-heavy promotional copy and 21 near-identical update rows before its category navigation; the updates page is a 57,034px undifferentiated stream.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/updates-mobile.png",
        "evidence/updates-layout.json"
      ],
      "suggestedFix": "Move keyword copy out of the primary scan path, deduplicate updates, and introduce concise grouping/filtering.",
      "effort": "small"
    },
    {
      "id": "F006",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "CSS inspection found no @container or container-type rules; reusable movie, folder, pagination, and form components adapt only through viewport media queries.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "suggestedFix": "Give reusable cards/lists container contexts and adapt their internal layout with @container where reuse warrants it.",
      "effort": "small"
    },
    {
      "id": "F007",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "severity": "medium",
      "confidence": "high",
      "summary": "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": "Keyboard focus is visible, but many category links measure only 14px high and update links 17px high, well below a comfortable touch target.",
      "artifacts": [
        "evidence/platform-accessibility-probe.json"
      ],
      "suggestedFix": "Increase interactive hit areas to at least roughly 44 CSS pixels without shrinking visible focus styles.",
      "effort": "small"
    },
    {
      "id": "F008",
      "pathId": "error",
      "url": "https://isaidub.ceo/definitely-missing-web-uplift",
      "principleId": "support-core-task-success",
      "principleCheckId": "clear-system-state-and-recovery",
      "guidanceId": "persistent-toast-notifications",
      "guidanceCategory": "modern-web-guidance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Loading, empty, success, error, offline, and partial-completion states are visible and actionable; users can retry, undo, cancel, go back, or continue without losing context.",
      "evidence": "A missing URL returns a bare Apache 404 with no site chrome, home link, search, retry, or recovery action.",
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/404-probe.json"
      ],
      "suggestedFix": "Serve a branded 404 with a concise explanation, home/search links, and recovery actions.",
      "effort": "small"
    },
    {
      "id": "F009",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "modern-web-guidance",
      "severity": "high",
      "confidence": "high",
      "summary": "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": "Mobile Lighthouse measured LCP 4.2s (poor), despite CLS 0 and TBT 0ms; the separate desktop trace measured LCP about 1.0s, so the mobile load remains the failing common condition.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json",
        "evidence/home-layout-mobile.json"
      ],
      "suggestedFix": "Profile mobile LCP, shorten the font/style critical path, and remove nonessential load work.",
      "effort": "medium"
    },
    {
      "id": "F010",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-preload-priority",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "The HAR confirms two parser-inserted high-priority stylesheets (site CSS plus Google Fonts), while the document is cache-control:no-store and mobile LCP is 4.2s; the async scripts are not counted as render-blocking.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-dom.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Cache public HTML appropriately, self-host/subset or system-fallback fonts, and keep only truly critical CSS in the initial chain.",
      "effort": "small"
    },
    {
      "id": "F011",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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 estimates 67 KiB unused JavaScript; HAR shows Google Tag Manager alone transfers 152,705 bytes versus 15,701 first-party bytes.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Remove or delay analytics/ad JavaScript until it provides explicit user value/consent.",
      "effort": "small"
    },
    {
      "id": "F012",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Text and essential UI meet WCAG colour-contrast minimums against their background.",
      "evidence": "Lighthouse found repeated red 14px rating text at 3.79:1 and the white Page Keywords label on #36a8da at 2.7:1, below the required 4.5:1.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Replace the red and cyan combinations with tokens that meet WCAG contrast at 14px.",
      "effort": "small"
    },
    {
      "id": "F013",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "severity": "medium",
      "confidence": "high",
      "summary": "Heading and landmark structure is logical, focus order follows reading order, keyboard focus is always visible, and interactive state survives DOM moves.",
      "evidence": "Focus is visible, but only a header landmark exists on home and the detail/updates templates contain no headings; there are no main, nav, or footer landmarks.",
      "artifacts": [
        "evidence/platform-accessibility-probe.json",
        "evidence/detail-probe.json",
        "evidence/updates-probe.json"
      ],
      "suggestedFix": "Wrap content in main, navigation in nav, footer links in footer, and add one meaningful h1 per template.",
      "effort": "small"
    },
    {
      "id": "F014",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-inclusive",
      "principleCheckId": "legible-text",
      "guidanceId": "improve-text-layout-and-legibility",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "Text is legible and inclusively rendered: comfortable line layout, precise alignment, stable rendering across mixed fonts, no clipping or cramped wrapping that harms comprehension.",
      "evidence": "Body text is fixed at 14px and the updates page renders a 57,034px dense stream with long link labels and little grouping; screenshots show cramped scanability on mobile.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/updates-mobile.png",
        "evidence/updates-layout.json"
      ],
      "suggestedFix": "Increase base size/line spacing and group the updates archive into scannable dated sections or pagination.",
      "effort": "small"
    },
    {
      "id": "F015",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "Reflow has no horizontal overflow and user scaling is allowed, but many links have only 14px to 17px high hit areas, failing comfortable touch-target sizing.",
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "suggestedFix": "Expand link hit areas with block/flex padding while retaining fluid reflow.",
      "effort": "small"
    },
    {
      "id": "F016",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "Doctype and UTF-8 are valid, but all sampled folder images omit authored width/height attributes; the detail poster also omits dimensions.",
      "artifacts": [
        "evidence/home-images.json",
        "evidence/detail-probe.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "suggestedFix": "Author intrinsic width and height on images/posters to reserve aspect-ratio space.",
      "effort": "small"
    },
    {
      "id": "F017",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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 reports three BFCache failure reasons due cache-control:no-store/cookie modification and DevTools Issues entries from the ad-tech request chain.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Stop marking public pages no-store where unnecessary and remove the ad-tech chain causing DevTools issues.",
      "effort": "small"
    },
    {
      "id": "F018",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-discoverable",
      "principleCheckId": "crawlable-and-mobile-friendly",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "Links are crawlable (real href), there is a viewport meta tag, robots does not block indexing, and link text is descriptive.",
      "evidence": "Content links use real hrefs and the viewport is mobile-friendly, but footer Contact Us and DMCA links both point to the homepage, and the home page repeats generic “Download Now” link text for many different destinations.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/home-layout-mobile.json"
      ],
      "suggestedFix": "Give Contact/DMCA their real URLs and make repeated link text identify the destination.",
      "effort": "small"
    },
    {
      "id": "F019",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-discoverable",
      "principleCheckId": "canonical-and-indexing-signals",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "Public pages expose the indexing signals search engines need: successful HTTP status, canonical URL when appropriate, hreflang for localized variants, robots/sitemap consistency, and no accidental noindex/noarchive policy.",
      "evidence": "Public pages return 200 and robots allows search indexing, but no canonical or hreflang appears on sampled templates and /sitemap.xml returns an Apache 404 page.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/listing-probe.json",
        "evidence/detail-probe.json",
        "evidence/robots.txt",
        "evidence/sitemap.xml"
      ],
      "suggestedFix": "Add self-referencing canonicals and publish a valid sitemap referenced by robots.txt.",
      "effort": "small"
    },
    {
      "id": "F020",
      "pathId": "detail",
      "url": "https://isaidub.ceo/movie/red-eye-2005-tamil-dubbed-movie/",
      "principleId": "be-discoverable",
      "principleCheckId": "structured-and-shareable-metadata",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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 movie detail is a rich entity but exposes no JSON-LD, Open Graph, or Twitter Card metadata on the visible movie page.",
      "artifacts": [
        "evidence/detail-probe.json",
        "evidence/listing-probe.json"
      ],
      "suggestedFix": "Add accurate Movie JSON-LD and Open Graph/Twitter metadata matching visible detail content.",
      "effort": "small"
    },
    {
      "id": "F021",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "modern-web-guidance",
      "severity": "high",
      "confidence": "high",
      "summary": "Served over HTTPS with a sensible Content-Security-Policy and secure, SameSite cookies; no mixed content or obvious transport/header smells.",
      "evidence": "HTTPS is used, but CSP, HSTS, nosniff, framing protection, Referrer-Policy, and Permissions-Policy are absent; PHPSESSID is neither Secure nor HttpOnly and has SameSite=None.",
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json"
      ],
      "suggestedFix": "Set CSP, HSTS, nosniff, clickjacking, referrer and permissions policies; set PHPSESSID Secure, HttpOnly and Lax/Strict.",
      "effort": "medium"
    },
    {
      "id": "F022",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "modern-web-guidance",
      "severity": "high",
      "confidence": "high",
      "summary": "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": "The page contacts five third-party origins, including Google Analytics and an ad-tech script; third parties account for 178,172 of 193,873 transferred bytes and analytics cookies live 400 days.",
      "artifacts": [
        "evidence/home-trackers.json",
        "evidence/home-summary.json",
        "evidence/home-cookies.json"
      ],
      "suggestedFix": "Remove the opaque ad origin and minimise or consent-gate analytics with a short retention period.",
      "effort": "medium"
    },
    {
      "id": "F023",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "No HSTS, clickjacking protection, Referrer-Policy, Permissions-Policy, or CSP frame-ancestors is configured, and cookies use a weak SameSite=None posture.",
      "artifacts": [
        "evidence/home-headers.json",
        "evidence/home-cookies.json"
      ],
      "suggestedFix": "Deploy browser-enforced CSP/frame-ancestors, HSTS, Referrer-Policy and Permissions-Policy.",
      "effort": "small"
    },
    {
      "id": "F024",
      "pathId": "error",
      "url": "https://isaidub.ceo/definitely-missing-web-uplift",
      "principleId": "be-resilient",
      "principleCheckId": "network-and-http-failure-states",
      "guidanceId": "detect-initial-visibility-state",
      "guidanceCategory": "modern-web-guidance",
      "severity": "medium",
      "confidence": "high",
      "summary": "HTTP errors, network failures, timeouts and stale data states are handled intentionally: users see useful recovery options rather than blank screens, infinite spinners, broken shells, or misleading success states.",
      "evidence": "The tested 404 is a bare server page with no branded context, home link, search, retry, or useful recovery path.",
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/404-probe.json"
      ],
      "suggestedFix": "Replace the server-default 404 with an intentional, navigable recovery page.",
      "effort": "small"
    },
    {
      "id": "F025",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-internationalised",
      "principleCheckId": "lang-dir-and-logical-properties",
      "guidanceId": "translator",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "html lang=en matches most sampled prose, but CSS uses physical padding-left, margin-right, and border-left in reusable components and has no dir strategy, so the layout is not translation/bidi ready for its Tamil-language audience.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/home-dom.json",
        "evidence/platform-accessibility-probe.json"
      ],
      "suggestedFix": "Replace physical left/right spacing and borders with logical inline/block properties and test dir=rtl.",
      "effort": "small"
    },
    {
      "id": "F026",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-sustainable",
      "principleCheckId": "no-wasteful-work",
      "guidanceId": "efficient-background-processing",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "A simple static catalog transfers 178,172 third-party bytes, mainly analytics/ad scripts, versus 15,701 first-party bytes; Lighthouse estimates 67 KiB of JavaScript is unused.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Eliminate analytics/ad work that outweighs the first-party page and defer any retained telemetry.",
      "effort": "small"
    },
    {
      "id": "F027",
      "pathId": "home",
      "url": "https://isaidub.ceo/",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "deprioritize-background-fetches",
      "guidanceCategory": "modern-web-guidance",
      "severity": "low",
      "confidence": "high",
      "summary": "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": "Third parties consume about 92% of transferred bytes, with Google Tag Manager at 152,705 bytes and additional analytics/ad origins despite no rich media requirement.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-trackers.json"
      ],
      "suggestedFix": "Set a strict third-party byte budget and remove the 153 KB tag manager/ad chain from initial load.",
      "effort": "small"
    }
  ],
  "taskList": [
    {
      "id": "T1",
      "title": "Harden headers, cookies, and third-party privacy",
      "priority": 1,
      "findingIds": [
        "F021",
        "F022",
        "F023"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T2",
      "title": "Remove or defer the analytics/ad payload and improve mobile LCP",
      "priority": 2,
      "findingIds": [
        "F009",
        "F010",
        "F011",
        "F026",
        "F027"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T3",
      "title": "Restore semantic structure, contrast, and touch target sizing",
      "priority": 3,
      "findingIds": [
        "F007",
        "F012",
        "F013",
        "F014",
        "F015"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T4",
      "title": "Add coherent navigation and recoverable error states",
      "priority": 4,
      "findingIds": [
        "F003",
        "F004",
        "F008",
        "F024"
      ],
      "guidanceId": "scroll-progress-indicator",
      "status": "open"
    },
    {
      "id": "T5",
      "title": "Complete canonical, sitemap, and rich share metadata",
      "priority": 5,
      "findingIds": [
        "F018",
        "F019",
        "F020"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T6",
      "title": "Respect dark mode and add proportionate route transitions",
      "priority": 6,
      "findingIds": [
        "F001",
        "F002"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T7",
      "title": "Reduce content noise and modernise responsive assets/styles",
      "priority": 7,
      "findingIds": [
        "F005",
        "F006",
        "F016",
        "F017",
        "F025"
      ],
      "guidanceId": "improve-text-layout-and-legibility",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 6,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-23T16-29-17-461Z"
}
