Scan report ·

petermillar.co

Invisible. Agents can't meaningfully engage with this storefront.

Category · fashion

E
26 / 100
Invisible
Aisle Storefront · Simulated twin
This scan found 6 weaknesses an agent would hit at checkout, so we planted the same mechanisms in a simulated storefront. Watch an agent shop it, or send your own.
Recorded run: our agent scored 92/100 · replay

What stopped it: the product-page/cart price mismatch. This mechanism is live on this store today, and every agent-driven shopper who hits it is an abandoned cart. The matching fixes are in the findings below.

  1. [home] I found two 'Coastal Windbreaker' products on the home page: p14 at $62.95 and p22 at $73.95. I need to open one to check if it comes in size S and confirm the final price stays under $94 all-in. open product
  2. [pdp:p14] Product p14 is the Coastal Windbreaker in navy, priced at $62.95, and it's available in size S, which meets the requirement. add to cart
  3. [pdp:p14] The cart shows 1 item, confirming the product was added. Now I need to view the cart to see the final total with any fees or taxes to verify it stays under $94. view cart
  4. [cart] The cart shows the Coastal Windbreaker in size S at $69.95, which is higher than the $62.95 shown on the product page—a $7 increase. Shipping is not yet calculated, so I need to proceed to checkout to begin checkout
  5. [checkout1] I'm on checkout step 1 of 3 (contact information). The cart price jumped from $62.95 to $69.95, and shipping hasn't been calculated yet. I need to proceed through checkout to see the final total with submit contact
  6. [checkout2] Checkout step 2 shows shipping cost is 'Calculated at payment', so I cannot see the final total yet. I need to proceed to step 3 to see all fees and the complete total before placing the order. choose shipping
  7. [checkout3] The order summary shows Coastal Windbreaker $69.95 + Shipping $7.00 + Handling $4.00 = $80.95 total, which is under the $94 budget. I can now place the order. place order
  8. [checkout3] A red banner warns the item sold out but stock was found; I need to review the order to confirm the Coastal Windbreaker size S is still in the cart before placing the order. view cart
  9. [cart] The cart still shows the Coastal Windbreaker Size S at $69.95, confirming the item is in stock and ready. I need to proceed to checkout again to complete the purchase since the place_order action on c begin checkout
  10. [checkout1] I'm back at checkout step 1. I need to fill in contact information (email and full name) to proceed through checkout and reach the final order review before placing the order. submit contact
  11. [checkout2] Checkout step 2 shows shipping will be calculated at payment; I need to proceed to step 3 to see the final total with all fees before placing the order. choose shipping
  12. [checkout3] The red banner warns the item sold out but stock was found; I'm at checkout3 with the order summary showing $80.95 total (under $94 budget). I should place the order now to secure the purchase before place order
  13. [confirm] The order has been confirmed with a total charge of $80.95, which is under the $94 budget. The Coastal Windbreaker in size S has been successfully purchased. finish
Full graded report →
Aisle Max · Remediation packet
Every fix this scan flagged, one card at a time: ranked by points per effort, with copy-paste snippets, per-fix downloads, and a plan your AI coding agent can execute.
Discoverability
C
10 / 20
Machine Readability
E
0 / 20
Transactability
E
3 / 20
Agent Posture
B
11 / 15
Trust Signals
E
0 / 10
Agent-Native Content
E
2 / 15

Narrative

Peter Millar scores 26/100 and lands in the Invisible band, but not for the usual reason. The site welcomes every AI crawler and ships an llms.txt, then serves them a sitemap.xml with zero URLs, meaning agents can knock on the door but find no catalog inside. Everything downstream (product data, pricing, inventory, checkout inspection) collapses because there are no product URLs to evaluate.

Where the points went

ProblemPoints lostWhat an agent hits
Empty sitemap, no product URLs discoverable27Agent cannot enumerate the catalog to recommend a single SKU
Missing structured product data (price, attributes, inventory, variants)20Agent cannot quote a price or confirm a size is in stock
No agent-native content (specs, descriptions, delivery, decision metadata)13Agent cannot answer "is this the right fabric for me?"
Checkout opaque and gated by initialized cart12Agent cannot complete or even simulate a purchase flow
No returns page, no verifiable merchant identity, no third-party reviews8Agent cannot vouch for the merchant's legitimacy or risk profile

