fix: correct contact email spelling on public pages (#249) #250

Merged
forgejo_admin merged 1 commit from 249-fix-contact-email-spelling-westsidebaske into main 2026-04-14 15:39:18 +00:00
Contributor

Summary

Replaces westsidebasketball@gmail.comwestsidebasktball@gmail.com (no "e" after "bask") across 13 occurrences in 9 public route files. The misspelled address is the real Gmail account wired to Gmail OAuth, Keycloak SMTP, and Marcus's iOS Mail. The "correct-looking" spelling is not a real mailbox — user replies silently misroute.

Closes #249

Changes

  • src/routes/(public)/+layout.svelte — footer contact link
  • src/routes/(public)/+page.svelte — home page contact + CTA
  • src/routes/(public)/about/+page.svelte — contact line + CTA + Coach Marcus link
  • src/routes/(public)/staff/+page.svelte — sponsorship CTA + contact CTA
  • src/routes/(public)/teams/+page.svelte — team inquiry link
  • src/routes/(public)/sponsors/+page.svelte — sponsorship CTA
  • src/routes/(public)/gear/+page.svelte — gear inquiry link
  • src/routes/(public)/schedule/+page.svelte — schedule contact
  • src/routes/(public)/tryouts/+page.svelte — tryouts contact

Pure find-replace. No logic, style, or component structure changes.

Test Plan

  • grep -r "westsidebasketball@gmail.com" src/ → 0 matches
  • grep -r "westsidebasktball@gmail.com" src/ → 13 matches (same count, all corrected)
  • npm run build → ✓ clean (SvelteKit adapter-static, 3.17s)
  • After deploy: visually confirm footer + About + Staff + Gear CTAs render correct address
  • After deploy: click a mailto link and confirm the compose window addresses the real inbox

Review Checklist

  • Scope matches issue #249 (public routes only, no backend changes)
  • No changes outside src/routes/(public)/ except the layout (which is correctly scoped to the public group)
  • Build passes locally
  • Commit message references issue
  • QA: confirm no other places in the repo still display the misspelled address (admin/app routes were intentionally out of scope for this ticket — if any are found, spin a follow-up issue)
  • Memory: reference_westside_email.md — canonical spelling + systems that depend on it
  • Memory: feedback_gmail_oauth_not_smtp.md — Gmail OAuth is the email backbone
  • Issue: #249
## Summary Replaces `westsidebasketball@gmail.com` → `westsidebasktball@gmail.com` (no "e" after "bask") across 13 occurrences in 9 public route files. The misspelled address is the **real** Gmail account wired to Gmail OAuth, Keycloak SMTP, and Marcus's iOS Mail. The "correct-looking" spelling is not a real mailbox — user replies silently misroute. Closes #249 ## Changes - `src/routes/(public)/+layout.svelte` — footer contact link - `src/routes/(public)/+page.svelte` — home page contact + CTA - `src/routes/(public)/about/+page.svelte` — contact line + CTA + Coach Marcus link - `src/routes/(public)/staff/+page.svelte` — sponsorship CTA + contact CTA - `src/routes/(public)/teams/+page.svelte` — team inquiry link - `src/routes/(public)/sponsors/+page.svelte` — sponsorship CTA - `src/routes/(public)/gear/+page.svelte` — gear inquiry link - `src/routes/(public)/schedule/+page.svelte` — schedule contact - `src/routes/(public)/tryouts/+page.svelte` — tryouts contact Pure find-replace. No logic, style, or component structure changes. ## Test Plan - [x] `grep -r "westsidebasketball@gmail.com" src/` → 0 matches - [x] `grep -r "westsidebasktball@gmail.com" src/` → 13 matches (same count, all corrected) - [x] `npm run build` → ✓ clean (SvelteKit adapter-static, 3.17s) - [ ] After deploy: visually confirm footer + About + Staff + Gear CTAs render correct address - [ ] After deploy: click a mailto link and confirm the compose window addresses the real inbox ## Review Checklist - [x] Scope matches issue #249 (public routes only, no backend changes) - [x] No changes outside `src/routes/(public)/` except the layout (which is correctly scoped to the public group) - [x] Build passes locally - [x] Commit message references issue - [ ] QA: confirm no other places in the repo still display the misspelled address (admin/app routes were intentionally out of scope for this ticket — if any are found, spin a follow-up issue) ## Related Notes - Memory: `reference_westside_email.md` — canonical spelling + systems that depend on it - Memory: `feedback_gmail_oauth_not_smtp.md` — Gmail OAuth is the email backbone - Issue: #249
fix: correct contact email spelling on public pages
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
43f8d41d40
Replace westsidebasketball@gmail.com with westsidebasktball@gmail.com
across 13 occurrences in 9 (public) route files. The misspelled address
(no "e" after "bask") is the real Gmail account wired to Gmail OAuth,
Keycloak SMTP, and Marcus's iOS Mail — the "correct-looking" spelling
silently misroutes user replies.

Closes #249

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Author
Contributor

PR #250 Review

DOMAIN REVIEW

Stack: SvelteKit static site (adapter-static), public routes only. This is a pure string find-replace of a contact email address (westsidebasketball@gmail.com -> westsidebasktball@gmail.com) across 9 .svelte files in the (public) route group.

  • Diff is clean: 13 additions / 13 deletions, perfectly symmetric.
  • Every occurrence replaces BOTH the visible link text AND the mailto: href in the same line. No risk of display-vs-target mismatch (a common failure mode for this kind of fix).
  • mailto: query-string encoding preserved on CTAs (?subject=Inquiry%20%E2%80%94%20Westside%20Kings%20%26%20Queens).
  • No logic, no components, no styles, no props changed. Zero regression surface outside the rendered string.
  • Grep of the local main checkout confirms all 9 touched files are the ONLY locations of the old spelling in the repo — admin/app routes do not reference the contact email, so no follow-up issue is needed for out-of-scope coverage. The QA checklist item about "other places in the repo" can be closed as verified.
  • No a11y/responsive/perf concerns — text content change only.

Alignment with canonical memory:

  • Matches reference_westside_email.md (canonical spelling: westsidebasktball@gmail.com).
  • Matches feedback_gmail_oauth_not_smtp.md — this is the real Gmail-OAuth-wired mailbox; the "correct-looking" spelling silently misroutes replies. The fix prevents a live customer-communication failure.

BLOCKERS

None.

NITS

None. Scope is tight, diff is surgical, PR body is complete.

SOP COMPLIANCE

  • Branch named after issue (249-fix-contact-email-spelling-westsidebaske)
  • PR body follows template (Summary / Changes / Test Plan / Related)
  • Related references issue #249 and the relevant memory notes
  • No secrets committed
  • Build passes locally (npm run build clean per PR body)
  • Scope matches issue — public routes only, no unrelated changes

PROCESS OBSERVATIONS

  • Low-risk, high-value fix — direct customer-facing impact (parent replies currently misroute to a non-existent mailbox). Deployment frequency: safe for immediate merge.
  • Change failure risk: minimal. Static content change, no state/data implications.
  • Documentation: the canonical spelling is already locked in reference_westside_email.md; no doc update needed.
  • One tiny process note (not blocking): the last two Test Plan checkboxes are post-deploy visual/mailto validations — those belong in the validation stage after merge, not as merge gates. Current state is correct.

VERDICT: APPROVED

## PR #250 Review ### DOMAIN REVIEW Stack: SvelteKit static site (`adapter-static`), public routes only. This is a pure string find-replace of a contact email address (`westsidebasketball@gmail.com` -> `westsidebasktball@gmail.com`) across 9 `.svelte` files in the `(public)` route group. - Diff is clean: 13 additions / 13 deletions, perfectly symmetric. - Every occurrence replaces BOTH the visible link text AND the `mailto:` href in the same line. No risk of display-vs-target mismatch (a common failure mode for this kind of fix). - `mailto:` query-string encoding preserved on CTAs (`?subject=Inquiry%20%E2%80%94%20Westside%20Kings%20%26%20Queens`). - No logic, no components, no styles, no props changed. Zero regression surface outside the rendered string. - Grep of the local main checkout confirms all 9 touched files are the ONLY locations of the old spelling in the repo — admin/app routes do not reference the contact email, so no follow-up issue is needed for out-of-scope coverage. The QA checklist item about "other places in the repo" can be closed as verified. - No a11y/responsive/perf concerns — text content change only. Alignment with canonical memory: - Matches `reference_westside_email.md` (canonical spelling: `westsidebasktball@gmail.com`). - Matches `feedback_gmail_oauth_not_smtp.md` — this is the real Gmail-OAuth-wired mailbox; the "correct-looking" spelling silently misroutes replies. The fix prevents a live customer-communication failure. ### BLOCKERS None. ### NITS None. Scope is tight, diff is surgical, PR body is complete. ### SOP COMPLIANCE - [x] Branch named after issue (`249-fix-contact-email-spelling-westsidebaske`) - [x] PR body follows template (Summary / Changes / Test Plan / Related) - [x] Related references issue #249 and the relevant memory notes - [x] No secrets committed - [x] Build passes locally (`npm run build` clean per PR body) - [x] Scope matches issue — public routes only, no unrelated changes ### PROCESS OBSERVATIONS - Low-risk, high-value fix — direct customer-facing impact (parent replies currently misroute to a non-existent mailbox). Deployment frequency: safe for immediate merge. - Change failure risk: minimal. Static content change, no state/data implications. - Documentation: the canonical spelling is already locked in `reference_westside_email.md`; no doc update needed. - One tiny process note (not blocking): the last two Test Plan checkboxes are post-deploy visual/mailto validations — those belong in the validation stage after merge, not as merge gates. Current state is correct. ### VERDICT: APPROVED
forgejo_admin deleted branch 249-fix-contact-email-spelling-westsidebaske 2026-04-14 15:39:18 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/westside-app!250
No description provided.