v0.0.178
Released Nov 11, 2026
Release Notes
Structured data checks now say what they could and could not read. The schema product rule reports each of name, description, image, price and availability as present, absent or unknown, and two new informational checks report merchant identity for a confirmed shop and the contact channels an organization publishes. Products written as Microdata or RDFa, and a ProductGroup with its variants, are now read as products, a price of 0 counts as declared, and price or availability is found on any offer or variant. A truncated or failed read, or a JavaScript-only product shell, leaves the fields unknown with an info result where the missing-field checks used to warn, so some pages move between info and warn. The api-catalog check accepts only a non-empty linkset and reports a 403 or 429 as not checked, the Agents score line says it covers the scored agent experience rules, with llms.txt, Markdown response and AGENTS.md listed separately, and the editor summary request now carries check-level evidence so it stops recommending what a site already has.
Added
schema/productreports name, description, image, price and availability as present, absent or unknown in a new informationalproduct-field-evidencecheck, with the representation each was read from (JSON-LD, Microdata or RDFa). Scoring and severity change on some pages: products written as Microdata or RDFa, and aProductGroupwith its variants, are now read as products, so a page that used to get the info resultNo Product schema foundcan now warn onproduct-requiredorproduct-offer-details. A price of 0 now counts as declared, and price or availability found on any offer, variant orAggregateOffercounts, not only the first offer. In the other direction, a truncated or failed read, and a JavaScript-only product shell, now leave the fields unknown with an info result where the missing-field checks used to warn, so some pages move from info to warn and others from warn to info. The CLI decides from the page markup alone: the ecommerce shop profile comes from cloud site metadata (#1652).schema/organizationreports machine-readable merchant identity for a confirmed shop in a new informationalorganization-merchant-identitycheck: an actual name plus a declared address or a tax or company identifier is present, text-only (visible legal-notice text), absent or unknown. A genericidentifiercounts only as a PropertyValue whosepropertyIDnames a company, tax or registration id.@id-linked entities count like nested ones, a failed or truncated read is unknown rather than absent, and it makes no legal-compliance claim (#1653).schema/organizationreports contact channels separately in a new informationalorganization-contact-channelscheck: structured ContactPoint (or organization) telephone and email,@id-linked entities, visiblemailto:andtel:links, and a contact form. A truncated or failed read leaves unobserved channels unknown rather than missing, and no requirement to publish contact details is implied (#1654).
Changed
- Reports say what the Agents score covers: the scored agent experience rules, without
llms.txt, Markdown response orAGENTS.md, which are listed as separate site-level signals that never move the score (#1386).
Fixed
- The editor summary request now carries check-level evidence (
checks: the checks that failed or warned, and the security and agent-experience checks that ran clean), so cloud summaries stop recommending headers or files the site already has (#3944). ax/api-discoveryvalidates/.well-known/api-catalogas a non-empty JSON linkset instead of accepting any JSON 200. An empty linkset, alinksetthat is not a list, JSON without alinksetmember, an OpenAPI document at the catalog path, malformed JSON and a 200 HTML fallback each report their own state (details.apiCatalogState), and HTTP 401, 403, 408, 429 and 5xx on the API paths report not checked instead of missing. No new probes. (#1650)
Update to this version
squirrelscan will auto-update, or run this command to update now: