geo-audit · mistral.ai 2026-09-12 11:45 UTC 0.1.0 UA: geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com) 去噪清单: denoise/2026-09-07.1 schema geo-audit/report/1

判决

这次扫描不可信:29 个核心位置里有 18 个我们没能评估。下面的结论不要当结论用。

41 个位置 10 通过 1 读错 18 无法判断 12 不适用

四格之和恒等于位置数。「无法判断」永不折算进「通过」——「我们看不了」和「你这里没问题」是两件事。

按根因

按根因:1 条发现来自 1 处改动

口径:1 条 finding / 1 处根因 / 1 个链接实例 —— 三个数各有各的意思,不许混着说。

未能评估

把「我们没看到」误读成「没问题」的代价,比漏一条 LOW 死链大得多,所以这一区排在发现之前。这些位置既不计死链也不计存活。

① 入口发现 原因码: robots_disallowed discovery:developers.mistral.ai
位置
https://developers.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:dev.mistral.ai
位置
https://dev.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:doc.mistral.ai
位置
https://doc.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:apidoc.mistral.ai
位置
https://apidoc.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:api-docs.mistral.ai
位置
https://api-docs.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:apidocs.mistral.ai
位置
https://apidocs.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:reference.mistral.ai
位置
https://reference.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:platform.mistral.ai
位置
https://platform.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:support.mistral.ai
位置
https://support.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 原因码: robots_disallowed discovery:kb.mistral.ai
位置
https://kb.mistral.ai/
实际是
robots.txt 禁止抓取 /,本位置未评估
补救办法
你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
④ 索引内链存活 原因码: not_fetched index_links:https://docs.mistral.ai/llms.txt
位置
https://docs.mistral.ai/llms.txt
实际是
75 条内链待验证
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
④ 索引内链存活 原因码: not_fetched index_links:https://help.mistral.ai/llms.txt
位置
https://help.mistral.ai/llms.txt
实际是
129 条内链待验证
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
⑤ .md 通道 原因码: not_fetched md_channel:md
位置
https://mistral.ai/
实际是
待判定
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
⑥ 可点击路径 原因码: not_fetched human_path:https://www.mistral.ai/
位置
https://www.mistral.ai/
实际是
待抓取
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
⑥ 可点击路径 原因码: not_fetched human_path:https://www.mistral.ai/pricing
位置
https://www.mistral.ai/pricing
实际是
待抓取
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
⑥ 可点击路径 原因码: not_fetched human_path:https://www.mistral.ai/changelog
位置
https://www.mistral.ai/changelog
实际是
待抓取
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
⑥ 可点击路径 原因码: not_fetched human_path:https://docs.mistral.ai/
位置
https://docs.mistral.ai/
实际是
待抓取
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。
⑥ 可点击路径 原因码: not_fetched human_path:https://help.mistral.ai/
位置
https://help.mistral.ai/
实际是
待抓取
补救办法
超出本次预算上限(--max-requests / --max-links),本位置未验证。用 --max-requests 0 取消上限重跑可以覆盖它。

AI 检索链路六段

?① 入口发现16 个位置✓ 5 通过 · ? 10 无法判断 · – 1 …② 索引文件真伪7 个位置✓ 4 通过 · – 3 不适用③ 全文通道9 个位置✓ 1 通过 · – 8 不适用④ 索引内链存活3 个位置✕ 1 读错 · ? 2 无法判断?⑤ .md 通道1 个位置待判定?⑥ 可点击路径5 个位置? 5 无法判断

这条链路上任何一段断掉,后面几段的内容 AI 都拿不到。

差异化演示

只探根路径、不做对照探测的实现,在这个站上没读错。差异化演示区因此是空的 —— 这是这个域的性质,不是我们少做了对照。

这一块的作用不是炫技,是让「我拿别的东西查过,没这条」这句话失效:我们先说出那类实现在这里会得出什么、以及它少做了哪一步。

自己复现 → geo-audit mistral.ai --contact you@you.co --naive-only

这份报告不检查:锚点是否腐烂、sitemap、robots 对 AI 爬虫的放行、图片/CSS 资源、事实是否冲突、内容是否过期。理由见文末。

发现(按根因分组)

https://mistral.ai/llms.txt:1 个唯一目标 / 1 个链接实例命中「站内路由缺失」(兜底)。证据:https://mistral.ai/ai-transformation 404,站内没有这个路由

改 1 处 → 修 1 条 · 1 个链接实例 · 最高 HIGH route_missingdefect=route_missingsource_locus=https://mistral.ai/llms.txt|path_prefix=/ai-transformationedges=none

