Skip to content

feat(website): lead-form kit and footer newsletter fix - #994

Merged
blove merged 17 commits into
mainfrom
blove/lead-forms-kit
Sep 4, 2026
Merged

feat(website): lead-form kit and footer newsletter fix#994
blove merged 17 commits into
mainfrom
blove/lead-forms-kit

Conversation

@blove

@blove blove commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

PR 1 of 3 for docs/superpowers/specs/2026-09-03-lead-forms-system-design.md (plan: docs/superpowers/plans/2026-09-04-lead-forms-system.md, both included here).

What lands

  • A form kit under apps/website/src/components/form/: Field (label, optional marker, help, error, wired aria-describedby/aria-invalid), TextInput/TextArea/Select, FormCard, SubmitButton (width-stable pending state), FormStatus (success/failure/stale with the right ARIA role), emailError/requiredError, and useGrowthForm, the one submission hook (immutable snapshot, growth envelope, stale-policy branch, in-flight guard, analytics).
  • apps/website/src/styles/forms.css with website-scoped tokens (control height, radius, focus and error rings, status colors) and four style-contract entries.
  • The footer newsletter rebuilt on the kit. This fixes a live production defect: the disclosure paragraph sat inside the flex row and the email input rendered 26 px wide. The disclosure now renders below the row; an e2e case asserts the input is wider than 160 px.

Verification

  • Website unit suite, lint, and production build pass; nx e2e website --grep "footer newsletter" passes (input measured at 183 px).
  • Every task went through spec-compliance and code-quality review; the hook's new tests were mutation-tested (removing the in-flight guard, the 4xx clear, or the 409 clear each fails a test).

Analytics note: the whitepaper surface (PR 3) will start splitting api_error from network_error in marketing:whitepaper_signup_fail; the old code labelled every failure api_error.

Not in this PR: contact page and enterprise intent (PR 2), whitepaper block and toast (PR 3), company-domain inference (deferred).

🤖 Generated with Claude Code

blove and others added 17 commits September 3, 2026 20:35
Approved brainstorm outcome for rebuilding the website lead forms: a shared
form kit and submission hook, bordered tokenized fields, the enterprise form
merged into /contact as an intent variant, the pricing page reduced to a CTA
band, whitepaper block and toast rebuilt on the kit, and the footer
newsletter's collapsed input fixed structurally. Company domain inference is
deferred pending Dawn changes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sixteen tasks in three shippable PRs: the form kit, forms.css with style
contracts, and useGrowthForm with the footer newsletter fix; the contact
page band with the enterprise intent and the pricing CTA band; the
whitepaper block and toast on the kit with the old form CSS removed.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ints from the token

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… id override

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…t passthrough

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…t no longer collapses

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…erage; mark kit files client

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ccess and clearing coverage

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@vercel

vercel Bot commented Sep 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
threadplane Ready Ready Preview Sep 4, 2026 4:07pm UTC

Request Review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated approval: this PR received an intelligent (AI) code review. See the review comments on this PR.

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

@blove
blove enabled auto-merge (squash) September 4, 2026 16:07
@blove
blove merged commit 4c808e5 into main Sep 4, 2026
59 of 61 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant