fix(a11y,seo,reliability): schema id, skip link, email error logging#5
Merged
Merged
Conversation
- jason-colapietro: Person @id moved from app.suedeai.ai/founder#person to suedeai.org/jason-colapietro/#person so the entity node lives at the SEO-first site it's published on. Removed duplicate sameAs entry and added suede-ai.github.io as a cross-link. - index.html + styles.css: added skip-to-main-content link plus a :focus-visible outline ring so keyboard users have a visible focus indicator over the translucent dark header. - api/contact.js + api/book.js: log Resend send failures instead of swallowing them. A failed email after a successful Supabase insert is now visible in Vercel logs. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This was referenced May 29, 2026
JasonColapietro
added a commit
that referenced
this pull request
May 30, 2026
* seo: Jason Colapietro author/entity signals + de-orphan founder page + investor entity graph - 10 topical pages: visible 'By Jason Colapietro' byline + footer/nav link to /jason-colapietro/, author Person JSON-LD (url + verified sameAs), author + twitter:site/creator meta, og:image dims - dedupe triplicated og/twitter meta blocks (creator-ownership, agentic-commerce, ai-voice/likeness-protection, human-authenticity-layer, book) - book: author node with url+sameAs, ASIN identifier (B0GD5FX6N6) - investors: WebPage @graph refs (#website/#organization), author Person, og:site_name Suede->Suede Labs, twitter handles, og dims, sitemap link, investor-intent copy, further-reading links - investors/thanks: header + footer + BreadcrumbList (keeps noindex) - llms.txt + contact: link the investor brief - HOLDS index.html + jason-colapietro/index.html (open PRs #3/#5) * seo: add Johnny Suede alias to bylines + author schema (alternateName + visible)
…ail-logging # Conflicts: # jason-colapietro/index.html
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three independent QA fixes for suedeai.org:
jason-colapietro/index.htmlhad the Person@idpointing atapp.suedeai.ai/founder#person, anchoring the entity to an app subdomain instead of the SEO-first site where the schema is published. Moved tosuedeai.org/jason-colapietro/#person. Also removed a duplicatesameAsentry and addedsuede-ai.github.ioas a cross-link.<header>and a:focus-visibleoutline ring so keyboard users get a visible focus indicator over the translucent dark header. WCAG 2.4.3 + 2.4.11.api/contact.jsandapi/book.jswere callingawait sendEmail(...)and discarding the result. A failed Resend call after a successful Supabase insert was invisible — the user saw a thanks page but never got the email. Now logs the failure with status + payload so it's visible in Vercel logs.Test plan
/jason-colapietro/; JSON-LD@idishttps://suedeai.org/jason-colapietro/#person;sameAshas no duplicatesCONTACT_NOTIFY_TOunset; success response returns; Vercel function log shows[contact] email notification failed(or alternatively just no log if env not set — verify behavior)🤖 Generated with Claude Code