HIGH · AI 通道内部 ④ 索引内链存活 index_link_dead GA-794929591E
llms.txt 里列的 https://mistral.ai/ai-transformation 是死链

去哪儿改

该索引 1 条死 / 2 条活 / 24 条判不了(修复目标:我们没找到明显的正确目标,需人工确认)

证据

目标 https://mistral.ai/ai-transformation 404 text/html 65,536 B
<title>Frontier AI LLMs, assistants, agents, services | Mistral AI</title>
frontier ai llms, assistants, agents, services | mistral ai contact sales menu products industries research developers blog customers company contact sales start building studio build, test, and run ai agents and apps. forge train, align, a
这一条按状态码判定,不需要同域对照。
复现
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://mistral.ai/ai-transformation'

只探根路径、不做对照探测的实现会说:未采纳(没探这个位置)

实际是:索引里列的这条链接死了(1/3 条判死)

AI 顺着你的索引往下爬,爬到的是 404。索引里的死链等于把 AI 引到空页面上。

严重度依据: page_role=ai_channelanchor=(AI 通道内部,无锚文本)anchor_class=(AI 通道内部,无 class)region=ai_channel

不认这条:geo-audit mistral.ai --ignore GA-794929591E

纯文本版(手选复制)
GA-794929591E HIGH AI 通道内部
llms.txt 里列的 https://mistral.ai/ai-transformation 是死链
目标: https://mistral.ai/ai-transformation 404 text/html
这个目标在站上出现 1 次(0 个页面) https://mistral.ai/llms.txt
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://mistral.ai/ai-transformation'
geo-audit mistral.ai --ignore GA-794929591E
这个目标在站上出现 1 次(0 个页面)
  • https://mistral.ai/ai-transformation

待人工确认

下面这些我们判它死了,但静态 HTML 判不了它是否对访客可见。我们打 needs_review 而不是丢弃,也不进首页分子。

本次没有需要人工确认的条目。

下次会先坏在哪 · 结构性脆弱点

每条都挂一个实测先例,并给一条能直接放进 CI 的命令。这一区不是预测,是「这个形状在语料里已经坏过」。

INFO F6
WAF 会把真文件挡成 403/429
判据
本次全部 host 的对照探测都可用(0 个被挡)
为什么危险
被拦截 ≠ 不存在。纯 HTTP 客户端在这类 host 上会把真文件读成「没有」。
实测先例
gusto.com 403、www.pipedrive.com 429
放进 CI 的一条命令
geo-audit mistral.ai --contact you@yourco.com --format json
INFO F8
该 host 对未知路径不返回 404
判据
本次全部 host 对随机路径都返回了非 2xx(状态码可判别)
为什么危险
这种 host 上任何只看状态码的工具都会报 0 死链,那个 0 是假的。
实测先例
developers.pipedrive.com(200 + 24,907 B 兜底页)、docs.gusto.com(302→/)、docs.moderntreasury.com(302→/)、www.minimax.io(200 + 384,052 B)、platform.kimi.ai(200 + 414,072 B)
放进 CI 的一条命令
geo-audit mistral.ai --contact you@yourco.com --format json

我们替你验了什么 · 证据存档

逐位置一行,行数恒等于位置数。每行都带一条可粘贴的 curl。

共 41 行 == 41 个位置。

