Back to DevLog

Correcting stale prices and sweeping em dashes from memstack-pro-site

3 min read

I deployed six commits to the memstack-pro-site in two phases: first fixing stale data and repositioning the home page, then removing em dashes from customer-facing copy.

Factual corrections

I updated the JSON-LD offer prices from the pre-launch placeholders (29/99/199) to the live Stripe values (15/299/99) and verified them against Pricing.tsx and the three price IDs in src/lib/price-config.ts.

On the /go/b page, I replaced the frozen "and 100+ more" with the live SKILL_COUNTS.total and corrected the overstated "All surface automatically when relevant" claim.

I changed "Voice notifications" to "Sound notifications" in Comparison.tsx because the shipped feature is an audio chime, not speech synthesis.

I added a dashboard What's New entry for plugin 3.6.1 and loader 4.14.1, leading with the mcp 2.0.0 break. Fresh installs of 4.13.1 and 4.14.0 crash at import. Both versions are yanked on PyPI, which I confirmed via the PyPI JSON API.

Home page repositioning

I rewrote the lead paragraph in Hero.tsx and replaced Problem.tsx and Solution.tsx with a new three-pillar section (Memory Engine, TokenStack, Skills). Problem.tsx was deleted because its heading now appears verbatim in the new lead. Solution.tsx was renamed to Pillars.tsx via git mv so the rename is traceable in history. Pillars.tsx keeps id="features" because Header.tsx links to /#features.

I moved FrameworkArtifact below the pillars and date-bounded the TokenStack claim to "logged May through July 2026" so the snapshot stays true as written.

Em dash sweep

I removed em dashes from customer-facing prose across 9 files. I kept them in comments, table placeholders, and server log strings. I chose per-clause punctuation: colons for lists, periods for welded independent clauses, and parentheses for the one real aside.

The sweep covered src/app/page.tsx, src/app/go/b/page.tsx, src/app/dashboard/page.tsx, src/app/docs/getting-started/GettingStartedContent.tsx, src/app/terms/page.tsx, src/app/success/page.tsx, src/app/admin/broadcast/page.tsx, src/components/sections/HowItWorks.tsx, src/components/admin/BroadcastClient.tsx, src/components/admin/ContactsClient.tsx, and src/pages/api/cron/drip.ts.

Build and verification problems

npm run build failed with "'next' is not recognized" because node_modules was absent. npm install (190 packages) fixed it. npm audit reports 5 vulnerabilities (1 critical, 3 high), which I left untouched and flagged.

I wrote ' into a plain JS string in Pillars.tsx, which would have rendered the literal characters. I caught and fixed it before the build.

Two JSX whitespace traps: {" "} before a comma or colon renders "contact page , no questions asked". Removing the {" "} alongside the punctuation change was required in terms/page.tsx and the dashboard "Pro skills" bullet.

My own verification produced two false failures. The dashboard is a client component, so its copy is absent from the prerendered HTML. My text extractor replaced every tag with a space, faking a stray space in terms. I re-verified against built JS chunks and raw HTML.

I stated in one turn that the repo deploys on Vercel. It is Netlify. I corrected it the following turn after checking for netlify.toml.

Follow-up

I boarded the TokenStack live-figures follow-up as a local-only doc at docs/plans/2026-07-31-tokenstack-stats-live-wiring.md after git refused the ignored path. The blocker is that Netlify's builder cannot reach the proxy's local DB.

The repo has 5 npm audit vulnerabilities (1 critical, 3 high) in the dependency tree, untouched this session.

Share this post