{
  "url": "https://onlyfans.com",
  "auditedAt": "2026-07-27T12:54:03.234Z",
  "mode": "report",
  "status": "blocked",
  "statusDetail": "Audit blocked before target content loaded. A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
  "page": {
    "appType": "unknown",
    "framework": "unknown",
    "notes": "Only the Cloudflare challenge document was observable; no claim is made about the OnlyFans application."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "layout-metrics",
    "Modern Web Guidance search/retrieve"
  ],
  "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": "Desktop recon showing the Cloudflare human-verification wall instead of OnlyFans.",
      "condition": "desktop viewport after 5-second wait"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "Mobile recon showing the same Cloudflare human-verification wall.",
      "condition": "viewport: 360x800 after 5-second wait"
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "Rendered challenge DOM: title “Just a moment...”, noindex/nofollow, Turnstile input, and Cloudflare challenge scripts.",
      "condition": "desktop viewport after 5-second wait"
    },
    {
      "type": "layout",
      "path": "evidence/home-mobile-layout.json",
      "caption": "Layout metrics for the challenge page only; these do not describe OnlyFans.",
      "condition": "viewport: 360x800 after 5-second wait"
    },
    {
      "type": "other",
      "path": "run/coverage-manifest.json",
      "caption": "Materialised 58-check atomic coverage manifest with catalog version and checksum."
    },
    {
      "type": "other",
      "path": "run/guidance-searches.json",
      "caption": "Pinned-catalog Modern Web Guidance searches for every free-text mapped query."
    },
    {
      "type": "other",
      "path": "run/guidance-retrieved.md",
      "caption": "Retrieved pinned Modern Web Guidance for all mapped catalog IDs."
    }
  ],
  "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 planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a screenshot under emulated prefers-contrast: more / forced-colors, or an axe/contrast probe, can show whether controls and text survive. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a transition video of a route/state change shows whether it animates; the page source / ::view-transition usage corroborates. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned source/CSS inspection for animation-timeline: scroll()/view(); a long-task / scroll-handler probe can flag the main-thread anti-pattern. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned CSS inspection for scroll-snap / overscroll-behavior / physics-based easing vs custom pointermove listeners. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a transition video of scrolling, or CSS inspection for scroll-state container queries. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned CSS inspection for anchor-name / position-anchor / position-try on overlays; a screenshot of an open overlay near a viewport edge can show drift. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned CSS inspection for ::highlight / scroll-marker; a transition video can show whether attention is cued after navigation. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a screenshot on load, or a DOM probe for full-viewport overlays present before interaction. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned DOM/source inspection for popover / <dialog> / <details> vs custom overlay divs with manual dismiss handling. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a screenshot plus layout metrics can show the proportion of the viewport given to chrome vs content. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned layout metrics (scrollWidth vs innerWidth) and a screenshot at an emulated narrow mobile viewport reveal overflow. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned CSS inspection for @container / container-type; a computed-style probe of the same component in a wide vs narrow container shows whether it adapts. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a focus probe (focus an element, read the computed outline) or an axe target-size check; a screenshot of a focused control corroborates. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned run the flow manually with screenshots/DOM snapshots at each step; compare expected vs actual path length; inspect form requirements, navigation continuity, and blockers. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned the layout primitive's CLS observer captures shifts; a transition video of the first seconds shows content jumping. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned the layout primitive records long tasks; a heap summary shows the object population; Lighthouse reports TBT. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned axe contrast rules, a Lighthouse contrast audit, or an in-page probe computing contrast ratios from computed colours. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned axe/Lighthouse structural audits; a focus-walk probe (tab through, read activeElement + computed outline) is a first-party alternative. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a screenshot of body and heading text, plus CSS inspection for text-wrap / text alignment / font fallback handling. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned capture Runtime/Log CDP events, or a probe that reads collected errors; Lighthouse reports this too. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a DOM/source probe for doctype/charset/img dimensions; CSS inspection for repetition; Lighthouse best-practices audits cover the rest. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned Lighthouse best-practices audits and DevTools inspector/deprecation signals can surface these; DOM/source probes can verify paste handlers and prompt timing. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a DOM probe reads <title> and meta[name=description]; Lighthouse SEO audits cover the same ground. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a DOM probe for anchor hrefs, viewport meta, and robots; Lighthouse SEO audits corroborate. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned inspect response status and headers, <link rel=canonical>, hreflang links, robots meta, robots.txt and sitemap.xml; Lighthouse SEO audits cover several of these. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned inspect response headers / page protocol via an evaluate probe or the network layer; Lighthouse best-practices flags HTTPS and CSP issues. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned inspect network requests and third-party origins; a probe of analytics/beacon calls. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a probe for permission requests fired on load; source inspection for passkey / WebAuthn / navigator.credentials usage in auth flows. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned inspect response headers and browser security state; Lighthouse/DevTools security audits can corroborate HSTS, clickjacking, Trusted Types, origin isolation and third-party cookie findings. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned load with scripting disabled or compare a no-JS fetch of the HTML against the rendered page; check for Baseline-aware fallbacks in source. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned exercise menus near viewport edges with a screenshot; a probe of async/visibility behaviour. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a probe for a service worker registration and a web app manifest; test behaviour offline. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a DOM probe for <html lang>/dir and CSS inspection for logical vs physical properties. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned source inspection for Intl.* usage vs hand-rolled formatting; a probe of rendered dates/numbers under a different locale. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned source inspection for time-zone-aware date handling vs naive local Date math. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a screenshot of consent/upsell/cancel flows; source inspection for declarative button actions vs misleading controls. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned exercise a form, submit invalid input, and observe timing and clarity of errors via a screenshot or a :user-invalid / aria-invalid probe. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned source/DOM inspection for autocomplete attributes on form fields; a probe of autofill affordances. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned walkthrough checkout/subscription/auth/account flows when present; screenshot pricing, confirmation, cancellation and reauthentication states; inspect passkey/autocomplete support for sign-in and payment. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned inspect transferred image bytes vs displayed size; source inspection for modern formats and resolution handling. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned a long-task / network probe for background fetches and processing while idle or backgrounded. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned source inspection for WebMCP / agentic-tool registration and agent-readable affordances. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned source inspection for built-in AI (language model / summariser) usage. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "blocked",
      "confidence": "high",
      "method": "Attempted planned 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. after raw-CDP navigation and recon DOM/screenshot capture.",
      "evidence": "The loaded document was Cloudflare's “Just a moment...” challenge rather than OnlyFans; its DOM has title “Just a moment...”, robots “noindex,nofollow”, and a Turnstile response input. No conclusion about the target check can be drawn.",
      "reason": "A Cloudflare managed Turnstile challenge (“Performing security verification” / “Verify you are human”) replaced the OnlyFans application after a 5-second navigation wait, so the intended page, routes, content, controls, and representative journeys were unavailable to the raw-CDP browser.",
      "pathIds": [
        "entry"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dom.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 5 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 5 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 4 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 4 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "All 4 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 4 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "incomplete",
      "reason": "All 2 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "incomplete",
      "reason": "All 3 check(s) were blocked by the Cloudflare human-verification wall before the OnlyFans experience loaded."
    }
  ],
  "paths": [
    {
      "id": "entry",
      "description": "Entry-page recon intended to discover routes and archetypes. The Cloudflare Turnstile challenge prevented access, so no representative OnlyFans paths could be selected. Not covered: all application pages and flows, because they sit behind the same external anti-bot wall.",
      "url": "https://onlyfans.com/",
      "conditions": [
        "desktop after 5-second wait",
        "viewport: 360x800 after 5-second wait"
      ],
      "result": "failed"
    }
  ],
  "findings": [],
  "taskList": [],
  "budget": {
    "pathCount": 1,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-27T12-51-14-986Z"
}
