---
phase: 02-marketing-site
plan: 03
type: execute
wave: 2
depends_on:
- "02-01"
- "02-02"
files_modified: []
autonomous: false
requirements:
- MKTG-01
- MKTG-02
- MKTG-03
- MKTG-04
must_haves:
truths:
- "Visitor sees Teressa's photo and professional bio in the hero section"
- "Visitor sees the testimonials carousel rotating automatically"
- "Visitor sees the listings coming soon section"
- "Visitor can submit the contact form and see the thank-you message"
- "Sticky nav scrolls to correct sections"
artifacts:
- path: "teressa-copeland-homes/app/page.tsx"
provides: "Assembled homepage at localhost:3000"
- path: "teressa-copeland-homes/lib/contact-action.ts"
provides: "Working server action"
key_links:
- from: "Contact form"
to: "submitContact server action"
via: "form submission in browser"
pattern: "network request to server action"
---
Human verification of the complete Phase 2 marketing site before marking the phase complete.
Purpose: Confirm all four MKTG requirements are visually correct and the contact form works end-to-end in a real browser.
Output: Phase 2 marked complete (or issues fed back for gap closure).
@/Users/ccopeland/.claude/get-shit-done/workflows/execute-plan.md
@/Users/ccopeland/.claude/get-shit-done/templates/summary.md
@/Users/ccopeland/temp/red/.planning/phases/02-marketing-site/02-01-SUMMARY.md
@/Users/ccopeland/temp/red/.planning/phases/02-marketing-site/02-02-SUMMARY.md
Task 1: Start dev server and run smoke check
Run the dev server and verify the page renders without runtime errors:
```bash
cd /Users/ccopeland/temp/red/teressa-copeland-homes
npm run build && echo "BUILD OK"
```
Then start dev server (background) and confirm the page loads:
```bash
npm run dev &
sleep 3
curl -s -o /dev/null -w "%{http_code}" http://localhost:3000
```
Expected: HTTP 200. If not 200, read the dev server output for errors and fix before proceeding to the checkpoint.
cd /Users/ccopeland/temp/red/teressa-copeland-homes && npm run build 2>&1 | grep -E "(error|Error|BUILD)" | tail -10
Build succeeds and localhost:3000 returns HTTP 200.
Complete Phase 2 marketing homepage at http://localhost:3000 including:
- Sticky nav with wordmark and anchor links
- Split-panel hero with Teressa's photo and placeholder bio copy
- Auto-scrolling testimonials carousel (5 sections, arrows, dots)
- Listings Coming Soon placeholder section
- Contact form with name/email/phone/message fields
- Footer with license number and copyright
Visit http://localhost:3000 and check each item:
1. STICKY NAV: Scroll down — does the nav stay fixed at the top? Do the anchor links (Home, About, Listings, Contact) scroll smoothly to the correct sections?
2. HERO: Does the left panel show Teressa's photo? Does the right panel show a headline, bio paragraph, and gold "Get in Touch" button? Does the button scroll to the contact form?
3. TESTIMONIALS: Does the carousel auto-advance after ~5 seconds? Does hovering pause it? Do the left/right arrows work? Do the dots work?
4. LISTINGS PLACEHOLDER: Is there a navy-background section with "Listings Coming Soon" text?
5. CONTACT FORM: Fill in all four fields (name, email, phone, message) and submit. Does the form show "Thanks! Teressa will be in touch soon." after submission? (Note: actual email delivery requires SMTP env vars configured — the swap to the thank-you message proves the server action ran.)
6. FOOTER: Is the license number present with a comment visible in the page source (`