URL状态码content-type字节对照路径对照返回结论
① 入口发现 https://mistral.ai/ 通过 对照探测 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容
① 入口发现 https://www.mistral.ai/ 通过 对照探测 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容
① 入口发现 https://docs.mistral.ai/ 通过 对照探测 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容
① 入口发现 https://developers.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://dev.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://doc.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://apidoc.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://api-docs.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://apidocs.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://api.mistral.ai/ 不适用 HTTP 404(状态码正确,正文形态不参与判定)
① 入口发现 https://reference.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://platform.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://support.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
① 入口发现 https://help.mistral.ai/ 通过 对照探测 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容
① 入口发现 https://learn.mistral.ai/ 通过 对照探测 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容
① 入口发现 https://kb.mistral.ai/ 无法判断 robots.txt 禁止抓取 /,本位置未评估
② 索引文件真伪 https://mistral.ai/llms.txt 200 text/plain 5,482 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 404 通过 对照探测 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://mistral.ai/llms.txt'
③ 全文通道 https://mistral.ai/llms-full.txt 404 text/html 241,787 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://mistral.ai/llms-full.txt'
② 索引文件真伪 https://www.mistral.ai/llms.txt 200 text/plain 5,482 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 404 通过 对照探测 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://www.mistral.ai/llms.txt'
③ 全文通道 https://www.mistral.ai/llms-full.txt 404 text/html 241,787 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://www.mistral.ai/llms-full.txt'
② 索引文件真伪 https://docs.mistral.ai/llms.txt 200 text/plain 14,658 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 404 通过 对照探测 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://docs.mistral.ai/llms.txt'
③ 全文通道 https://docs.mistral.ai/llms-full.txt 200 text/plain 992,425 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 404 通过 对照探测 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://docs.mistral.ai/llms-full.txt'
② 索引文件真伪 https://help.mistral.ai/llms.txt 200 text/plain 22,196 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 404 通过 对照探测 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://help.mistral.ai/llms.txt'
③ 全文通道 https://help.mistral.ai/llms-full.txt 404 text/html 93,155 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://help.mistral.ai/llms-full.txt'
② 索引文件真伪 https://learn.mistral.ai/llms.txt 404 text/html 158,940 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://learn.mistral.ai/llms.txt'
③ 全文通道 https://learn.mistral.ai/llms-full.txt 404 text/html 158,960 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://learn.mistral.ai/llms-full.txt'
③ 全文通道 https://mistral.ai/docs/llms-full.txt 404 text/html 241,787 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://mistral.ai/docs/llms-full.txt'
③ 全文通道 https://www.mistral.ai/docs/llms-full.txt 404 text/html 241,787 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://www.mistral.ai/docs/llms-full.txt'
③ 全文通道 https://help.mistral.ai/docs/llms-full.txt 404 text/html 93,192 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://help.mistral.ai/docs/llms-full.txt'
② 索引文件真伪 https://learn.mistral.ai/docs/llms.txt 404 text/html 169,402 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://learn.mistral.ai/docs/llms.txt'
③ 全文通道 https://learn.mistral.ai/docs/llms-full.txt 404 text/html 169,422 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://learn.mistral.ai/docs/llms-full.txt'
② 索引文件真伪 https://learn.mistral.ai/.well-known/llms.txt 404 text/html 68,993 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 404 不适用 HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://learn.mistral.ai/.well-known/llms.txt'
④ 索引内链存活 https://mistral.ai/llms.txt 200 text/plain 5,482 读错 27 条内链:2 活 / 1 死 / 24 判不了
curl
curl -sSL -A 'geo-audit/0.1.0 (+https://github.com/wangtoone/geo-audit; contact: 152046194+wangtoone@users.noreply.github.com)' 'https://mistral.ai/llms.txt'
④ 索引内链存活 https://docs.mistral.ai/llms.txt 无法判断 75 条内链待验证
④ 索引内链存活 https://help.mistral.ai/llms.txt 无法判断 129 条内链待验证
⑤ .md 通道 https://mistral.ai/ 无法判断 待判定
⑥ 可点击路径 https://www.mistral.ai/ 无法判断 待抓取
⑥ 可点击路径 https://www.mistral.ai/pricing 无法判断 待抓取
⑥ 可点击路径 https://www.mistral.ai/changelog 无法判断 待抓取
⑥ 可点击路径 https://docs.mistral.ai/ 无法判断 待抓取
⑥ 可点击路径 https://help.mistral.ai/ 无法判断 待抓取

别人的工具会怎么误判你

三种可自动检出的误判形态。这一块是零发现报告真正的付费点:你拿到的 0 与别处拿到的 0,来源不一样。

  1. 你的真文件会被读成「没有」:WAF / 限流会把纯 HTTP 客户端拦掉(实测 gusto.com 403、www.pipedrive.com 429);真文件在子域或 /docs 下而根路径 404 或软 404(实测 minimax、moonshot、siliconflow、onfleet、canvasmedical、ecwid 六家)。
  2. 你的 0 死链会被读成「有死链」:站上有 Cloudflare 的 /cdn-cgi/l/email-protection 诱饵 href、有 example.com 占位、有 Alpine/Vue 的 :href、有 {templateID} 这类模板占位。实测:这类噪声能让死链数从 25 虚报成 42(+68%)。
  3. 你的 0 死链其实是假的 0:你的站对未知路径返回 200 或 302 而不是 404(实测 developers.pipedrive.com 的 24,907 B 兜底页、docs.gusto.com 与 docs.moderntreasury.com 的 302→首页、platform.kimi.ai 的 414,072 B Quickstart 页)。这种站上任何只看状态码的死链工具都会报 0 死链,那个 0 是假的。我们是用正文/骨架比对得出的 0,所以我们的 0 是真的。

