Manifest position 888 · CrUX rank bucket 1000
https://funpay.com
Coverage complete
Coverage-complete multi-template audit of public, unauthenticated paths. Authenticated purchasing, seller dashboards, chat, payment execution, and post-login account management were not covered because they require an account and real transaction; representative public entry points were covered instead.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | The dark-mode capture is visually identical to the light capture; the computed body remains white and the CSS probe found no color-scheme, prefers-color-scheme, or light-dark() support. F001 medium: The interface ignores the user’s dark-color preference. |
respect-user-preferencesrespects-reduced-motion | issues | high | Under prefers-reduced-motion: reduce, login controls and the cookie modal retain 150–300 ms transitions; the CSS probe found no reduced-motion query. F002 low: Reduced-motion is not explicitly respected. |
respect-user-preferencesrespects-contrast | pass | high | Forced-colors/high-contrast screenshot retained readable text and recognizable controls without clipping. |
implement-natural-interactionsview-transitions | issues | high | The CSS probe across all five templates found no view-transition declarations, while the marketplace uses cross-document navigation between index, listing, and account pages. F003 low: Page and state changes are abrupt rather than continuity-preserving. |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | No scroll-linked animation is present on the representative templates, so implementation technique is not applicable. |
implement-natural-interactionsphysical-gestures | not-applicable | high | No swipe, drag, pull-to-refresh, carousel, or other gesture-driven control is exposed on the representative public paths. |
provide-guided-navigationscroll-state-aware-chrome | issues | high | Mobile layout measured a 47,777 px document; CSS inspection found no scroll-state query, scroll timeline, or progress treatment. F004 low: The 47,777 px catalog provides no scroll-reactive orientation aid. |
provide-guided-navigationanchored-positioning | not-applicable | high | No tooltip or edge-sensitive anchored overlay was present to test on the representative public paths. |
provide-guided-navigationdirects-attention | issues | high | The homepage exposes A–Z hash links, but the probe found no target highlight or transition and screenshots show only a static index. F005 low: Alphabet jumps do not visibly cue the destination. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | Desktop captures show a fixed banner covering listing rows and page footer; on 360 px mobile it occupies roughly the bottom 29% of the viewport and blocks catalog content. F006 high: The cookie banner obscures core content on every first load. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | The DOM reports a DIV with role=dialog, but zero dialog, popover, or details elements across templates. F007 low: Consent preferences use custom dialog semantics instead of the native dialog primitive. |
maximize-content-reduce-noisereduced-chrome | pass | high | Desktop and mobile screenshots show a restrained header and content-dominant listing/rules templates aside from the separately reported consent banner. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | high | Layout probes at 360×800 report 0 px horizontal overflow on homepage and listing. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | The same marketplace controls are reused across index, listing, and forms, but CSS inspection found no @container or container-type declarations. F008 low: Responsive behavior is viewport-only rather than component-aware. |
adapt-to-the-form-factorinput-modality-aware | issues | high | The active focus probe found outline:none on the navigation toggle, search field, and icon-only submit button; Lighthouse also failed target-size, and the toggle measured only 26×34 px. F009 high: Keyboard focus and target sizing are unreliable. |
support-core-task-successclear-purpose-and-primary-action | issues | high | The first template has no H1 or main landmark and contains 4,953 links in a 47,777 px alphabetical catalog; the first viewport competes with a large promotion and consent banner. F010 medium: The homepage lacks a clear page-level purpose and overwhelms discovery. |
support-core-task-successprimary-flow-completion | pass | medium | The public browse journey proceeds from game index to category listing with prices, sellers, filters, and a clear Sell action; authenticated transaction completion was not attempted. |
support-core-task-successclear-system-state-and-recovery | issues | high | An empty registration submit reported form.checkValidity() true, no :invalid controls, and no role=alert/error output; name, email, and password inputs omit required constraints. F011 medium: Registration validation provides no inspectable invalid state before CAPTCHA submission. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse measured LCP 4.9 s, FCP 2.6 s, and Speed Index 4.8 s (performance 0.75), although the desktop trace was faster at LCP 1.02 s. F012 high: Mobile lab LCP is outside the good range. |
be-fast-and-stablevisual-stability | pass | high | Mobile layout observer measured CLS 0 with no recorded shifts on homepage and listing; Lighthouse also reports CLS 0. |
be-fast-and-stableefficient-main-thread | pass | high | Trace recorded one 85.7 ms long task and only 35.7 ms total blocking time; Lighthouse TBT was 100 ms. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR identified main.css and app.bundle.js as render-blocking candidates; DOM confirmation shows app.bundle.js is in <head> with neither async nor defer. Lighthouse estimates 1,450 ms render-blocking savings. F013 high: A synchronous head script and stylesheet delay rendering. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | Lighthouse estimates 49 KiB unused CSS and 44 KiB unused JavaScript on the homepage. F014 medium: The initial payload contains substantial unused CSS and JavaScript. |
be-inclusivenames-roles-labels | issues | high | Lighthouse failed button-name and link-name; probes show zero labels on search, login, email, and password inputs, plus two homepage images without alt text. F015 high: Core controls and fields lack accessible names or persistent labels. |
be-inclusivesufficient-contrast | issues | high | Lighthouse’s color-contrast audit failed on the representative homepage. F016 high: Text and controls fail minimum color contrast. |
be-inclusivestructure-and-focus | issues | high | Lighthouse found no main landmark; the homepage has no H1, and focus probes show outline:none on several primary controls. F017 high: Landmark and focus structure is incomplete. |
be-inclusivelegible-text | pass | high | Rules and listing screenshots show comfortable line lengths, hierarchy, and no visible clipping at audited desktop/mobile sizes. |
be-inclusivezoom-reflow-targets-and-media | issues | high | Lighthouse failed target-size; the focus probe measured the menu toggle at 26×34 px and the search submit at 24×38 px. F018 high: Small interactive targets reduce touch and zoom usability. |
follow-best-practicesno-console-errors | pass | high | Lighthouse best-practices scored 1.0 with no console-error audit failure. |
follow-best-practicessound-document-and-assets | issues | high | The image audit found all three images missing explicit dimensions; the 1600 px JPEG lacks srcset, and Lighthouse failed unsized-images. F019 medium: Images are not dimensioned and one key raster asset is not responsive. |
follow-best-practicesbrowser-platform-hygiene | pass | high | Lighthouse best-practices scored 1.0 and no permission prompt appeared during load; no paste prevention was observed. |
be-discoverabletitle-and-description | pass | high | Homepage and representative listing have descriptive, unique titles and meta descriptions. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | The DOM probe found three javascript: links and Lighthouse failed crawlable-anchors. F020 medium: Some controls masquerade as links and are not crawlable. |
be-discoverablecanonical-and-indexing-signals | issues | high | A direct request to /sitemap.xml returned the site’s “page not found” HTML; canonical and hreflang are otherwise present on core pages. F021 medium: The advertised sitemap endpoint returns an HTML 404. |
be-discoverablestructured-and-shareable-metadata | issues | high | Probes found valid JSON-LD on homepage/listing but no Open Graph metadata on any representative template. F022 medium: Public pages lack social preview metadata. |
be-private-and-securesecure-transport-and-headers | issues | high | The headers primitive found no Content-Security-Policy, X-Content-Type-Options, Referrer-Policy, or Permissions-Policy. HTTPS, HSTS, and X-Frame-Options are present. F023 high: Key browser security headers are missing. |
be-private-and-securedata-minimisation-and-third-parties | pass | high | Tracker probe found zero known trackers and no third-party tracker origins; HAR’s only third-party host served the static hero image. |
be-private-and-securein-context-permissions-and-modern-auth | issues | high | The login UI exposes Google, VK, username/email, password, and CAPTCHA; probes found no WebAuthn/passkey affordance. No permission prompt appeared on load. F024 medium: Authentication offers passwords and federated providers but no phishing-resistant passkey path. |
be-private-and-securedefensive-browser-policies | issues | high | CSP, Referrer-Policy, Permissions-Policy, and nosniff are absent, even though clickjacking protection and HSTS are configured. F025 high: Defense-in-depth policies are incomplete. |
be-resilientprogressive-enhancement | pass | high | Discoverability probes found 100% content visibility without JavaScript on homepage and listing; neither is a JS shell. |
be-resilientresilient-runtime-behaviour | pass | high | Representative menus, forms, listing controls, and long content rendered without clipped overlays or runtime breakage in desktop/mobile captures. |
be-resilientoffline-and-installable | not-applicable | high | The marketplace’s live listings, authentication, payment, and messaging are intrinsically online; a manifest exists but offline transaction behavior is not a meaningful expectation. |
be-resilientnetwork-and-http-failure-states | pass | high | The deliberately invalid route returned a branded page-not-found state rather than a blank shell. |
be-internationalisedlang-dir-and-logical-properties | pass | high | All audited English templates declare lang=en and expose ru/uk/en/x-default hreflang plus visible language selection; responsive captures remained coherent. |
be-internationalisedlocale-aware-data | pass | high | The public UI exposes language and currency selectors and renders localized EUR prices consistently on listing pages. |
be-internationalisedtime-zone-correctness | not-applicable | high | The audited public templates do not display event times, schedules, or recurring time-zone-sensitive data. |
be-trustworthyno-dark-patterns | issues | high | The banner presents a prominent blue “Agree to all” action while the neutral “Options” path is secondary and no equally visible reject action appears; it blocks content on load. F026 high: Consent choices are visually asymmetric. |
be-trustworthyhumane-error-handling | issues | high | The empty registration form is considered valid by the browser, exposes no required constraints, aria-invalid state, or live error summary, and is gated by CAPTCHA. F027 medium: Registration lacks semantic, accessible pre-submit validation. |
be-trustworthytrustworthy-input-assistance | issues | high | Login username/password autocomplete values are empty; signup email is empty and signup password explicitly uses autocomplete=off. F028 medium: Authentication and signup fields omit standard autocomplete tokens. |
be-trustworthysafe-commercial-and-account-flows | pass | high | Listing prices, seller identity, and the secure-payment explanation are visible before account entry; login, signup, recovery, rules, and agreement links are findable. |
be-sustainableoptimised-assets | issues | high | The image audit found a 1600 px, 247.8 KiB JPEG without srcset or dimensions; Lighthouse estimates 227 KiB image-delivery savings. F029 medium: The hero artwork is not responsively or format optimized. |
be-sustainableno-wasteful-work | pass | high | Trace and HAR show a small 13-request load, low blocking time, no active trackers, and no media/background processing. |
be-sustainablethird-party-and-media-budget | pass | high | The 682.6 KiB homepage uses 13 requests, no autoplay media, and only one static third-party image; this is proportionate despite the separately reported image optimization gap. |
be-agent-readystructured-agent-capabilities | not-applicable | high | This public marketplace does not declare an agent-facing product intent; emerging WebMCP capability is treated as an opportunity, not a requirement. |
be-agent-readyon-device-inference | not-applicable | high | No summarization or language-model task is part of the audited public journeys, so on-device inference is not applicable. |
be-memory-efficientno-leak-under-repeated-interaction | pass | high | After ten scroll/consent interaction cycles, heap node count changed only +40 and retained self size decreased by 780 bytes versus baseline. |
be-memory-efficientbounded-footprint | pass | high | Runtime metrics report ~2.29 MB used JS heap and 12,588 DOM elements; heap snapshot retained self size was ~23.95 MB, proportionate to the very large server-rendered catalog. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | high | Before/after heap totals remained essentially flat after repeated interaction, providing no signal of detached-node or listener/timer accumulation. |
Provenance
Canonical report: results/atomic/reports/0888-funpay_com.json
Report SHA-256: 2f913205dbb1f0d68b774ed19e3e21e0f68cf551fca31a0d8ed61810036e83ce
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/funpay_com/2026-07-27T04-20-55-394Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/funpay_com/2026-07-27T04-20-55-394Z
Catalog SHA-256: sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7
Raw screenshots, HARs, traces, heaps, and other browser artifacts are retained at the local evidence root and intentionally are not committed. Artifact paths in the canonical report are relative to that root.