feat(seo): reconcile URLs and author page-one redirects
This commit is contained in:
1 parent
8646792d46
commit
8192ea71c4
11 files changed
+689
-77
No files matched your search
@@ -3,10 +3,10 @@
|
||||
**Last updated:** October 10, 2026 (UTC)
|
||||
**Repository:** `AIAMarketing/azinstitute4autism.com`
|
||||
**Working branch:** `faithful-astro-migration`
|
||||
**Last accepted implementation:** Phase 6B.3 — Author Archives and Linked Bylines
|
||||
**Verified pre-commit parent:** `0957c06a18726a01531f5b46a1d74bc67aa58f60`
|
||||
**Last accepted implementation:** Phase 6B.4 — URL and SEO Reconciliation
|
||||
**Verified pre-commit parent:** `8646792d46a8a117ef617f5dd2582c2550b45d19`
|
||||
**Implementation checkpoint:** the commit containing this handoff update; obtain its actual SHA from Git history
|
||||
**Next planned milestone:** Phase 6B.4 — URL and SEO Reconciliation
|
||||
**Next planned milestone:** Phase 6B.5 — Multilingual, RTL, Accessibility, and Performance Acceptance
|
||||
|
||||
> This is a short, continually updated orientation document, not a replacement for
|
||||
> the code, accepted project instructions, or detailed migration evidence.
|
||||
@@ -39,43 +39,37 @@
|
||||
containing this handoff, with pre-commit parent
|
||||
`0957c06a18726a01531f5b46a1d74bc67aa58f60`.** The file intentionally does
|
||||
not invent the containing commit's SHA; verify it from Git history.
|
||||
- **Phase 6B.4 URL and SEO reconciliation: accepted in the checkpoint containing
|
||||
this handoff, with pre-commit parent
|
||||
`8646792d46a8a117ef617f5dd2582c2550b45d19`.** The file intentionally does
|
||||
not invent the containing commit's SHA; verify it from Git history.
|
||||
|
||||
Other earlier milestones and acceptance details are recorded in
|
||||
`www/reports/migration-summary.md`. Keep phase checkpoints separate.
|
||||
|
||||
### Phase 6B.3 accepted behavior
|
||||
### Phase 6B.4 accepted behavior
|
||||
|
||||
- **65 eligible Library posts:** 46 English, 12 Spanish, seven Arabic.
|
||||
Author archive pagination is 10/10/10/10/6 English, 10/2 Spanish, and seven
|
||||
Arabic, producing eight routes without a fabricated English page 6.
|
||||
- Generated author routes are English `/library/author/rula-diab` plus pages
|
||||
2–5, Spanish `/es/library/author/rula-diab` plus page 2, and Arabic
|
||||
`/ar/library/author/rula-diab`.
|
||||
- Exact locale/slug author resolution now supplies archives, Library cards,
|
||||
full-post bylines, catalog metadata, and BlogPosting identity. Published
|
||||
localized headings and biographies are stored in the author collection; the
|
||||
verified 755-pixel portrait is self-hosted. Underlying Person identity stays
|
||||
separate from credentialed presentation text and from Team membership.
|
||||
- Archive bylines link to the correct locale route. Author archives remain
|
||||
self-canonical, `noindex,follow`, sitemap-excluded, and hreflang-excluded in
|
||||
indexing-enabled builds. Existing Library roots, search, pagination,
|
||||
syndicated exceptions, and article schema remain intact.
|
||||
- Automated acceptance: 31 Library, 34 SEO, 33 publication, and 20 Markdown
|
||||
tests; 39 headless Chromium checks; clean route/link/image/blog audits; 110
|
||||
HTML routes, 97 indexing-enabled sitemap URLs, and 174 hreflang links across
|
||||
53 routes. The final staging build has all 110 pages `noindex,nofollow`, an
|
||||
empty sitemap, and no hreflang.
|
||||
- The user separately completed the Phase 6B.3 manual browser checklist for all
|
||||
three languages, first/final pages, biography/portrait, bylines, mobile, RTL,
|
||||
keyboard focus, and existing Library behavior. No screen-reader test,
|
||||
professional language approval, or organizational credential verification
|
||||
is claimed.
|
||||
- Spanish and Arabic biographies/headings remain ready for human language
|
||||
review; public biographical, credential, role, and employment claims remain
|
||||
ready for organizational review if required.
|
||||
- Phase 6B.2's three Library `/page/1` redirect definitions remain repository
|
||||
artifacts only. They have not been activated on deployed staging or
|
||||
production hosts.
|
||||
- The repository contains nine validated 301 definitions: three legacy service
|
||||
aliases, three Library `/page/1` aliases, and three author `/page/1` aliases.
|
||||
An isolated nginx instance verified every destination and final target. None
|
||||
has been activated on a deployed host.
|
||||
- Schema-2 offline reconciliation records 133 route/query dispositions using
|
||||
70 previously saved production requests. It distinguishes inherited public
|
||||
observations, current generated output, and repository-only redirects.
|
||||
- The publication baseline remains 110 generated HTML routes, eight author
|
||||
routes, 97 indexing-enabled sitemap URLs, and 174 hreflang links on 53
|
||||
routes. Canonical, robots, sitemap, translation, syndicated-article, and
|
||||
structured-data policies remain unchanged.
|
||||
- Automated acceptance includes zero Astro diagnostics; 33 Library, 34 SEO,
|
||||
33 publication, 20 Markdown, and 10 route tests; both build modes; clean
|
||||
route/link/image/blog audits; isolated nginx checks; and representative
|
||||
desktop/mobile headless Chromium checks. The final staging build has all 110
|
||||
pages `noindex,nofollow`, an empty sitemap, and no hreflang.
|
||||
- The user's staging inspection found five representative no-slash URLs
|
||||
redirecting to slash forms. `/search` also showed an HTTPS-to-HTTP-to-HTTPS
|
||||
chain. The user accepted deferral of this temporary Docker/nginx behavior;
|
||||
correct slashless serving and redirect activation must be separately
|
||||
implemented and verified on the eventual Contabo VPS before cutover.
|
||||
- No production deployment or cutover has been authorized.
|
||||
|
||||
## Ratified Library rules to retain
|
||||
@@ -99,13 +93,14 @@ Other earlier milestones and acceptance details are recorded in
|
||||
- Do not manufacture missing content or redirect distinct later pagination
|
||||
pages to earlier pages.
|
||||
|
||||
## Next: Phase 6B.4 — URL and SEO Reconciliation
|
||||
## Next: Phase 6B.5 — Multilingual, RTL, Accessibility, and Performance Acceptance
|
||||
|
||||
Prepare a bounded, separately reviewed Phase 6B.4 kickoff from the latest
|
||||
committed source. Reconcile URL, canonical, sitemap, and redirect behavior,
|
||||
including the three author `/page/1` aliases. Do not activate repository
|
||||
redirects on deployed hosts without a separate approval gate. Phase 6B.5 then
|
||||
handles multilingual, RTL, accessibility, and performance acceptance.
|
||||
Address the three accepted multilingual defects through a bounded, separately
|
||||
reviewed milestone: Arabic footer contact direction; the high-priority
|
||||
author-archive language selector; and locale-appropriate desktop, mobile, and
|
||||
footer destinations. Visitor navigation may use explicitly validated locale
|
||||
counterparts while author SEO hreflang remains disabled unless separately
|
||||
approved.
|
||||
|
||||
## Outstanding blockers and subsequent milestones
|
||||
|
||||
@@ -113,9 +108,11 @@ handles multilingual, RTL, accessibility, and performance acceptance.
|
||||
source before `/library/page/6` and
|
||||
`/library/author/rula-diab/page/6` can be accepted for cutover.
|
||||
Do not generate empty substitutes or misleading redirects.
|
||||
2. **Phase 6B.4:** Complete URL, canonical, sitemap, and redirect reconciliation,
|
||||
including author first-page aliases; host activation requires separate
|
||||
approval.
|
||||
2. **Hosting gate:** The repository's nine redirects are not active on deployed
|
||||
hosts. The eventual Contabo nginx configuration must eliminate the observed
|
||||
trailing-slash and HTTPS-to-HTTP chain, preserve queries and locales,
|
||||
implement approved aliases, and verify real HTTP 301/404 behavior before
|
||||
cutover.
|
||||
3. **Phase 6B.5:** Multilingual, RTL, accessibility, and performance acceptance.
|
||||
This includes human review of Spanish/Arabic content and three newly observed
|
||||
defects: Arabic footer contact direction, an apparently unresponsive Arabic
|
||||
@@ -125,14 +122,19 @@ handles multilingual, RTL, accessibility, and performance acceptance.
|
||||
but those are hypotheses requiring targeted verification. Visitor language
|
||||
navigation may use explicitly validated published counterparts without
|
||||
enabling author hreflang, indexing, or sitemap participation.
|
||||
4. **Later phases:** Other content and language reconciliation (including
|
||||
Spanish and Arabic operational text and author biographies still require
|
||||
human language review; public author claims may require organizational
|
||||
approval.
|
||||
4. **Author SEO decision:** Author archive indexing, sitemap participation, and
|
||||
hreflang remain deferred human-decision gates.
|
||||
5. **Later phases:** Other content and language reconciliation (including
|
||||
missing Spanish privacy content), visual/accessibility review, operational
|
||||
integration decisions, and cutover.
|
||||
5. Site remains primarily live on HubSpot; production-origin freshness is not
|
||||
6. Site remains primarily live on HubSpot; production-origin freshness is not
|
||||
proved by cached prerender responses. Stage locally or at
|
||||
`aia.web3app.dev` without activating production forms, analytics,
|
||||
advertising tags, or new PHI flows.
|
||||
6. AIA general ABA ages are **18 months through 8 years**; narrower programs
|
||||
7. AIA general ABA ages are **18 months through 8 years**; narrower programs
|
||||
have their own eligibility and should not be conflated.
|
||||
|
||||
## Working protocol and handoff maintenance
|
||||
|
||||
Reference in new issue
Block a user