裸域 / www 双向探测

mistral.ai
ok · ok_control_discriminates
www.mistral.ai
ok · ok_control_discriminates
结论
both_ok single_case

证据强度 single_case:全语料只有一例(brevo 的裸域返回 Vercel 的纯文本 DEPLOYMENT_NOT_FOUND,而 www 与 developers 子域都正常)。n=1 不够格进首页计数,所以这一区单列。

被去噪排除的链接

逐条留痕,带 rule_id。实测教训:五个批次排除了 /cdn-cgi/l/email-protection、另几个批次没排 —— 同一个东西两套口径,所以这里必须逐条列。

本次没有被去噪排除的链接。

朴素对照全表

同一批已抓响应上的两个读数:左边只用「跟完跳转的最终状态码」推,右边是我们的判定。朴素侧不额外发一个请求 —— 它是换算器,不是第二次扫描。

只有 ① 入口发现 / ② 索引文件真伪 / ③ 全文通道 三段的位置进这张表;④⑤⑥ 的差异化走下面那行死链口径对比。

有分歧 0 条。

探测位置朴素方法那种实现会说实际是有分歧多打的请求方向
https://mistral.ai/ 不在朴素探测集内 它往这个 host 打过请求(只打了两条根路径) 对照探测 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容 n 1 一致
https://www.mistral.ai/ 不在朴素探测集内 它往这个 host 打过请求(只打了两条根路径) 对照探测 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容 n 1 一致
https://docs.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 对照探测 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容 n 2 一致
https://developers.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://dev.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://doc.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://apidoc.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://api-docs.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://apidocs.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://api.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 HTTP 404(状态码正确,正文形态不参与判定) n 2 一致
https://reference.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://platform.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://support.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://help.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 对照探测 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容 n 2 一致
https://learn.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 对照探测 https://learn.mistral.ai/geo-audit-probe-c05d3f140a3ffdc0e4720e84 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容 n 2 一致
https://kb.mistral.ai/ 不在朴素探测集内 它从没往这个 host 打过请求 robots.txt 禁止抓取 /,本位置未评估 n 2 一致
https://mistral.ai/llms.txt GET https://mistral.ai/llms.txt,跟随跳转,只看最终状态码 已采纳(200) 对照探测 https://mistral.ai/geo-audit-probe-31d2d31813b7a104b2b13d8f 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致 n 1 一致
https://mistral.ai/llms-full.txt GET https://mistral.ai/llms-full.txt,跟随跳转,只看最终状态码 未采纳(404) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 1 一致
https://www.mistral.ai/llms.txt GET https://www.mistral.ai/llms.txt,跟随跳转,只看最终状态码 已采纳(200) 对照探测 https://www.mistral.ai/geo-audit-probe-76133a235f59a35951952a95 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致 n 1 一致
https://www.mistral.ai/llms-full.txt GET https://www.mistral.ai/llms-full.txt,跟随跳转,只看最终状态码 未采纳(404) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 1 一致
https://docs.mistral.ai/llms.txt 不在朴素探测集内 未采纳(没探这个位置) 对照探测 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://docs.mistral.ai/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) 对照探测 https://docs.mistral.ai/geo-audit-probe-992b27be3168b427f51c6dee 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://help.mistral.ai/llms.txt 不在朴素探测集内 未采纳(没探这个位置) 对照探测 https://help.mistral.ai/geo-audit-probe-9c8656eee32fc4d60ae00f6a 返回 HTTP 404 / text/html,与本响应可区分,判为真实内容;用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://help.mistral.ai/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://learn.mistral.ai/llms.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://learn.mistral.ai/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://mistral.ai/docs/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://www.mistral.ai/docs/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 2 一致
https://help.mistral.ai/docs/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 3 一致
https://learn.mistral.ai/docs/llms.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 3 一致
https://learn.mistral.ai/docs/llms-full.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 3 一致
https://learn.mistral.ai/.well-known/llms.txt 不在朴素探测集内 未采纳(没探这个位置) HTTP 404(状态码正确,正文形态不参与判定);用 Accept: */* 再量一次,状态码、正文类型都一致 n 3 一致

死链口径对比:只看首跳状态码(>= 400 即判死)会数出 0 条;我们经去噪与正文比对后是 0 条链接实例。

覆盖披露

位置数 41 · 抓到的页面 0 个 · HTTP 请求 141 / 上限 120(其中不同 URL 76 个;差额是跳转每一跳、robots.txt 与重试)

