forked from bchanot/claude
Axis was defined "backlinks, mentions, authority" (10% local / 15% national of the FULL score) but only mentions have a data source (STEP 6 web_search "<name>" -site:<domain>). Backlinks and authority have no index, no API — the agent had to invent 2/3 of the number, and that number reaches a client via /client-handover. - Axis label names what is measured + points at §14. - Off-page axis note: score mentions ONLY; never price in unmeasured sub-components; a low mention count is NOT evidence of a weak backlink profile. Mandatory verbatim §14 line naming the gap + the nearest free source (Common Crawl) so the omission is legible, not silent. - LOCAL N/A label: was `N/A — requires FULL audit`, a promise FULL cannot keep for backlinks. Now states FULL covers brand mentions only. Weights deliberately unchanged: re-deriving now and again when a backlink source lands would churn historical scores twice. Revisit when the axis widens back (Common Crawl, phase 5). Note: initial plan was to mark the axis N/A in FULL and redistribute the weight. Reading the real spec (seo-analyzer.md:622 + STEP 6) showed that over-corrects — it discards the mentions data, which IS gathered. Narrowed the definition instead; composes with the Common Crawl work later. Verified: make test 35 GREEN / 0 RED.