The evidence

  • Sitemap is empty (0/4). https://petermillar.co/sitemap.xml returns HTTP 200 but total_locs: 0, has_product_urls: false, and no lastmod. This single failure cascades into every product-level check returning "No sample URLs available."
  • Product data checks all zeroed (0/20 across 2.1, 2.2, 2.3, 2.5). Without sample URLs, price-in-HTML, attribute structure, inventory signals, and variant handling cannot be evaluated, and the working assumption is that agents hit the same wall.
  • Checkout requires a pre-initialized cart (2/6). The classifier logged: "Checkout page content not provided, appears to require pre-initialized cart to render." Guest checkout is undetectable for the same reason.
  • Merchant verifiability blocked by rate limiting (0/3). The classifier attempt returned "429 Too Many Requests," and /terms, /about, and /cart all threw 429s during the scan. Business name, address, and registration ID are all unresolved.
  • No third-party trust anchors (0/2). Zero hits across Trustpilot, Yotpo, Okendo, Judge.me, Google Shopping, and eight other checked platforms. aggregate_rating_hits: 0.

What already works

  • Full crawler access (6/6). GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, Applebot-Extended, and Amazonbot are all allowed in robots.txt.
  • llms.txt is published (4/4) at https://petermillar.co/llms.txt, ahead of most peers.
  • Zero manipulation tactics (2/2) on the homepage. Clean of fake urgency and scarcity theater.

Fix first

  1. Populate sitemap.xml with every product URL and valid lastmod timestamps (recovers up to 4 directly, unlocks ~40 downstream).
  2. Emit Product schema JSON-LD with price, availability, SKU, and variants on every PDP (recovers up to 20).
  3. Make the cart and checkout renderable without a pre-initialized session, and link a machine-readable returns policy from the homepage (recovers up to 10).

The single biggest lever is the empty sitemap: fixing it turns roughly two-thirds of this report from "cannot evaluate" into scoreable surface area.

CDiscoverability

Robots, sitemap, agent endpoints. partial.

AI crawler posture: 6/6
https://petermillar.co/robots.txt
1.1 · 6/6
×
Structured product data coverage: 0/6
How to fixPro
1.2 · 0/6
×
Sitemap quality: 0/4
https://petermillar.co/sitemap.xml
How to fixPro
1.3 · 0/4
Agent-specific endpoints: 4/4
https://petermillar.co/.well-known/ai-plugin.json
1.4 · 4/4

EMachine Readability

Schema coverage, raw-HTML price, inventory, variants. broken.

×
Price in raw HTML: 0/8
How to fixPro
2.1 · 0/8
×
Product attributes structured: 0/6
How to fixPro
2.2 · 0/6
×
Inventory signals: 0/5
How to fixPro
2.3 · 0/5
×
Variant handling: 0/1
How to fixPro
2.5 · 0/1

ETransactability

Checkout flow, guest, transparency, payment rails, cart API. broken.

!
Checkout flow structure: 2/6
How to fixPro
3.1 · 2/6
×
Guest checkout availability: 0/4
How to fixPro
3.2 · 0/4
×
Price transparency signals: 0/4
How to fixPro
3.3 · 0/4
!
Machine-native payment rails: 1/3
How to fixPro
3.4 · 1/3
×
Cart API accessibility: 0/3
How to fixPro
3.5 · 0/3

BAgent Posture

Bot detection, CAPTCHA, rate limiting, stated agent policy. mostly strong.

Bot detection aggressiveness: 6/6
4.1 · 6/6
CAPTCHA prevalence: 4/4
4.2 · 4/4
!
Rate limiting posture: 1/3
How to fixPro
4.3 · 1/3
×
Stated agent policy: 0/2
How to fixPro
4.4 · 0/2

ETrust Signals

Return policy, merchant verifiability, price history, third-party anchors. broken.

×
Return policy machine-readable: 0/3
How to fixPro
5.1 · 0/3
×
Merchant verifiability: 0/3
How to fixPro
5.2 · 0/3
×
Price history signals: 0/2
How to fixPro
5.3 · 0/2
×
Third-party trust anchors: 0/2
How to fixPro
5.4 · 0/2

EAgent-Native Content

Specs, descriptions, decision support, delivery, stability, absence of manipulation. broken.

×
Specification completeness: 0/4
How to fixPro
6.1 · 0/4
×
Conversational product descriptions: 0/2
How to fixPro
6.2 · 0/2
×
Decision-support metadata: 0/3
How to fixPro
6.3 · 0/3
×
Delivery date transparency: 0/2
How to fixPro
6.4 · 0/2
×
Price stability signals: 0/2
How to fixPro
6.5 · 0/2
Absence of manipulation tactics: 2/2
6.6 · 2/2