Manifest position 658 · CrUX rank bucket 1000

https://www.betpawa.ug

Coverage complete

Atomic coverage complete across 58 checks and seven representative paths.

Attempts
1 / 3
Judged checks
58 / 58
Blocked
0
Not run
0
This report has no published overall score. Blocked and not-run checks are not passes. A coverage-complete report means every check has a judged outcome; it does not mean every check passed.

All 58 atomic check outcomes

Principle / checkStatusConfidenceEvidence or reason
respect-user-preferences
respects-color-scheme
passhighLight and dark screenshots visibly retint surfaces, cards and text; page startup reads prefers-color-scheme and applies data-theme.
respect-user-preferences
respects-reduced-motion
passhighReduced-motion probe matched the preference, found no running animations and found a dedicated media rule disabling pulse/shimmer.
respect-user-preferences
respects-contrast
passhighThe prefers-contrast: more screenshot retained visible text, controls, selected states and separators; Lighthouse normal-mode contrast passed on home.
implement-natural-interactions
view-transitions
passhighRendered CSS inspection found view-transition rules and the platform probe confirmed View Transition support is used by the stylesheet surface.
implement-natural-interactions
scroll-driven-animations
passhighDOM/CSS inspection found no scroll-linked animation effect and no scroll event-driven animation anti-pattern on the representative views.
implement-natural-interactions
physical-gestures
passhighMobile captures show native scrolling and horizontal content rails; CSS uses overscroll behavior rather than a custom pointermove-driven page gesture.
provide-guided-navigation
scroll-state-aware-chrome
issueshighThe platform probe found no scroll timeline and the mobile captures show full top and bottom chrome remaining fixed while content space is constrained.
F01 low: Persistent chrome does not react to scroll state.
provide-guided-navigation
anchored-positioning
passhighCSS inspection found anchor positioning declarations; representative menus and account/navigation chrome remained attached within viewport edges.
provide-guided-navigation
directs-attention
passhighMobile screenshots show active destinations in green, a clear Back action on event detail, selected market tabs and strong state highlighting.
maximize-content-reduce-noise
no-intrusive-interruptions
passhighFresh-load screenshots across home, event, casino, join and help show no modal, consent wall or viewport-blocking interruption.
maximize-content-reduce-noise
semantic-dismissible-primitives
passhighDOM inspection found no active modal overlay requiring a custom dismiss mechanism in the audited unauthenticated flows; native select controls are used on registration.
maximize-content-reduce-noise
reduced-chrome
passhighRepresentative mobile views devote the central viewport to event odds, casino games, registration or help; persistent chrome is compact and consistent.
adapt-to-the-form-factor
responsive-no-horizontal-scroll
passhigh360x800 layout metrics reported scrollWidth=clientWidth=360 and horizontalOverflowPx=0; all representative mobile screenshots fit the viewport.
adapt-to-the-form-factor
component-level-responsiveness
issueshighRendered CSS inspection found no @container rule or non-normal container type across the representative templates.
F02 low: Components rely on viewport breakpoints rather than container-level adaptation.
adapt-to-the-form-factor
input-modality-aware
issueshighLighthouse found 24 target-size failures on home; mobile screenshot shows dense horizontally clipped card carousels and compact icon/navigation targets.
F03 high: Many mobile targets are too small or crowded.
support-core-task-success
clear-purpose-and-primary-action
passhighHome, event, casino, registration and help screenshots each expose clear headings/content and prominent next actions such as JOIN NOW, odds, games or request support.
support-core-task-success
primary-flow-completion
passlowUnauthenticated navigation reached event detail and registration without dead ends; event markets and the complete labelled account form are present. No real wager/account was submitted.
support-core-task-success
clear-system-state-and-recovery
issueshighAfter an empty JOIN NOW submission, the page showed no visible field errors; the probe found only an empty aria-live=assertive paragraph.
F04 medium: Registration errors are not visibly actionable after an empty submission.
be-fast-and-stable
good-core-web-vitals
issueshighLighthouse measured LCP 7.9s, TBT 1,680ms and performance 47. A separate trace was faster but still recorded 241ms TBT, so throttled-device risk is clear.
F05 high: Simulated mobile loading misses the Core Web Vitals performance bar.
be-fast-and-stable
visual-stability
passhighMobile layout observer measured CLS 0.0006375 and Lighthouse measured 0.003, both in the good range.
be-fast-and-stable
efficient-main-thread
issueshighLighthouse measured 3.8s main-thread work and 2.7s JS execution; the trace recorded four long tasks, longest 233ms.
F06 high: JavaScript blocks the main thread during startup.
be-fast-and-stable
efficient-resource-delivery
issueshighHAR recorded 160 requests and 13 stylesheets; Lighthouse estimated 340ms render-blocking savings and flagged the network dependency tree.
F07 medium: The initial dependency chain is broad and includes avoidable blocking work.
be-fast-and-stable
trim-unused-and-duplicate-code
issueshighHAR transferred 1.05MB across 87 script requests. Lighthouse estimated 409KiB unused JavaScript and flagged 32KiB legacy code.
F08 high: The page ships a large amount of unused and legacy JavaScript.
be-inclusive
names-roles-labels
issueshighLighthouse failed button-name, image-alt, link-name and visible-label/accessibility-name matching checks; image inspection found two images without alt.
F09 high: Accessible names are missing on multiple controls and images.
be-inclusive
sufficient-contrast
passhighLighthouse home color-contrast audit passed and dark/light/contrast screenshots retain legible text and controls; join has one isolated contrast failure covered through the broader inclusive findings.
be-inclusive
structure-and-focus
issueshighLighthouse found no main landmark; home has no h1 and the rendered html element has no lang. Help has an h1 but skips through mixed h2/h3 structures.
F10 high: Landmark and heading structure is incomplete.
be-inclusive
legible-text
passhighHome, event, casino, join and help screenshots use readable type sizes, clear grouping and no clipped body text at 360px.
be-inclusive
zoom-reflow-targets-and-media
issueshighLighthouse reported 24 target-size failures on home and 13 on registration, despite correct viewport scaling.
F11 medium: Touch target sizing prevents an inclusive mobile experience.
follow-best-practices
no-console-errors
passhighLighthouse errors-in-console audit passed on both home and registration with no logged runtime exception.
follow-best-practices
sound-document-and-assets
issueshighImage inspection found 8 of 15 images without width/height, 8 oversized, and 9 in legacy formats.
F12 medium: Many images lack intrinsic dimensions and use inefficient sizing.
follow-best-practices
browser-platform-hygiene
issueshighLighthouse join best-practices scored 77 and reported missing source maps for large first-party JavaScript; home also ships legacy JS.
F13 medium: Production diagnostics and browser delivery hygiene are incomplete.
be-discoverable
title-and-description
passhighHome and registration expose unique descriptive titles and meta descriptions; route DOM inspections show route-specific titles.
be-discoverable
crawlable-and-mobile-friendly
issueshighDiscoverability capture returned 0% rendered-word coverage, isJsShell=true, and crawler view only says to enable JavaScript, despite robots explicitly permitting crawlers.
F14 high: Public content is invisible to crawlers that do not execute JavaScript.
be-discoverable
canonical-and-indexing-signals
issueshighA deliberately nonexistent route returned HTTP 200, generated a canonical URL and had no noindex directive, although the visual page says it does not exist.
F15 medium: Unknown routes return HTTP 200 with self-canonical URLs.
be-discoverable
structured-and-shareable-metadata
issueshighHome provides Open Graph metadata but the recon found no JSON-LD for the organization, sporting events, games or articles.
F16 low: Rich public entities lack structured data.
be-private-and-secure
secure-transport-and-headers
issueshighHeaders inspection found no HSTS or nosniff and CSP only defines frame-ancestors; bp_country is not Secure. Referrer-Policy and Permissions-Policy are absent.
F17 high: Transport protections and cookie policy are incomplete.
be-private-and-secure
data-minimisation-and-third-parties
issueshighHAR transferred 382,504 third-party bytes; trackers found GTM, Sentry and Maze across six third-party origins, with GTM accounting for about 355KB.
F18 medium: Analytics and research integrations create a sizeable third-party footprint.
be-private-and-secure
in-context-permissions-and-modern-auth
issueshighLogin probe found current-password but no WebAuthn/PublicKeyCredential/passkey surface; username/mobile field also lacks a username autocomplete token. No permission prompt fired on load.
F19 medium: A sensitive account flow relies on passwords without passkey support.
be-private-and-secure
defensive-browser-policies
passhighClickjacking protection is present through CSP frame-ancestors and X-Frame-Options, but missing HSTS/referrer/permissions policy is already recorded under secure transport and headers.
be-resilient
progressive-enhancement
issueshighThe raw/crawler view contains only an enable-JavaScript notice while the rendered page has 5,006 characters; content coverage is 0%.
F20 high: Core public content does not survive without JavaScript.
be-resilient
resilient-runtime-behaviour
passhighEvent, casino, registration and help loaded without cut-off overlays or broken async states; native selects and fixed navigation remained usable at viewport edges.
be-resilient
offline-and-installable
issueshighA manifest and active service worker exist, but service-worker source deletes caches on activation and falls through to a plain fetch when offline, with no offline document.
F23 medium: The installable app has no offline fallback.
be-resilient
network-and-http-failure-states
issueshighThe unknown route offers Browse Events, Home and Help, but the server responds 200 and canonicals the nonexistent URL, so clients and caches cannot distinguish failure.
F21 medium: The visual 404 recovery is helpful but the HTTP state is misleading.
be-internationalised
lang-dir-and-logical-properties
issueshighDOM and Lighthouse both found html lang empty, even though the page declares en-UG hreflang and many country/language variants.
F22 high: The document language is missing across localized pages.
be-internationalised
locale-aware-data
passhighThe Uganda variant renders UGX/phone country context and localized English date/time labels consistently across home, event and registration.
be-internationalised
time-zone-correctness
passlowDisplayed event times consistently include day/date context across listing and detail views; no contradictory or ambiguous timezone transition was observed in the representative routes.
be-trustworthy
no-dark-patterns
passhighAudited pages expose login/join choices, responsible-gambling and age/licence information, help, terms and privacy links; no forced continuity or disguised control appeared.
be-trustworthy
humane-error-handling
issueshighThe empty-submit test produced no visible messages and only an empty assertive live region, leaving the user without a clear correction path.
F24 medium: Registration validation does not provide clear feedback after submission.
be-trustworthy
trustworthy-input-assistance
issueshighJoin fields for phone, first name, last name and identification number have empty autocomplete; login username is also empty, while only password tokens are set.
F25 medium: Account and support forms omit important autocomplete tokens.
be-trustworthy
safe-commercial-and-account-flows
passhighLogin offers recovery and remember-device choice; footer states licence, minimum age and gambling harm, and account creation does not preselect payment or subscription continuity.
be-sustainable
optimised-assets
issueshighImage audit found 8 oversized, 8 below-fold eager, 9 legacy-format and 8 dimensionless images; several 300-400px assets display at 99px.
F26 medium: Casino imagery is oversized, eager and often legacy-formatted.
be-sustainable
no-wasteful-work
passhighNetwork/trace evidence shows the page settles after initial data loading with no autoplay media or persistent background animation; the principal waste is already isolated to bundle/third-party budgets.
be-sustainable
third-party-and-media-budget
issueshighThird parties transferred 382KB of a 1.36MB load; GTM alone transferred about 355KB across two script endpoints.
F27 medium: Third-party scripts consume a disproportionate part of the page budget.
be-agent-ready
structured-agent-capabilities
not-applicablehighWebMCP exposure is emerging and was not declared as a product goal; this audit treats it as an opportunity, not a failure.
be-agent-ready
on-device-inference
not-applicablehighNo summarisation or generative task was identified where on-device inference is necessary for the core betting experience.
be-memory-efficient
no-leak-under-repeated-interaction
passhighAfter 10 representative menu toggles, heap changed only +2,109 nodes (+0.20%) and +528,802 bytes (+0.98%); constructor populations were broadly stable, so no unbounded growth was evidenced.
be-memory-efficient
bounded-footprint
issueshighHeap summary recorded 1,075,130 nodes and 53.85MB self size. After 10 menu toggles growth was modest (+2,109 nodes, +0.53MB), which does not indicate an obvious repeated-interaction leak but confirms a high baseline.
F28 medium: The initial JavaScript heap is heavy for a listing page.
be-memory-efficient
no-detached-dom-or-unbounded-listeners
passlowNeither heap summary surfaced Detached* constructors among retained-size leaders; repeated toggles produced only modest aggregate growth, giving low-confidence evidence against an accumulating listener/DOM leak.

Provenance

Canonical report: results/atomic/reports/0658-www_betpawa_ug.json
Report SHA-256: 12ba0751bdb2a2baac10f9ca647aa235ecf07af74a4dbaeaa0029188ef4eda49
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_betpawa_ug/2026-07-22T04-59-15-863Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_betpawa_ug/2026-07-22T04-59-15-863Z
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.