Manifest position 738 · CrUX rank bucket 1000

https://divar.ir

Coverage complete

Atomic coverage complete. External fetches occasionally received HTTP 429, so the HAR is not used for byte conclusions; browser trace, Lighthouse, DOM, screenshots, and successful crawler fetches provide the judgements.

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
issueshighA screenshot captured with prefers-color-scheme: dark remains white with the same light surfaces and grey controls as the ordinary desktop view.
F01 medium: Dark preference leaves the listings UI in its light palette
respect-user-preferences
respects-reduced-motion
issueshighThe reduced-motion evaluate probe reported eight running animations, each with a 360 ms duration, while prefers-reduced-motion: reduce matched.
F02 medium: Animations continue when reduced motion is requested
respect-user-preferences
respects-contrast
passmediumForced-colors screenshot preserves distinct borders, labels, controls, focus affordances, and readable system colors.
implement-natural-interactions
view-transitions
issueshighDOM/CSS inspection across the listing and detail templates found no authored view-transition-name or ::view-transition styling; navigation swaps the route abruptly.
F03 low: Route changes do not use View Transitions
implement-natural-interactions
scroll-driven-animations
passmediumDOM/CSS inspection found no authored scroll-linked animation or parallax effect, and scrolling remains native; therefore no main-thread scroll-animation anti-pattern is present.
implement-natural-interactions
physical-gestures
passmediumMobile listing scrolling and the detail media carousel retain native scrolling/button behavior; no interaction that fights pointer or touch scrolling was observed.
provide-guided-navigation
scroll-state-aware-chrome
passmediumThe rendered listing CSS defines a sticky 64 px navigation bar and the mobile capture keeps primary navigation reachable while content scrolls.
provide-guided-navigation
anchored-positioning
issueshighRendered CSS places the category menu with position:absolute; top:100%; right:0; left:0 and does not use anchor-name, position-anchor, or position-try fallbacks.
F04 low: The category overlay is manually positioned rather than anchor-aware
provide-guided-navigation
directs-attention
passmediumVisual review shows clear red primary actions, active listing cards, breadcrumbs on detail, and persistent navigation cues without competing animation.
maximize-content-reduce-noise
no-intrusive-interruptions
passmediumHome, listing, and detail load directly into core content with no consent wall or promotional interstitial; the /new login modal appears only after choosing the protected posting route.
maximize-content-reduce-noise
semantic-dismissible-primitives
issueshighThe /new form probe found four SECTION elements with role=dialog, none with aria-modal or an accessible label; the visible panel is a modal authentication interruption.
F05 medium: Authentication overlays are duplicated custom role=dialog sections without dialog semantics
maximize-content-reduce-noise
reduced-chrome
passmediumListing and detail screenshots devote the majority of the viewport to cards, imagery, attributes, and actions; navigation/filter chrome remains compact.
adapt-to-the-form-factor
responsive-no-horizontal-scroll
issueshighThe mobile layout primitive reported a 992 px layout/content width in a 360 px visual viewport, with 632 px horizontal overflow; the screenshot shows most navigation and content off-screen.
F06 high: The landing page is clipped at 360 px
adapt-to-the-form-factor
component-level-responsiveness
passmediumThe same listing card template changes from a three-column desktop grid to a single-column mobile card with appropriately rearranged image and text.
adapt-to-the-form-factor
input-modality-aware
passmediumLighthouse accessibility scored 0.96 with no target-size or focus-order failure, and visible controls use large button/card hit areas in the mobile capture.
support-core-task-success
clear-purpose-and-primary-action
passmediumThe entry explains city selection; listings expose search and “ثبت آگهی”; detail presents title, price, chat, and contact actions prominently.
support-core-task-success
primary-flow-completion
passmediumThe browse journey proceeds from city to listings to a server-rendered detail with visible contact/chat controls; posting reaches a clearly identified OTP authentication step.
support-core-task-success
clear-system-state-and-recovery
issueshighAfter activating “Next” with the phone field blank, the captured state shows no error text, and the probe reports aria-invalid=false; only a generic login-required toast remains.
F07 medium: Blank phone submission gives no field-level recovery guidance
be-fast-and-stable
good-core-web-vitals
issueshighLighthouse measured LCP 4.8 s, FCP 3.6 s, TBT 280 ms, and performance 0.67; the independent trace measured LCP 2.98 s, showing material cold-load variability.
F08 high: The listings path misses the good LCP range
be-fast-and-stable
visual-stability
passmediumLighthouse measured CLS 0.055 and the independent mobile landing layout observer recorded CLS 0 during its observation window.
be-fast-and-stable
efficient-main-thread
issueshighThe trace recorded two long tasks (116 ms longest) and 72.53 ms TBT; Lighthouse measured 280 ms TBT, 350 ms max potential FID, a 10.6 s TTI, and flagged forced reflow.
F09 medium: Main-thread work delays interaction readiness
be-fast-and-stable
efficient-resource-delivery
issueshighThe images primitive found 17/19 images without width/height, 13 below-fold images without lazy loading, and 14 without responsive srcset.
F10 medium: Listing images lack delivery and stability hints
be-fast-and-stable
trim-unused-and-duplicate-code
issueshighLighthouse estimated 584 KiB of unused JavaScript and 47 KiB of unused CSS on a 1,666 KiB transfer.
F11 medium: The mobile bundle ships substantial unused code
be-inclusive
names-roles-labels
issueshighThe form probe reports four role=dialog SECTION elements with no aria-label/aria-labelledby and no aria-modal, while one is visibly presented as the login dialog.
F12 medium: The login modal has no programmatic name or modal state
be-inclusive
sufficient-contrast
issueshighLighthouse identified three bottom-nav controls at 4.39:1 (#71717a on #f4f4f5), below the 4.5:1 requirement for 12 px normal text.
F13 medium: Mobile bottom-navigation text narrowly fails WCAG contrast
be-inclusive
structure-and-focus
passmediumThe listing has one H1 followed by card H2s, semantic navigation, and Lighthouse found no heading-order, focus-order, or keyboard trap failure.
be-inclusive
legible-text
passmediumDesktop and mobile captures show readable Persian body text, clear heading hierarchy, comfortable card line lengths, and no text overlap.
be-inclusive
zoom-reflow-targets-and-media
issueshighAt 360x800 the page maintains a 992 px layout viewport and clips core city selection and navigation, preventing one-dimensional reflow.
F14 high: The landing template does not reflow to a mobile viewport
follow-best-practices
no-console-errors
passmediumLighthouse best-practices scored 1.00 and did not report a browser-errors audit failure during the representative listing load.
follow-best-practices
sound-document-and-assets
issueshighThe image audit found width and height attributes missing on 17 of 19 images, despite the document otherwise having a valid doctype and UTF-8 charset.
F15 low: Most listing images omit intrinsic dimensions
follow-best-practices
browser-platform-hygiene
issueshighLighthouse reports one large inline/first-party script without a source map and 17 mobile bundle maps returning 403.
F16 low: Large scripts have unavailable source maps
be-discoverable
title-and-description
passmediumRendered listing has a specific Persian title and description; the detail crawler test confirms title, H1, and meta description are present in raw HTML.
be-discoverable
crawlable-and-mobile-friendly
issueshighThe discoverability primitive fetched the listing with HTTP 200 but found 0% rendered-content coverage: raw HTML had 10 text characters, no title, H1, or description, while the browser rendered 2,226 characters and an H1.
F17 high: The primary listing is empty to a non-JavaScript crawler
be-discoverable
canonical-and-indexing-signals
issueshighA direct fetch of /sitemap.xml returned HTTP/2 404 and robots.txt declares no Sitemap location, although canonical and robots meta signals exist on listing pages.
F18 low: The conventional sitemap endpoint returns 404
be-discoverable
structured-and-shareable-metadata
passmediumThe listing probe found three JSON-LD blocks and ten Open Graph tags; visible title/content correspond to the listing archetype.
be-private-and-secure
secure-transport-and-headers
issueshighThe cookie primitive found 8/8 cookies without Secure; seven are long-lived for 400 days. HSTS is present, but explicit Secure protects cookies against downgrade and non-HTTPS edge cases.
F19 medium: All observed first-party cookies omit Secure
be-private-and-secure
data-minimisation-and-third-parties
passmediumTracker capture found no known tracker domains; five non-site origins were primarily Divar CDN/Sentry/map infrastructure plus one trust seal, with no third-party cookies.
be-private-and-secure
in-context-permissions-and-modern-auth
passmediumNo permission prompt appeared on load; authentication is requested only when entering /new and uses a tel-national OTP field in context.
be-private-and-secure
defensive-browser-policies
issueshighHeaders include HSTS, nosniff, DENY/frame-ancestors, and CSP, but Permissions-Policy is missing and CSP permits unsafe-inline for scripts and styles.
F20 low: Browser policy headers leave avoidable gaps
be-resilient
progressive-enhancement
issueshighThe no-JS crawler view of /s/tehran contains no listing heading or cards despite an HTTP 200 response; the detail template, by contrast, provides 100% raw-content coverage.
F21 high: The listings core experience depends entirely on JavaScript
be-resilient
resilient-runtime-behaviour
passmediumRendered CSS includes explicit offline/back-online connection-banner states, while listing and detail routes completed without broken overlay placement.
be-resilient
offline-and-installable
passmediumThe page is controlled by a service worker and exposes a standalone manifest with start_url, theme/background colors, RTL language metadata, and icons.
be-resilient
network-and-http-failure-states
passmediumThe authored connection banner has distinct offline and back-online states and the listing template includes an explicit post-list error message and load-more recovery control.
be-internationalised
lang-dir-and-logical-properties
passmediumThe document declares lang=fa-IR and dir=rtl; representative CSS and screenshots use RTL layout consistently.
be-internationalised
locale-aware-data
passmediumPrices, relative times, placeholders, and OTP copy are rendered in Persian conventions; the phone input uses a localized placeholder and tel-national autocomplete.
be-internationalised
time-zone-correctness
not-applicablehighThe audited marketplace surfaces show relative listing ages and no scheduled cross-time-zone event or user-entered time value to validate.
be-trustworthy
no-dark-patterns
passmediumPosting authentication states the OTP action and links terms/privacy without preselected upsells; listing and contact CTAs are plainly labelled.
be-trustworthy
humane-error-handling
issueshighActivating “Next” with an empty phone field produced no inline error, no announced message, and no aria-invalid state; the user remains at the same field without actionable guidance.
F23 medium: Phone validation does not explain how to recover
be-trustworthy
trustworthy-input-assistance
passmediumThe phone input is type=tel with autocomplete=tel-national, a localized example, and an associated accessible label.
be-trustworthy
safe-commercial-and-account-flows
passmediumThe audited account boundary clearly explains OTP delivery, exposes terms/privacy before continuation, and does not request a password or payment details out of context.
be-sustainable
optimised-assets
issueshighAlthough thumbnails use modern formats and are not oversized, 13 below-fold images load eagerly and 14 lack responsive source selection, increasing avoidable requests and bytes.
F22 medium: The listing does not minimize image transfer work
be-sustainable
no-wasteful-work
passmediumThe six-second trace contained two bounded long tasks and no continuous animation/media workload; tracker capture found no known analytics tracker.
be-sustainable
third-party-and-media-budget
passmediumLighthouse transferred 1,666 KiB for an image-rich marketplace feed; third-party capture was mostly Divar-operated infrastructure, with no autoplay media or known trackers.
be-agent-ready
structured-agent-capabilities
not-applicablehighNo declared agent-facing workflow or WebMCP surface was found, and a public classifieds browser does not inherently require agent tool registration.
be-agent-ready
on-device-inference
not-applicablehighThe audited core marketplace journeys do not require on-device inference; the browser API presence is not evidence of site intent.
be-memory-efficient
no-leak-under-repeated-interaction
passmediumAfter ten bottom/top scroll cycles the snapshot grew 3.48 MB while additional feed content loaded, but no Detached* constructor appeared; this is bounded content growth rather than direct leak evidence.
be-memory-efficient
bounded-footprint
passmediumThe loaded feed used 38.3 MB heap self-size at baseline and 41.8 MB after loading more cards, proportionate to an image-rich interactive listing.
be-memory-efficient
no-detached-dom-or-unbounded-listeners
passmediumNeither heap summary exposed a Detached* constructor among retained populations after repeated scrolling, and growth was dominated by ordinary Objects/Arrays.

Provenance

Canonical report: results/atomic/reports/0738-divar_ir.json
Report SHA-256: 869772316093ea2b0bd6ed193b2de5f121989be6f9c49fe695abbb28ebe5d4bd
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/divar_ir/2026-07-22T18-34-19-976Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/divar_ir/2026-07-22T18-34-19-976Z
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.