1.4.0
Astro and edge SEO, and a freshness process that CI enforces
Two new platform reference files, a last_verified date on every skill file, and a monthly re-verification issue — plus a long list of claims that turned out to be wrong.
Published
Until this release the skill was organised by topic only. That works until the question is platform-specific, at which point the answer lives in the gap between two files. This release adds a second axis.
Added
astro-seo.md—client:*directives mapped to their INP and LCP costs,server:deferserver islands, canonical and Open Graph generation fromAstro.site+Astro.url, JSON-LD generated from Content Collections schemas,@astrojs/sitemapincluding multilingual sitemaps with hreflang, view transitions and their analytics pitfalls, and the SEO-affecting breaking changes in Astro 6 and 7.edge-seo.md—_redirectsdesign and limits,_headerswithX-Robots-Tagand cache strategy, the static-asset vs. Worker-code blind spot, dynamic sitemaps from D1/KV with edge caching, crawler verification by published IP ranges and Web Bot Auth, HTMLRewriter metadata rewriting, and crawl budget.last_verifiedfrontmatter on every skill file, enforced by CI.docs/research-notes.md— the verification log behind every factual claim, with sources.- A scheduled workflow that opens a freshness-check issue on the 1st of each month.
Changed
- The two skill descriptions were near-identical, so either could fire on any request.
English input now selects
seo-mastery, Japanese input selectsseo-mastery-jp. - README positioning no longer claims freshness is “guaranteed”. What is guaranteed is the process and the date stamp.
Fixed
- AI search eligibility was incomplete. The skill said indexability plus snippet eligibility were the only requirements for AI Overviews. Google’s generative AI optimization guide adds a third: the site must be included in Search generative AI features in Search Console.
- Article
headlinehas no 110-character limit. Google removed it from the documentation in January 2023. The claim had been presented as a requirement since 1.0.0. _headersrules accumulate rather than override, joining repeated header names with a comma. The per-crawlerX-Robots-Tagexample would have shipped one combined header that Google does not document parsing._redirectsplaceholders do match dots inside the path, so/:slugalso matchesreport.pdf. The previous wording made such rules look safe for file URLs.- Google ignores
<priority>and<changefreq>;lastmodis only used when consistently accurate. Both are now stated intechnical-seo.md.
The full list — including a second review pass that found the dynamic sitemap publishing 404s for hierarchical slugs — is in the CHANGELOG.