π DO NOT MERGE BEFORE JULY 21 β Launch Open & Async (post live + buy-now CTAs)#1912
Draft
benbalter wants to merge 1 commit into
Draft
π DO NOT MERGE BEFORE JULY 21 β Launch Open & Async (post live + buy-now CTAs)#1912benbalter wants to merge 1 commit into
benbalter wants to merge 1 commit into
Conversation
Launch day (July 21, 2026) is a coupled change: nothing gates on post date, so the post going live and the sitewide promos flipping to buy-now must ship together (shipping the CTA flip early caused #1899). - Unhide the launch post (published: false β true). - BookCta.astro: teaser β buy-now on both variants ("Out now" / "Buy it β bookPrice"), matching the marketing site and BookLaunchCta. Add a featured-card aria-label and brand focus-visible rings while there. - BookLaunchCta.astro: buy links now use a launch-post-specific utm_source; add focus-visible rings. - feed.xml.ts: same buy-now flip for the RSS/email CTA, with an email utm_source so that surface is measurable. - config.ts: distinct per-surface utm_source (matching the site-wide benbalter-<surface> convention) so each buy surface is attributable. - Reframe the "cut" book-lineage headline toward abundance. - Regenerate the homepage hero banner (header.jpg) "COMING JULY 21, 2026" β "OUT NOW" from the marketing repo's banner generator. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
What this does
Flips the site from pre-launch teaser β buy-now, as one coupled change (the post gate and the sitewide promos must ship together):
2026-07-21-open-and-async.mdx:published: false β true.BookCta(homepage/about featured + inline-on-posts): "Coming July 21 / Get notified" β "Out now" / "Buy it β $9.99".BookLaunchCta(the launch post's bespoke CTA): unchanged copy (already buy-now); buy links now carry a launch-post-specificutm_source.feed.xml.ts): same buy-now flip, with an email-specificutm_source.header.jpg): regenerated "COMING JULY 21, 2026" β "OUT NOW" from the marketing repo's banner generator (same design/dimensions).Also folded in (from a blind design + marketing consult)
utm_sourcein the existing site-widebenbalter-<surface>convention, so the launch post, everyday CTA, and email are each measurable (previously all collapsed to the generic source).aria-label(was a run-on accessible name) and all buy CTAs get a brandfocus-visiblering.Verification
npm run checkβ 0 errorsutm_source)npm run buildβ pass; confirmed the now-published post renders with buy-now copy and thefocus-visibleutilities emit CSSOut of scope
The marketing site itself (open-and-async.com) flips via its own launch runbook in
~/projects/open-and-async-siteβ this PR only touches ben.balter.com.π€ Generated with Claude Code