feat(website): homepage sequencing, plate trim, and diagram scaling - #1089
Merged
Conversation
…links
Requested change. The form now reads 'We will never spam you or share your
email address.' in place of the three-email outreach disclosure, and the
two 'Download the PDF directly' escapes are gone: the 'Already on the list?'
line and the one in the failure block.
Recorded because it is not a copy edit: whitepaper signups are still
enrolled into the founder campaign (campaign/send.ts treats formKind
'whitepaper' as a campaign context), so the follow-up sequence still sends
and is no longer disclosed at the point of capture. Raised before making
the change and confirmed. GROWTH_FORM_POLICY_VERSION is bumped to
growth_v1.2026-09-09 so consent captured under the old wording stays
distinguishable from consent captured under this one, and the constant is
renamed WHITEPAPER_PRIVACY_ASSURANCE because it no longer discloses outreach.
The SUCCESS block keeps its direct link -- that reader has already given
their address and the copy promises it ('the PDF is here too'). The failure
block now says 'Try again in a moment.' rather than handing over the file.
Also removes the .wp-already rules and the home_whitepaper_direct_inline
analytics id, both of which nothing can reach any more.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…ng titles - OpenSourceStrip moves above Stage, so the fork band follows the architecture diagram. The e2e spine order moves with it. - The airport plate loses its N/S/E taxiways -- lines, letters, the TaxiwayLetter component, the TWY_* constants and the .ap-taxiway / .ap-twy-* rules -- and gains 44 viewBox units of margin below the southern runway (NEAT 444->488, VIEW 536->580, furniture shifted with it). - The off-airport strip now reads 'All AI Models supported'. - 'Compatibility, not endorsement' and 'Everything on the right is yours' are removed. - The briefing titles swap: the eyebrow carries the problem, the h2 carries the offer. '· free' leaves the eyebrow meta because the headline now opens with 'Free'. Two guards changed rather than deleted. Compatibility.spec kept its negative half -- nothing may read as an endorsement, and 'never sees' must still appear nowhere, that being the overclaim #1067 corrected -- while losing the positive never-TALKS-TO assertion, since that claim leaves the homepage with the old strip copy. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
It was never scaling at all. The docs kit floors every figure at a render width so shrinking the SVG cannot shrink its text into illegibility, and the marketing scale caps it at 860 -- but min-width beats max-width, so the two together pinned this diagram at exactly 1024px: ~96px of the container went unused on desktop, and between 768 and 1024 the figure scrolled sideways until the phone stack snapped in. Both constraints are dropped so width:100% governs. The max-width override needs .arch-figure .tp-diagram-figure[data-scale] .tp-diagram-svg -- the marketing cap is (0,3,0) and a plain .arch-figure descendant selector loses to it, which is how the first attempt at this silently stayed at 860px. Legibility now comes from the breakpoint rather than a floor: the phone stack takes over below 1024px, so the SVG never renders under ~944px and its 13.5px type never drops under ~10px. Measured at 1440px: 1120px wide, 11.8px type, no scroll. At 900px: stack, no page overflow. Also removes the toast's standalone 'or download directly' link and its now-dead .toast-download-link rule, and updates the airport e2e, which pinned the three taxiways this branch removed. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Aligns it with WhitePaperForm, whose failure block was changed the same way earlier on this branch: the guide is reachable only through a successful submission, so a failed send says to retry rather than releasing the file. trackWhitepaperDownloadClick and the toast_direct_download cta id go with it -- nothing in the toast can emit either any more. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
Both surfaced in CI, both real consequences of this branch. website.spec.ts hardcoded growth_v1.2026-09-01 rather than importing it (form-policy.ts is server-only and cannot load in a Playwright process), so bumping the policy version made the running app post a value the suite did not expect. Updated, with a comment saying it has to move with the constant. 'marketing pages link to downloadable whitepaper PDFs' failed because there are no such links any more: removing every direct-download escape from WhitePaperForm took the library pages' links with it. The test now asserts the gate instead -- the PDFs stay served, they are just not linked -- so re-adding a link is a deliberate act rather than a silent regression. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Contributor
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
A batch of requested homepage changes, plus two bugs found while making them.
Sequencing.
OpenSourceStripmoves aboveStage, so the fork band now follows the architecture diagram. The e2e spine order moves with it.The airport plate. The N/S/E taxiways are gone — lines, letters, the
TaxiwayLettercomponent, theTWY_*constants and the.ap-taxiway/.ap-twy-*rules — and the plate gains 44 viewBox units of margin below the southern runway (NEAT444→488,VIEW536→580, margin furniture shifted with it). The off-airport strip now reads "All AI Models supported".Copy removals. "Compatibility, not endorsement — no company here is claimed as a customer" and "Everything on the right is yours" are removed.
The briefing titles swap. The eyebrow carries the problem, the
<h2>carries the offer: "Free preflight briefing for agentic UI".· freeleaves the eyebrow meta because the headline now opens with "Free".The whitepaper form's disclosure becomes "We will never spam you or share your email address.", and every direct-download escape is removed — the form's two and the toast's two. The guide is reachable only through a successful submission; a failed send says to retry.
Two bugs found along the way
The architecture diagram was never scaling.
min-width: 1024pxandmax-width: 860pxwere both set on it, and min-width wins in CSS — so it rendered at exactly 1024px at every viewport: ~96px of container unused on desktop, and a sideways scroll between 768px and 1024px until the phone stack snapped in. Both constraints are dropped sowidth: 100%governs, and the phone stack now takes over below 1024px so there is no scroll window at any width.The
max-widthoverride needs.arch-figure .tp-diagram-figure[data-scale] .tp-diagram-svg: the marketing cap is(0,3,0)and a plain.arch-figuredescendant selector is(0,2,0), so the first attempt silently stayed at 860px.Measured: 1120px wide and 11.8px type at a 1440px viewport (was 1024px / 10.8px), no scroll; stack and no page overflow at 900px.
Notes
GROWTH_FORM_POLICY_VERSIONis bumped togrowth_v1.2026-09-09so consent recorded under the old wording stays distinguishable, and the constant is renamedWHITEPAPER_PRIVACY_ASSURANCEbecause it no longer discloses outreach..wp-already,.toast-download-link,.ap-taxiway,.ap-twy-*, and thehome_whitepaper_direct_inlineandtoast_direct_downloadanalytics ids, none of which anything can reach.Test Plan
npx nx test website— greennpx nx lint website— 0 errorsnpx nx build website— greenhome-architecture.spec.ts+home-airport.spec.ts— 6 passed🤖 Generated with Claude Code