SEO scoreboard reconcile + Phase 8 (Agent Readiness) added; HowTo + @id linkage shipped
What was done
items.json — reconcile + Phase 8 + new items
Marked done (already-shipped work that wasn’t credited):
service-schema— Service schema has been auto-emitted on every/services/*page and every/service-areas/<county>/<city>/page since 2026-04-26 (perBaseLayout.astro:128–160); enriched 2026-05-07 to clear Rich Results warnings. Updated evidence string to reflect this.
New items added:
- Phase 2:
article-schema-lui(done) — Article schema auto-emit on/dev-iq/land-use-intelligence/<slug>/pages, landed 2026-05-11 with the eagle-cap-compliance article. - Phase 6:
agent-readiness-tooling(done) — formal adoption ofisitagentready.comas the canonical agent-readiness audit tool. Tightened the phase description to mention both audit tools (10 buyer-intent queries + isitagentready.com). - Phase 6:
schema-validationwas already in items.json; left pending. - New Phase 8 — Agent Readiness (10 items): captures the agent-readiness work shipped 2026-05-05 across three devlog entries. 8 done, 2 pending (isitagentready.com baseline target 2026-05-26; monthly re-runs ongoing):
robots-content-signal— Content-Signal directive in/robots.txtagent-skills-index—/.well-known/agent-skills/discovery index + JSON Schema + 4 skill.mddocsmarkdown-twins— 5 hand-curated landing-page twinsmarkdown-alternate-link—<link rel="alternate" type="text/markdown">in BaseLayoutservice-desc-link-header— server-levelLink: rel="service-desc"(RFC 8288 / RFC 8631)accept-md-negotiation—Accept: text/markdowncontent negotiation at nginxwellknown-disclosure-stubs— OAuth AS, OIDC, OAuth-PR, MCP Server Card empty-array stubsagent-services-status—/.well-known/agent-services-status.mdhuman-readable explainerisitagentready-baseline— pending; target 2026-05-26 per memoryfeedback_visibility_retest_cadence(≥3 weeks after deploy)isitagentready-monthly— pending recurring
Bumped lastUpdated to 2026-05-11.
Lane B schema work shipped
howto-process (Phase 2) — added HowTo JSON-LD to src/pages/dev-iq/our-process.astro. The 9 phases serialize as HowToStep entries; each step’s itemListElement carries the bullet items as HowToDirection entries. Each phase article gained an id={phase-NN} so step URLs deep-link into the page (e.g. /dev-iq/our-process/#phase-03). totalTime: P3Y reflects typical project duration. Verified in dist/dev-iq/our-process/index.html — schema present with 9 HowToStep entries.
Per memory project_bailey_scope, phases 2 (Land Control), 6 (Construction), and 9 (Vertical) are listed in the page as part of the developer’s full process — Bailey’s HowTo schema describes the project lifecycle not “what Bailey does,” which is consistent with the page framing. The schema does not assert Bailey performs every step.
id-linking (Phase 2) — wired @id refs so schema entities cross-link cleanly:
src/pages/index.astro— homepage WebSite gets@id: #websiteand linkspublisher: { @id: #org }; ProfessionalService gets@id: #org(the canonical organization entity).src/layouts/BaseLayout.astro—providerNode(nested ProfessionalService on every Service schema) gets@id: #orgso it unifies with the homepage entity. Auto-emitted Service schemas get@id: ${canonical}#service. Auto-emitted LUI Article schemas get@id: ${canonical}#articleand the publisher block references@id: #org.src/pages/dev-iq/ai-iq/getting-found-by-ai.astro— Article gets@id: ${page-url}#article; author and publisher blocks reference@id: #org.
Person-page entities will inherit linkage when those pages ship (still pending, target 2026-06-30).
Build verification
npm run build clean (one transient OneDrive EPERM retry — per memory reference_astro_onedrive_eperm, not a code bug). Spot-checked dist:
dist/index.htmlcarries#websiteand#org@ids and the WebSite→ProfessionalService publisher link.dist/service-areas/ada-county/boise/index.htmlService schema has its own@idandproviderreferences#org.dist/dev-iq/our-process/index.htmlHowTo schema has 9 HowToStep entries.dist/dev-iq/ai-iq/getting-found-by-ai/index.htmlrenders all 8 phases including Phase 8; progress card now reads 41 of 70 items complete (was 28 of 60); isitagentready.com appears in the Phase 6 description and as evidence on the new tooling item.
Why
Ryan asked (.tmp/0006_26_05_11_update_seo/ask.md) for three things: mark already-done items as done, identify quick wins, and add isitagentready.com plus the agent-readiness work as completed. The plan is at .tmp/0006_26_05_11_update_seo/PLAN.md. The agent-readiness stream (2026-05-05) was substantial work that the public scoreboard was giving zero credit for — specifically the eight infrastructure items now in Phase 8. Underrepresenting completed work both understates Bailey’s authority position to AI assistants reading the scoreboard and demotivates the trickle-don’t-dump cadence by making the slope look flatter than it is.
The two Phase 8 pending items (isitagentready-baseline, isitagentready-monthly) honor memory feedback_visibility_retest_cadence: 2026-05-26 is the earliest defensible re-test date for the agent-readiness work shipped 2026-05-05.
Files affected
Created
.tmp/0006_26_05_11_update_seo/PLAN.md— full plan with audit, lane breakdown, ship order, open questionssrc/content/devlog/2026-05-11-seo-plan-reconcile-and-agent-readiness-phase.md(this entry)
Modified
src/content/seo-plan/items.json—lastUpdatedbumped;service-schema→ done;article-schema-luiadded to Phase 2;agent-readiness-toolingadded to Phase 6;howto-process→ done;id-linking→ done; new Phase 8 (10 items, 8 done) appended; Phase 6 description tightenedsrc/pages/dev-iq/our-process.astro— added HowTo JSON-LD; added per-phaseidanchorssrc/pages/index.astro— added@id: #websiteto WebSite; added@id: #orgto ProfessionalService; added publisher cross-link on WebSitesrc/layouts/BaseLayout.astro— added@id: #orgto providerNode; added@id: ${canonical}#serviceto auto-emitted Service schemas; added@id: ${canonical}#articleto auto-emitted LUI Article schemas; added@id: #orgto LUI Article publishersrc/pages/dev-iq/ai-iq/getting-found-by-ai.astro— added@id: #articleto Article schema; added@id: #orgto author + publisher blocks
Untouched (deliberate)
src/pages/index.astrobody content (homepage FAQ deferred — see “Queued for Ryan”)CLAUDE.md— gated per “Never without approval”
Queued for Ryan
Lane B carryover — homepage FAQ (homepage-faq). Held out of this drop. Google’s FAQPage rich-results guidance requires the schema to mirror visible Q&A content on the page. Adding 3 visible Q&As to the homepage is a copy + IA decision (where in the page flow, what tone, what 3 questions matter most for buyer intent — the AI-SEO Q&As on /dev-iq/ai-iq/getting-found-by-ai/ are about Bailey’s methodology, not Bailey’s services, and aren’t the right copy for the homepage). Per CLAUDE.md “Queue for Ryan: new module copy”. Recommendation: 3 Q&As covering “What does Bailey Engineering do?”, “Where does Bailey work?”, “How long has Bailey been in business?” — entity-defining, no Bailey-numbers risk. Drop the visible block above the talent-CTA section and let me wire the schema.
Lane C — five-item bundle for one Ryan sitting (~45 min total):
bing-wmt(~5 min): Bing Webmaster Tools → “Import from Google Search Console” → confirm sitemap.gsc-alerts(~2 min): GSC → Settings → Email preferences → enable indexing/security/manual-actions/mobile alerts.rich-results-validate(~10 min): Paste 3 URLs into Google’s Rich Results Test (homepage + one/services/<family>/+ one/service-areas/<county>/<city>/), screenshot the clean runs.apple-business-connect(~10 min): Sign in with Apple ID, create the business profile using canonical NAP fromsrc/data/site.ts.linkedin-company-fill(~15 min): LinkedIn admin → fill industry (Civil Engineering), founded year (2006), specialties, address, hours.
After Ryan completes any of these, ping me to update items.json and re-bump lastUpdated.
When to re-test
Per memory feedback_visibility_retest_cadence:
- AI-visibility 10-query re-test — earliest 2026-06-01 (≥3 weeks after schema/content/AI.IQ deploys).
- isitagentready.com baseline — earliest 2026-05-26 (≥3 weeks after agent-readiness deploys).
Earlier reads create false-negative anxiety; AI crawlers need ~2 weeks to surface new infrastructure.
What was deliberately NOT done
- Re-running the 10 AI-visibility queries —
kpiQueriesPassedremains at 2. - Running isitagentready.com — that’s the new
isitagentready-baselineitem, target 2026-05-26. homepage-faqschema-only ship — Google now expects matching visible content.person-schema— CLAUDE.md flags as queue-for-Ryan; not autonomous.- All Phase 3/4/5/7 items requiring copy, paid actions, or off-domain work.
- Deploy step — items.json + schema changes ride on the next normal deploy.