链接账本:抽取 0 = 排除 0 + 待人工 0 + 已验证 0 + 无法判断 0 + 被封顶截掉 0

本次未触发抽样。

robots.txt 的 Disallow 我们遵守了:命中的路径零请求,判「无法判断(robots_disallowed)」。「我们没被允许看」是真话。

LLM 调用 0 次(这个工具零 LLM、零 API key,所以它恒为 0)。

查了什么

不查什么(摘要,理由见「方法」)

这些地方我们想看但没看到

位置 原因码 实际是 补救办法
① 入口发现 · https://developers.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://dev.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://doc.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://apidoc.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://api-docs.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://apidocs.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://reference.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://platform.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://support.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。
① 入口发现 · https://kb.mistral.ai/ robots_disallowed 这个 host 解析通了、根路径也请求了,但判不了(robots_disallowed),于是它的 AI 路径(llms.txt / llms-full.txt / .md 通道)一条都没探,robots.txt 与 sitemap.xml 也没读。这不是「这个 host 没问题」,是「我们没能看」。 你的 robots.txt 禁止抓这个路径,我们遵守了。要检查请加 --ignore-robots。「我们没被允许看」是真话,「这里没问题」是假话。

方法,与不检查什么

这个工具零 LLM、零 API key。判定全部来自 HTTP 观测 + 同域随机路径对照探测 + 正文/骨架归一化比对。下面两张表是范围本身,不是免责声明。

首页大字只用位置数,条目数单列 —— 位置数回答「链路哪几段走不通」,条目数回答「有几条要改」,两个数不能互相顶替。

「未能评估」与「没问题」在这份报告里严格分开:Status.UNKNOWN 永不折算成通过。实测依据:help.spoton.com 与 docs.lawmatics.com 的文档站是纯 JS SPA,它们的「零发现」是抓取能力问题,不是站点干净。

报告里凡提到「那类实现会读错」,措辞一律是「只探根路径、不做对照探测的实现」——我们没有拿任何一款现成产品跑过对照,所以不会替它们下结论。

做什么

实测理由
C3 · AI 检索链路体检llms.txt / llms-full.txt 是真文件还是软 404、全文通道是不是索引的字节副本、索引里列的链接活着几条、「任意页面加 .md」这个约定兑现了没有。每一条都配同域随机路径对照探测。
C1 · 人和爬虫共用的可点击路径seed 页上抽取的 <a href>,点了就 404 的那些。带 23 条去噪规则与两级根因归并。

明确不做,以及为什么(引实测,不重新论证)

实测理由
过期信号整类(含附录)通用旧年份正则:batch1 扫出 134 条命中、真信号 0;CN 批扫出 296 处、真信号 2。两批独立同结论。而且还高假阴 —— snipcart 的真信号 「© All rights reserved, Snipcart inc. 2023」被自家正则的 inc. 句点截断漏掉。三条收窄规则没有命中率、没有假阳性率、没有回归用例,三样全无。
事实冲突(套餐名枚举 / 同页矛盾 / 档位↔功能映射)8/72、6/72 这些数是人工逐域推出来的,自动化版本从来没跑过,这一整块的假阳性率是空的。且「属性对」这个单位实测伸缩 15 倍(bigcommerce 把一整张套餐枚举记成 1 对,baseten 把同型 GPU 表记成 17 对,together 14 个模型记成 37 对)。
锚点腐烂(#xxx 在目标页不存在)本轮未做系统性检测,只偶得 1 例(gusto #minimum-api-version)。命中率未知。不做的理由是实现成本,不是命中率低。
通用定价页↔文档数值比对15 个域完全没有可比面(必然 0);单位不可定义;20% 的冲突以 llms.txt 为一侧(已否决功能)。
定期扫描 / 健康分订阅中位数落在 1–2 条区间,73.6% 的站报不出 3 条。注意:「两次扫描之间没有新增」是无证据的时序断言(全部数据是单一时间点横截面),准确表述是「我们没有纵向数据,无法承诺订阅价值」。
托管 web 版(输入任意域名就发请求的公开端点)它会让 --contact 这条合规约束当场失效,且等于开放抓取代理。
浏览器渲染 / Playwrightuvx 一行可跑是硬需求;Playwright 要另外 playwright install(约 300 MB)。已量化的代价:确认的 JS 盲区只有 help.spoton.com 与 docs.lawmatics.com = 2/72 = 2.8%。这两家判 UNKNOWN,绝不判「干净」。
--serve 本地表单页HTTP server 是纯 scope creep + 安全面。非命令行用户走 GitHub Action。