Manifest position 110 · CrUX rank bucket 1000
https://sp.jra.jp
Coverage complete
Coverage complete. Public pages and the unauthenticated login edge were tested; authenticated wagering, destructive/account actions, localization variants and every individual race URL were intentionally not covered.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | The dark-emulated screenshot is visually identical to the light mobile page, and the platform probe found no color-scheme declaration or prefers-color-scheme rule. F01 medium: The site does not adapt to the user’s dark colour-scheme preference. |
respect-user-preferencesrespects-reduced-motion | issues | high | Under prefers-reduced-motion: reduce, the active hero changed from 2026_jra-summercp-2026-3.webp to 2026_sumahokeiba.webp after six seconds. F02 high: The autoplay hero continues changing when reduced motion is requested. |
respect-user-preferencesrespects-contrast | pass | high | Forced-colors screenshot retains visible white/yellow text, controls and boundaries on black, and CSS includes contrast/forced-color handling. |
implement-natural-interactionsview-transitions | issues | high | The computed CSS corpus contains no view-transition usage; public race links navigate through legacy POST/JS actions. F03 low: State and route changes use abrupt legacy swaps rather than View Transitions. |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | The audited templates use no scroll-linked storytelling, parallax, reveal, or carousel-scroll effect to implement. |
implement-natural-interactionsphysical-gestures | pass | high | The horizontal quick navigation uses scroll-snap and native overflow; CSS probe found scroll-snap support and no evidence of pointermove-driven gesture replacement. |
provide-guided-navigationscroll-state-aware-chrome | issues | high | The homepage is 6,014 CSS pixels tall, while CSS inspection found no scroll-state container-query or scroll-timeline implementation. F04 low: The long page has no scroll-state-aware navigation or progress affordance. |
provide-guided-navigationanchored-positioning | not-applicable | high | No edge-attached tooltip or popover was exposed in the representative public paths; the full-screen search/menu controls are not anchored overlays. |
provide-guided-navigationdirects-attention | pass | high | The race detail page exposes a breadcrumb, active section/date and strongly labelled cards that preserve orientation. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | The 360x800 screenshot shows “はじめての方へ” and “JRAアプリ” bars stacked across the bottom, each covering content until separately dismissed. F05 medium: Two fixed promotional banners reduce the usable mobile viewport on first load. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | DOM/CSS probing found 0 dialog, 0 popover and 0 details elements, 26 custom role=button elements, and 31 href="#" anchors; Lighthouse also found malformed ARIA relationships. F06 high: Interactive overlays and controls are built from custom divs and hash links rather than native primitives. |
maximize-content-reduce-noisereduced-chrome | pass | high | Outside the two promotional bars, content uses a compact header and content-first cards without decorative application frames. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | high | At 360px both homepage and listing report scrollWidth=clientWidth=360 and zero horizontal overflow; viewport meta is present. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | Both tested templates fit 360px without overflow, but the CSS corpus contains no @container rules despite reused cards, tabs and navigation modules. F07 low: Responsive behaviour is viewport-only rather than component-aware. |
adapt-to-the-form-factorinput-modality-aware | pass | high | Mobile controls are generally large, and the keyboard focus probe showed a visible 1px auto outline on the skip link. |
support-core-task-successclear-purpose-and-primary-action | pass | high | The first viewport clearly brands JRA and exposes race cards, odds, results, wagering login and featured race content. |
support-core-task-successprimary-flow-completion | pass | high | The public race-information journey reaches the current-race detail hub and its entry-card/data-analysis actions; the separate authenticated wagering flow was intentionally not entered. |
support-core-task-successclear-system-state-and-recovery | issues | high | A missing route renders Japanese text saying access is forbidden plus “(403:FORBIDDEN)”, with no retry, search, homepage CTA, or contextual explanation in the main error area. F08 medium: Failure states expose terse server errors without recovery actions. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse measured FCP 5.6s, LCP 14.1s, Speed Index 12.6s and TTI 20.6s (performance 0.51); the independent trace measured FCP 4.16s and LCP 5.74s. CLS remained good. F09 high: The mobile load misses the LCP performance bar by a wide margin. |
be-fast-and-stablevisual-stability | pass | high | Mobile layout CLS was 0.0066 on the homepage and 0.0006 on the listing, both comfortably in the good range. |
be-fast-and-stableefficient-main-thread | pass | high | The independent trace found one 99.5ms long task and 49.5ms TBT; Lighthouse TBT was 260ms, indicating network/LCP rather than sustained main-thread blocking is the primary bottleneck. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR recorded 156 requests and 4.74MB transferred, including 110 images/3.60MB; 9 parser-inserted stylesheets and a synchronous head script were render-blocking candidates. All 100 inspected images lacked width/height and 52 below-fold images lacked lazy loading. F10 high: The page ships a large, eager critical path with blocking styles/scripts and images lacking loading controls. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | Lighthouse estimated 301KiB unused JavaScript and 37KiB unused CSS; multiple GTM/gtag bundles and Facebook scripts dominate the waste. F11 medium: Unused third-party and legacy code materially inflates the load. |
be-inclusivenames-roles-labels | issues | high | Lighthouse accessibility was 0.84 and found prohibited aria-label on roleless divs, tabs without the required tablist parent, a tablist with invalid children, visible-label/name mismatches, and orphaned list items. F12 high: ARIA roles and accessible names are malformed in core navigation. |
be-inclusivesufficient-contrast | pass | high | Lighthouse colour-contrast audit passed and forced-colors rendering remained legible. |
be-inclusivestructure-and-focus | issues | high | Lighthouse found no main landmark; DOM inspection shows the H1 contains only the logo image and key content starts at H2. Focus itself was visibly outlined. F13 medium: Pages lack a main landmark and have weak document heading semantics. |
be-inclusivelegible-text | pass | high | Across homepage, listing and race detail, Japanese text reflows without clipping and uses readable line spacing and hierarchy at 360px. |
be-inclusivezoom-reflow-targets-and-media | pass | high | Viewport allows scaling, both measured templates reflow without horizontal overflow, and no essential audio/video requiring captions appeared in the tested path. |
follow-best-practicesno-console-errors | issues | high | Lighthouse recorded refusal to execute pp.d2-apps.net’s image/gif response as JavaScript. F14 low: A third-party impression endpoint causes a console security error. |
follow-best-practicessound-document-and-assets | issues | high | The images primitive found 100/100 images without width/height; Lighthouse found carousel pager images displayed at 8x5 despite 10x10 source aspect ratio. F15 medium: Image markup is not dimensionally sound. |
follow-best-practicesbrowser-platform-hygiene | pass | high | Lighthouse exposed no deprecated-API, geolocation/notification-on-load or paste-prevention failure; inspector cookie issues are reported under security. |
be-discoverabletitle-and-description | pass | high | Homepage has a descriptive Japanese title and meta description; app page also has specific title/description. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | The rendered DOM contains 31 href="#" anchors; race card, odds and results use onclick POST actions. Lighthouse also flagged generic link text. F16 medium: Many core race actions are not crawlable links. |
be-discoverablecanonical-and-indexing-signals | issues | high | Direct requests to /robots.txt and /sitemap.xml returned 403 and the homepage HTML; the mobile homepage canonical also points to https://www.jra.go.jp/ rather than its fetched URL. F17 medium: Robots and sitemap endpoints do not provide valid crawler files. |
be-discoverablestructured-and-shareable-metadata | issues | high | The document probe found complete basic Open Graph fields but zero JSON-LD blocks. F18 low: The organization homepage has social tags but no structured data. |
be-private-and-securesecure-transport-and-headers | issues | high | HTTPS/HSTS/nosniff/frame protection are present, but CSP is absent. All 7 observed first-party cookies lacked Secure; 5 used SameSite=None and two analytics cookies persist for 400 days. F19 high: Cookie and CSP defaults are not secure enough. |
be-private-and-securedata-minimisation-and-third-parties | issues | high | The page contacted 13 third-party origins and five known tracker domains; 26 third-party requests transferred 776KB, including Google, DoubleClick, Facebook, Yahoo and D2 tags. F20 high: Tracking is extensive and begins without an evident consent or minimisation layer. |
be-private-and-securein-context-permissions-and-modern-auth | issues | high | The IPAT login screenshot shows three knowledge-factor fields and no passkey/WebAuthn route. No permission prompt fired on the public homepage. F21 medium: The linked wagering login relies on subscriber number, PIN and P-ARS credentials with no visible phishing-resistant option. |
be-private-and-securedefensive-browser-policies | issues | high | Headers inspection found no Referrer-Policy or Permissions-Policy; CSP/frame-ancestors is also absent on the main document, although X-Frame-Options SAMEORIGIN is present. F22 medium: Several browser-enforced privacy policies are missing. |
be-resilientprogressive-enhancement | issues | high | Although 94% of rendered content words occur in raw HTML, primary race-card/odds/result anchors have href="#" and onclick doAction handlers, so those journeys disappear without scripting. F23 medium: Public race actions depend on JavaScript and POST navigation. |
be-resilientresilient-runtime-behaviour | pass | high | The tested content/list templates loaded to stable, navigable states without clipped overlays or blank shells. |
be-resilientoffline-and-installable | not-applicable | high | This public information portal links to a separately distributed native app; offline/installability is not required for the representative web task. The manifest contains only display: browser and no service worker is registered. |
be-resilientnetwork-and-http-failure-states | issues | high | The synthetic missing path displays a raw 403 label without contextual recovery controls, despite global footer links. F24 medium: The network/HTTP error template is a dead end. |
be-internationalisedlang-dir-and-logical-properties | pass | high | All inspected pages declare lang=ja, and the computed CSS corpus uses logical inline/block properties. |
be-internationalisedlocale-aware-data | pass | high | Visible dates use conventional Japanese year/month/day forms (for example 2026年7月18日 and 7月18日〜7月19日) consistently across templates. |
be-internationalisedtime-zone-correctness | not-applicable | high | No rendered event times, cross-zone scheduling controls, or user-entered time concepts appeared in the representative paths. |
be-trustworthyno-dark-patterns | pass | high | No confirmshaming, forced continuity, disguised advertising or irreversible choice was observed in the representative public journey; promotional bars are explicitly dismissible. |
be-trustworthyhumane-error-handling | not-applicable | high | The audited public site exposes only an unconstrained search field; no validation-required data-entry form was available before authentication. |
be-trustworthytrustworthy-input-assistance | issues | high | IPAT DOM inspection found visible userid, password and P-ARS inputs with no name or autocomplete tokens; the screenshot confirms these are the core sign-in fields. F25 medium: The wagering login does not expose autofill semantics on visible credential fields. |
be-trustworthysafe-commercial-and-account-flows | pass | high | The public IPAT entry clearly labels its three credentials, login, registration and help links; authenticated betting, commitment and cancellation states were not entered. |
be-sustainableoptimised-assets | issues | high | The homepage transferred 3.60MB across 110 images; 43 images use legacy formats, 39 lack responsive sources, 13 are oversized, and a promotional PNG alone is 442KB. F26 high: Image delivery is disproportionate for a mobile portal. |
be-sustainableno-wasteful-work | issues | high | The hero kept auto-advancing under reduced motion and 13 third-party origins initiated tracking/network work on page load. F27 medium: Background carousel and analytics work runs without user demand. |
be-sustainablethird-party-and-media-budget | issues | high | HAR measured 4.74MB total, 776KB third party, 3.60MB images and 884KB scripts on one homepage load. F28 high: Third-party and media budgets are too high for the page’s informational purpose. |
be-agent-readystructured-agent-capabilities | not-applicable | high | Agent-facing capabilities are emerging and no declared WebMCP/agentic-commerce intent exists; public content remains available in raw HTML. |
be-agent-readyon-device-inference | not-applicable | high | No summarisation, generation, or language-model task is part of the representative public journeys, so on-device inference would not add clear value. |
be-memory-efficientno-leak-under-repeated-interaction | pass | high | After ten menu open/close cycles, heap self-size rose about 0.59MB (2.8%); closure count fell slightly and arrays stayed flat, with no Detached constructor in either summary. This does not indicate unbounded retained growth. |
be-memory-efficientbounded-footprint | pass | high | The dense portal used about 20.7–21.2MB heap with 2,244 DOM elements, proportionate to its large navigation/content surface though worth monitoring. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | high | Neither heap summary listed Detached constructors, and repeated toggling did not increase closures (15,911 to 15,907). |
Provenance
Canonical report: results/atomic/reports/0110-sp_jra_jp.json
Report SHA-256: 8d4f61f5635d722c157d2862a3617c71e3210c314d5ca37e5e4fc908099035f7
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/sp_jra_jp/2026-07-18T12-07-19-514Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/sp_jra_jp/2026-07-18T12-07-19-514Z
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.