Manifest position 914 · CrUX rank bucket 1000
https://www.meteociel.fr
Coverage complete
Coverage-complete audit of six representative paths. Excluded: authenticated post-observation/photo submission and forum content because they require credentials or are a separate host; duplicate weather/model templates were represented by the selected observation, city forecast, and AROME paths.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | medium | The dark-condition screenshot is visually identical to the light capture: the content and consent surface remain light, and the DOM/CSS probe found no adaptive theme mechanism. F01 medium: The interface does not honour the user’s dark colour preference. |
respect-user-preferencesrespects-reduced-motion | issues | medium | The reduced-motion probe confirmed the preference but still found the animated satellite GIF anim_ir_small.gif and other GIF resources, with no reduction mechanism. F02 medium: Auto-animated imagery continues when reduced motion is requested. |
respect-user-preferencesrespects-contrast | pass | high | Forced-colours/high-contrast emulation screenshot shows text, links, inputs, and consent controls remain visible with system colours. |
implement-natural-interactionsview-transitions | issues | medium | The DOM/CSS probe found no view-transition usage across the global shell; navigation is a dense set of conventional full-document swaps. F03 low: Navigation and state changes are abrupt. |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | No scroll-linked parallax, scrollytelling, or reveal interaction exists on the audited templates, so there is no scroll animation implementation to judge. |
implement-natural-interactionsphysical-gestures | pass | high | Audited navigation and form controls use ordinary browser click/scroll behaviour; the probe found no custom pointer-driven gesture layer that fights platform interaction. |
provide-guided-navigationscroll-state-aware-chrome | issues | medium | The full-page screenshots show a large persistent left navigation, while CSS inspection found no scroll-state query, progress indicator, or shrinking-header treatment. F04 low: The extensive navigation chrome does not respond to scroll position. |
provide-guided-navigationanchored-positioning | not-applicable | high | No tooltip, popover, or floating menu requiring anchor positioning was present on the audited representative states. |
provide-guided-navigationdirects-attention | issues | medium | Across homepage, observations, forecast, and model probes there is no H1; hundreds of similarly styled links compete with page content and state changes have no directional cue. F05 medium: Dense navigation provides weak attention and location cues. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | Desktop screenshots on four archetypes show the same modal-like panel covering most of the content before interaction. A reject/continue link exists, but the interruption still dominates the entry state. F06 high: A large consent interstitial obscures the core weather content on every fresh page load. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | medium | The overlay visibly behaves modally, but the DOM probe found zero dialog, popover, or details elements. F07 medium: The consent overlay is not exposed as a native dialog. |
maximize-content-reduce-noisereduced-chrome | issues | high | The screenshots show a fixed 950px table shell, a very long left menu, many borders, tiny controls, and competing panels; at mobile size the entire desktop composition is scaled down. F08 high: Application chrome crowds out the weather content. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | issues | high | The 360x800 capture renders a roughly 992px layout at scale 0.36. Layout evidence reports no viewport meta and a 992px CSS viewport; the DOM probe also sees 992px content against a 780px default viewport. F09 critical: The mobile page is a scaled-down desktop canvas rather than a usable responsive layout. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | The CSS probe found no container queries or logical properties, while the same fixed shell is used across forecast, observation, login, and model archetypes. F10 high: Reusable panels do not adapt to their available container. |
adapt-to-the-form-factorinput-modality-aware | issues | high | Lighthouse target-size failed and the mobile screenshot shows densely packed, tiny navigation links; the focus probe did confirm a 1px browser outline on the first link. F11 high: Touch targets are too small even though keyboard focus is visible. |
support-core-task-successclear-purpose-and-primary-action | issues | high | The home probe found no H1, 263 links, and only sidebar H3 headings; the first viewport gives comparable weight to menus, ads/search, maps, observations, and models. F12 high: The primary weather tasks are buried in a dense, heading-free interface. |
support-core-task-successprimary-flow-completion | pass | high | Submitting Paris through the city lookup produced a titled city-search result with forecast-location links and no account wall or dead end. |
support-core-task-successclear-system-state-and-recovery | pass | high | A deliberately invalid route returned HTTP 404 and a clear French error page with links back home and to the forum. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse measured LCP at 6.05s (performance 0.76), outside the 2.5s good threshold, although CLS was 0.0015 and TBT 22ms. The unthrottled trace measured LCP 2.66s. F13 high: Mobile Largest Contentful Paint is slow. |
be-fast-and-stablevisual-stability | pass | high | Lighthouse measured CLS 0.0015 and the layout primitive observed CLS 0 during capture, both within the good range. |
be-fast-and-stableefficient-main-thread | pass | high | Lighthouse measured TBT 22ms and the trace recorded zero long tasks and 0ms total blocking time. |
be-fast-and-stableefficient-resource-delivery | issues | high | Lighthouse estimates 950ms render-blocking savings and 497KiB cache-lifetime savings. HAR confirms seven parser-inserted stylesheets and 918KB transferred across 60 requests. F14 high: Render-blocking and cache delivery delay primary content. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | medium | Lighthouse estimates 218KiB unused JavaScript. HAR shows scripts account for 435KB transferred, led by roughly 202KB of ad implementation code. F15 medium: Substantial unused JavaScript and third-party code ships on first load. |
be-inclusivenames-roles-labels | issues | high | axe found 178 image-map areas without alternative text, 9 exposed images without alt, 2 unlabeled controls, 2 unnamed links, and an untitled iframe. The image primitive counted 29 images without alt. F16 high: Many controls, maps, images, and form fields lack accessible names. |
be-inclusivesufficient-contrast | issues | high | axe found two definite serious contrast failures and 135 additional nodes requiring review; Lighthouse’s colour-contrast audit also failed. F17 high: Some text fails WCAG AA contrast. |
be-inclusivestructure-and-focus | issues | high | The probe found no H1, no main/header/footer landmarks, and only sidebar H3s; axe reports 22 regions outside landmarks and malformed definition-list structure. F18 high: Document structure is not a coherent heading and landmark hierarchy. |
be-inclusivelegible-text | issues | high | The 360px screenshot scales the desktop layout to roughly 36%, making navigation, tables, and weather values illegible without zoom. F19 high: Text is too small and cramped, especially on mobile. |
be-inclusivezoom-reflow-targets-and-media | issues | high | There is no viewport meta; Lighthouse flags viewport and target-size problems, and the 360px capture shows the full fixed-width site compressed into one screen. F20 critical: The page fails mobile reflow and target-size expectations. |
follow-best-practicesno-console-errors | pass | high | Lighthouse errors-in-console audit passed with no logged items. |
follow-best-practicessound-document-and-assets | issues | medium | The image primitive found 92 of 95 images without both dimensions, 95 legacy-format images, and one oversized image; Lighthouse also flags incorrect aspect ratio and unsized images. F21 medium: Image and document asset hygiene is weak despite a valid doctype/charset. |
follow-best-practicesbrowser-platform-hygiene | issues | medium | Lighthouse found Cache-Control: no-store prevents BFCache restoration and its inspector-issues audit failed, although no deprecated APIs or console errors were reported. F22 medium: The page cannot use BFCache and Chrome reports inspector issues. |
be-discoverabletitle-and-description | pass | high | Representative pages expose unique descriptive titles; the homepage also has a detailed meta description. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | Lighthouse found onclick-only region links without href; the DOM has five anchors without href and no viewport meta. robots.txt itself is valid. F23 high: Some controls are uncrawlable and the site lacks a mobile viewport. |
be-discoverablecanonical-and-indexing-signals | issues | medium | The public homepage returns 200 but has no rel=canonical. robots.txt advertises HTTP sitemap text files, while /sitemap.xml returns the site’s HTML 404 document. F24 medium: Canonical and sitemap signals are inconsistent. |
be-discoverablestructured-and-shareable-metadata | issues | medium | The probe found zero JSON-LD blocks and zero Open Graph tags on the homepage, despite its clear organization/weather-data identity. F25 low: The public weather site lacks structured and social-preview metadata. |
be-private-and-securesecure-transport-and-headers | issues | high | Headers show HSTS and nosniff but no CSP. Two Matomo cookies are not Secure, including a 393-day identifier. F26 high: Transport is HTTPS, but CSP and cookie security are incomplete. |
be-private-and-securedata-minimisation-and-third-parties | issues | high | HAR attributes 54 of 60 requests and 700KB of 918KB transferred to non-main origins; tracker evidence identifies DoubleClick, and scripts include Matomo and consent tooling. F27 high: Third-party advertising and analytics dominate much of the initial transfer. |
be-private-and-securein-context-permissions-and-modern-auth | issues | medium | The login probe found a password form with no WebAuthn/passkey support and empty autocomplete values. No permission prompt appeared on initial load. F28 medium: The account flow is password-only and lacks modern autofill metadata. |
be-private-and-securedefensive-browser-policies | issues | high | Headers lack frame-ancestors/X-Frame-Options, Referrer-Policy, and Permissions-Policy in addition to CSP; HSTS and nosniff are present. F29 high: Several browser-enforced security policies are absent. |
be-resilientprogressive-enhancement | pass | high | Discoverability evidence fetched HTTP 200 raw HTML and found 100% rendered-content coverage without JavaScript; the crawler view retains the content. |
be-resilientresilient-runtime-behaviour | pass | high | The audited menu, consent, search, and model states rendered without cut-off floating overlays or uncaught runtime errors; conventional server navigation preserves stable state. |
be-resilientoffline-and-installable | not-applicable | high | The audited core is live weather and forecast data whose value depends on current network data; installability/offline app behaviour is not an evident product intent. |
be-resilientnetwork-and-http-failure-states | pass | high | The invalid route returns a genuine 404 with explicit recovery links rather than a blank shell or misleading success response. |
be-internationalisedlang-dir-and-logical-properties | issues | high | All representative probes report an empty html lang; the CSS probe found no logical properties. The site visibly serves locations beyond France. F30 high: French pages do not declare their language and layouts are not writing-mode resilient. |
be-internationalisedlocale-aware-data | issues | medium | Rendered weather dates and labels are French while html has no language and the inspected markup exposes no locale selector or Intl-based client formatting. F31 medium: Locale-sensitive presentation is fixed to French without explicit locale semantics. |
be-internationalisedtime-zone-correctness | issues | medium | The homepage renders observation/update times such as 21:50 for geographically varied data, but no visible zone indicator or machine-readable time semantics were found in the representative DOM. F32 medium: Weather times are presented without clear time-zone context. |
be-trustworthyno-dark-patterns | pass | high | The consent panel includes a visible “Continue without accepting” choice and the inspected weather flow has no forced purchase, continuity, or confirmshaming. |
be-trustworthyhumane-error-handling | not-applicable | high | The representative city lookup is a search rather than a required transactional form and exposes no required-field validation sequence to exercise. |
be-trustworthytrustworthy-input-assistance | issues | medium | The forecast and login probes found no autocomplete tokens on city, username, or password inputs. F33 medium: Forecast and sign-in inputs omit autofill assistance. |
be-trustworthysafe-commercial-and-account-flows | pass | high | The audited account page clearly identifies sign-in, account creation, and credential-recovery links; no purchase/subscription commitment is present. |
be-sustainableoptimised-assets | issues | medium | All 95 inspected images use PNG/GIF/JPEG-era formats, 84 below-fold images are eager, 92 lack dimensions, and responsive sources are largely absent. F34 medium: Image delivery is not proportionately optimized. |
be-sustainableno-wasteful-work | pass | high | Trace and layout observers recorded no long tasks, and the initial page settles without sustained main-thread work; separate third-party/media transfer waste is recorded under its own check. |
be-sustainablethird-party-and-media-budget | issues | high | Third parties account for 700KB and 54 requests; ad code alone is about 240KB, while an animated satellite GIF transfers about 100KB and continues under reduced motion. F35 high: Third-party and animated-media cost is high relative to the core weather task. |
be-agent-readystructured-agent-capabilities | not-applicable | high | No declared agent-facing product intent was found; this emerging capability is treated as an opportunity rather than an obligation. |
be-agent-readyon-device-inference | not-applicable | high | No summarisation or generative task is part of the weather lookup experience, so on-device inference is not applicable. |
be-memory-efficientno-leak-under-repeated-interaction | pass | medium | After toggling a real navigation section ten times, heap self-size increased only about 0.4% (10,020,214 to 10,061,556 bytes), and DOM element count stayed 1,086. |
be-memory-efficientbounded-footprint | pass | medium | Baseline heap summary reports about 10.0MB self-size for this dense server-rendered page, proportionate to its 1,086-element DOM and third-party scripts. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | medium | Ten menu toggles left DOM element count unchanged at 1,086, heap growth was small, and no Detached constructor appeared among the heap summary’s dominant constructors. |
Provenance
Canonical report: results/atomic/reports/0914-www_meteociel_fr.json
Report SHA-256: 7fadd017987a7e136efc14fca5630ad64952b21449e9c0de4414600765433015
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_meteociel_fr/2026-07-23T19-48-38-271Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_meteociel_fr/2026-07-23T19-48-38-271Z
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.