{
  "url": "https://chaturbate.com",
  "auditedAt": "2026-07-28T03:13:15.437Z",
  "mode": "report",
  "status": "blocked",
  "statusDetail": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. The entry age gate and raw public response were observed, but they are not a representative substitute for the site's listing, room, authentication, and commercial surfaces.",
  "page": {
    "appType": "unknown",
    "framework": "unknown",
    "notes": "Public response contains a rendered age/terms gate. Post-consent navigation is protected by a persistent Cloudflare challenge in the audit browser."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "layout-metrics",
    "evaluate-probe",
    "discoverability",
    "Modern Web Guidance 0.0.172"
  ],
  "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-desktop.png",
      "caption": "Initial desktop viewport showing the over-18 terms gate.",
      "condition": "default desktop viewport"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-after-agree.png",
      "caption": "Cloudflare security-verification screen immediately after accepting the age gate.",
      "condition": "post-consent, 5-second wait"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-after-challenge-wait.png",
      "caption": "Cloudflare verification still blocking access after an 18-second wait.",
      "condition": "post-consent, 18-second wait"
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "Rendered DOM and selected computed styles for the gated homepage."
    },
    {
      "type": "layout",
      "path": "evidence/home-layout.json",
      "caption": "Layout/CLS/long-task observation for the gated homepage."
    },
    {
      "type": "discoverability",
      "path": "evidence/home-discoverability.json",
      "caption": "Raw-HTML versus rendered-content discoverability result for the public response."
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-rendered.png",
      "caption": "Browser-rendered discoverability comparison view."
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-crawler.png",
      "caption": "No-JavaScript crawler discoverability comparison view."
    },
    {
      "type": "other",
      "path": "evidence/home-controls.json",
      "caption": "Evaluate probe listing controls and links visible in the gated DOM."
    },
    {
      "type": "other",
      "path": "evidence/guidance-list.json",
      "caption": "Pinned Modern Web Guidance 0.0.172 catalog consulted for the run."
    },
    {
      "type": "other",
      "path": "evidence/guidance-consultation.json",
      "caption": "Exact guide IDs retrieved and mapped search queries executed before judgement."
    }
  ],
  "config": {
    "loaded": false
  },
  "coverage": {
    "catalogVersion": "modern-web-guidance@0.0.172",
    "catalogChecksum": "sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7",
    "expected": 58,
    "recorded": 58,
    "judged": 0,
    "blocked": 58,
    "notRun": 0,
    "missing": 0,
    "unknown": 0,
    "duplicates": 0,
    "complete": false
  },
  "checkOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-color-scheme",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a screenshot or computed background under an emulated prefers-color-scheme: dark condition will reveal whether surfaces re-tint; the page CSS / a color-scheme declaration is corroborating evidence. The model chooses the method.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a transition video, or an in-page probe of getAnimations()/computed animation under an emulated prefers-reduced-motion: reduce condition, can show whether motion stops. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Honours prefers-reduced-motion: non-essential animations and auto-advance are reduced or removed when the user asks for less motion.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a screenshot under emulated prefers-contrast: more / forced-colors, or an axe/contrast probe, can show whether controls and text survive. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Honours prefers-contrast / forced-colors: controls, text and scrollbars remain visible under high-contrast preferences.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a transition video of a route/state change shows whether it animates; the page source / ::view-transition usage corroborates. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “State and route changes use View Transitions (including same-document, cross-document and scroll-driven/staggered) rather than instant, jarring swaps.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (source/CSS inspection for animation-timeline: scroll()/view(); a long-task / scroll-handler probe can flag the main-thread anti-pattern. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Scroll-linked motion (parallax, scrollytelling, entry/exit reveals) uses declarative CSS scroll-driven animations (off main thread) instead of scroll event listeners.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (CSS inspection for scroll-snap / overscroll-behavior / physics-based easing vs custom pointermove listeners. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Gesture-driven interactions and entry/exit motion feel native (declarative overscroll/scroll-snap, physics-based easing, animating to intrinsic sizes, pull/swipe gestures) rather than fighting the platform with custom pointer handlers.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a transition video of scrolling, or CSS inspection for scroll-state container queries. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (CSS inspection for anchor-name / position-anchor / position-try on overlays; a screenshot of an open overlay near a viewport edge can show drift. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Tooltips, popovers and menus use CSS anchor positioning (with fallback positions) so they stay attached and reposition correctly rather than being manually positioned.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (CSS inspection for ::highlight / scroll-marker; a transition video can show whether attention is cued after navigation. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a screenshot on load, or a DOM probe for full-viewport overlays present before interaction. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “No intrusive pop-ups, interstitials or banners that obscure content on load; overlays are dismissible and content-first.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (DOM/source inspection for popover / <dialog> / <details> vs custom overlay divs with manual dismiss handling. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Overlays and rich controls use the right primitive: popover (with declarative light-dismiss) for transient UI, dialog for modal flows, details for disclosure, native-but-branded selects and pickers, rather than ad-hoc divs.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a screenshot plus layout metrics can show the proportion of the viewport given to chrome vs content. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (layout metrics (scrollWidth vs innerWidth) and a screenshot at an emulated narrow mobile viewport reveal overflow. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Layout adapts to narrow viewports with no horizontal overflow and no fixed pixel widths forcing a desktop layout on mobile; viewport meta present; fluid scaling and intrinsic sizing rather than brittle breakpoints.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (CSS inspection for @container / container-type; a computed-style probe of the same component in a wide vs narrow container shows whether it adapts. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a focus probe (focus an element, read the computed outline) or an axe target-size check; a screenshot of a focused control corroborates. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (screenshot the first viewport and key scrolled states; inspect heading structure, nav labels, button text, and visual hierarchy; a task walkthrough can show whether the next action is obvious. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “The page communicates what it is for and exposes the primary next action without requiring users to hunt through decorative content, generic copy, or competing calls to action.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (run the flow manually with screenshots/DOM snapshots at each step; compare expected vs actual path length; inspect form requirements, navigation continuity, and blockers. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “The representative primary flow can be completed end-to-end with predictable steps, no avoidable dead ends, no hidden required information, and no needless detours through modals, account walls, or upsells.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (exercise network delay/failure, invalid input, empty data and success states; screenshot the state messaging and recovery controls; inspect whether browser history and focus remain sensible. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (Lighthouse reports LCP/CLS/TBT directly and the model may run it; layout metrics + a layout-shift observer + a long-task observer (the evidence primitives) give the same signal first-party. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (the layout primitive's CLS observer captures shifts; a transition video of the first seconds shows content jumping. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “No cumulative layout shift from late content (images, banners, fonts) that arrives without reserved space.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (the layout primitive records long tasks; a heap summary shows the object population; Lighthouse reports TBT. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “The main thread is not blocked by long tasks or heavy scripting; work is deferred, chunked, prioritised, or moved off-thread.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a HAR summary can reveal cache headers, redirects, render-blocking candidates, weight offenders and dependency shape; a trace/Lighthouse insight report can corroborate LCP discovery, render-blocking, font-display and document latency. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (Lighthouse/trace/code-coverage style evidence can flag unused JS/CSS, duplicated JavaScript and legacy code; a HAR summary shows third-party byte cost and request count. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (axe-core (injectable via the evaluate primitive) or Lighthouse's a11y audits enumerate these; a DOM probe of the accessibility-relevant attributes is a first-party alternative. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Interactive elements have accessible names, correct roles, and form fields have labels; images have alt text where meaningful; canvas/expressive content is exposed to assistive technology.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (axe contrast rules, a Lighthouse contrast audit, or an in-page probe computing contrast ratios from computed colours. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Text and essential UI meet WCAG colour-contrast minimums against their background.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (axe/Lighthouse structural audits; a focus-walk probe (tab through, read activeElement + computed outline) is a first-party alternative. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Heading and landmark structure is logical, focus order follows reading order, keyboard focus is always visible, and interactive state survives DOM moves.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a screenshot of body and heading text, plus CSS inspection for text-wrap / text alignment / font fallback handling. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Text is legible and inclusively rendered: comfortable line layout, precise alignment, stable rendering across mixed fonts, no clipping or cramped wrapping that harms comprehension.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (Lighthouse/axe target-size, meta-viewport and media-caption audits are useful signals; screenshots at narrow and zoomed conditions plus DOM/media inspection can corroborate. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (capture Runtime/Log CDP events, or a probe that reads collected errors; Lighthouse reports this too. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “The page loads without console errors or uncaught exceptions.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a DOM/source probe for doctype/charset/img dimensions; CSS inspection for repetition; Lighthouse best-practices audits cover the rest. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.)” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (Lighthouse best-practices audits and DevTools inspector/deprecation signals can surface these; DOM/source probes can verify paste handlers and prompt timing. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a DOM probe reads <title> and meta[name=description]; Lighthouse SEO audits cover the same ground. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “The page has a unique, descriptive <title> and a meta description.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a DOM probe for anchor hrefs, viewport meta, and robots; Lighthouse SEO audits corroborate. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Links are crawlable (real href), there is a viewport meta tag, robots does not block indexing, and link text is descriptive.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (inspect response status and headers, <link rel=canonical>, hreflang links, robots meta, robots.txt and sitemap.xml; Lighthouse SEO audits cover several of these. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (inspect JSON-LD/microdata and social preview tags against visible content; Lighthouse has a manual structured-data audit, and ad-hoc probes can parse schema.org blocks. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (inspect response headers / page protocol via an evaluate probe or the network layer; Lighthouse best-practices flags HTTPS and CSP issues. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Served over HTTPS with a sensible Content-Security-Policy and secure, SameSite cookies; no mixed content or obvious transport/header smells.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (inspect network requests and third-party origins; a probe of analytics/beacon calls. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a probe for permission requests fired on load; source inspection for passkey / WebAuthn / navigator.credentials usage in auth flows. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Permission prompts are requested in context (not on load), and authentication uses modern, phishing-resistant methods (passkeys / WebAuthn) where relevant rather than passwords alone.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (inspect response headers and browser security state; Lighthouse/DevTools security audits can corroborate HSTS, clickjacking, Trusted Types, origin isolation and third-party cookie findings. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (load with scripting disabled or compare a no-JS fetch of the HTML against the rendered page; check for Baseline-aware fallbacks in source. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Core content and primary flows are reachable and usable without JavaScript and on older or non-Baseline browsers; modern features layer on as enhancements with fallbacks, and reactive/transition state stabilises rather than flickering before it settles.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (exercise menus near viewport edges with a screenshot; a probe of async/visibility behaviour. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “The page behaves robustly at runtime: overlays and menus never get cut off, DOM state survives moves, background work and async dependencies are sequenced and conditional rather than fragile, and initial visibility state is detected correctly.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a probe for a service worker registration and a web app manifest; test behaviour offline. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Where the site is an app, it is installable (web app manifest) and offers an offline fallback and works on flaky networks. (Contextual: a brochure or intrinsically-online site may reasonably not need this.)” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (simulate failed fetches/offline mode or inspect representative 404/500 routes; screenshots and DOM snapshots of error/loading/empty states show whether recovery is possible. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a DOM probe for <html lang>/dir and CSS inspection for logical vs physical properties. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (source inspection for Intl.* usage vs hand-rolled formatting; a probe of rendered dates/numbers under a different locale. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Dates, numbers, currencies, durations and calendar systems are formatted locale-aware (Intl), location-agnostic where stored, and recurring intervals and event differentials are modelled correctly.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (source inspection for time-zone-aware date handling vs naive local Date math. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Time handling survives time zones and DST: events coordinate across zones, partial time concepts are modelled, and stored times are unambiguous.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a screenshot of consent/upsell/cancel flows; source inspection for declarative button actions vs misleading controls. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “No deceptive design: no confirmshaming, forced continuity, disguised ads, or nagging consent walls; honest defaults; clear pricing and consent; easy reversal/cancel; predictable, declaratively-wired actions; and no hidden-text tricks (hidden content stays deep-linkable and indexable rather than used to deceive).” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (exercise a form, submit invalid input, and observe timing and clarity of errors via a screenshot or a :user-invalid / aria-invalid probe. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Forms prevent and recover from mistakes humanely: validate after interaction (not prematurely), give clear required-field feedback, announce errors accessibly, and signal invalid fields visibly rather than blaming the user.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (source/DOM inspection for autocomplete attributes on form fields; a probe of autofill affordances. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Input is assisted, not obstructed: correct autocomplete tokens so address, payment, sign-in and sign-up fields autofill, and inputs are highlighted/sized to help the user rather than trip them up.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (walkthrough checkout/subscription/auth/account flows when present; screenshot pricing, confirmation, cancellation and reauthentication states; inspect passkey/autocomplete support for sign-in and payment. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Checkout, subscription, consent, authentication and account-management flows are clear, reversible, and proportionate: pricing and commitments are visible, cancellation is findable, sensitive actions re-authenticate when appropriate, and users are not tricked into continuity.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (inspect transferred image bytes vs displayed size; source inspection for modern formats and resolution handling. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Images and decorative assets are optimised and served at appropriate resolutions; decorative pseudo-element imagery and heavy decorative images are resolution-optimised rather than oversized.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a long-task / network probe for background fetches and processing while idle or backgrounded. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a HAR summary shows third-party bytes, font/media weight and caching; screenshots/video reveal autoplay and decorative media; trace/layout evidence shows whether media/animation keeps work running. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “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.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (source inspection for WebMCP / agentic-tool registration and agent-readable affordances. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Where it makes sense, the site exposes structured, safe capabilities to agents via WebMCP tools, agentic forms, and agentic JavaScript tools rather than leaving agents to scrape and guess.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (source inspection for built-in AI (language model / summariser) usage. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “On-device inference (built-in language model, summariser) is used appropriately where it improves the experience, rather than shipping every task to a server.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (compare heap snapshots for retained growth - a baseline, then one taken after repeating the interaction with `--interact` about 10x (the memory-tracer methodology: baseline -> repeat -> post -> compare). Performance.getMetrics (JSHeapUsedSize, Nodes) across the same before/after window is corroboration. If Chrome DevTools MCP is available, follow its memory-leak-debugging skill: capture baseline, target, and final snapshots, then use memlab or the provided comparison workflow rather than reading raw .heapsnapshot files directly. The package-native `heap` primitive remains the default path. This check is only meaningful where the page has a real interaction to repeat; for a static page with none, mark it not-applicable with a rationale rather than fabricating one. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Repeating a representative interaction (open/close a modal, navigate a route and back, infinite-scroll a list) about 10 times does not grow retained heap without bound; what is allocated during the interaction is released when it ends.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (a single `heap` summary's totals (nodeCount, totalSelfSizeBytes, constructor population) plus Performance.getMetrics (Nodes, JSHeapUsedSize) give the current footprint to judge against the page's purpose. Chrome DevTools MCP heap snapshots and memlab snapshot analysis can provide the same memory distribution when available. Read summaries or derived analysis, never raw snapshots unless a dedicated heap-analysis tool is doing the analysis. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “Heap size and DOM node count are reasonable for what the page is; the footprint is proportionate rather than bloated.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted to navigate beyond the homepage age gate before executing the planned check-specific method (the `heap` summary by constructor (Detached* nodes) compared across a before/after pair shows a growing detached-DOM population; an `evaluate` probe can sample listener/timer counts (e.g. getEventListeners-style counting, or instrumenting addEventListener/setInterval) before and after the repeated interaction to spot growth. Chrome DevTools MCP heap snapshots plus the memory-leak-debugging skill's common-leak guidance can corroborate detached DOM, listeners, closures, globals, and unbounded caches. Caveat from the memory-tracer and Chrome DevTools MCP guidance: detached nodes can be intentional caches, so judge confidence rather than asserting a bug. The model chooses.).",
      "evidence": "After the age-confirmation control (#close_entrance_terms) was activated, Cloudflare displayed “Performing security verification”. The challenge remained after an 18-second wait in a fresh Chrome/CDP session, so representative content and journeys could not be reached. This prevented direct evidence for “No growing population of detached DOM nodes, and no ever-accumulating event listeners or timers that are added but never removed across a session.” across representative site surfaces.",
      "reason": "External Cloudflare bot verification prevented access to the content or interaction state required for this check; untested work is recorded as blocked, not pass or not-applicable.",
      "pathIds": [
        "home-post-consent"
      ],
      "artifacts": [
        "evidence/home-after-challenge-wait.png"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "incomplete",
      "reason": "Every atomic check under this principle was blocked by the persistent Cloudflare security-verification screen after age-gate consent."
    }
  ],
  "paths": [
    {
      "id": "home-age-gate",
      "description": "Homepage entry and legally required over-18 terms gate; used only for initial recon, not as a substitute for the service.",
      "url": "https://chaturbate.com/",
      "conditions": [
        "default desktop viewport"
      ],
      "result": "pass"
    },
    {
      "id": "home-post-consent",
      "description": "Attempt to accept the age gate and reach the homepage/listing experience; blocked by persistent Cloudflare security verification.",
      "url": "https://chaturbate.com/",
      "conditions": [
        "click #close_entrance_terms",
        "wait 18 seconds"
      ],
      "result": "failed"
    },
    {
      "id": "representative-surfaces",
      "description": "Planned representative coverage: homepage listing, Discover listing, Tags index, one room-detail/live interaction, sign-in/sign-up, and a commercial/account flow. Not exercised because all require passing the post-consent security challenge.",
      "url": "https://chaturbate.com/",
      "conditions": [
        "post-consent"
      ],
      "result": "skipped"
    }
  ],
  "findings": [],
  "taskList": [],
  "budget": {
    "wallClockSeconds": 240,
    "pathCount": 3,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-28T03-09-10-870Z"
}
