Skip to content

Rebuild subscription page with 3-tier pricing and add backend support for 3-day trial #86exkhcza#36

Merged
navidshad merged 8 commits into
devfrom
CU-86exkhcza_Step-4-3-day-CC-trial-3-tier-pricing-rollout-Council-002_Navid-Shad
May 15, 2026
Merged

Rebuild subscription page with 3-tier pricing and add backend support for 3-day trial #86exkhcza#36
navidshad merged 8 commits into
devfrom
CU-86exkhcza_Step-4-3-day-CC-trial-3-tier-pricing-rollout-Council-002_Navid-Shad

Conversation

@navidshad
Copy link
Copy Markdown
Contributor

@navidshad navidshad commented May 15, 2026

🏷️ PR Title:
Rebuild subscription page and add 3-tier pricing with 3-day credit card trial

📋 Summary

This PR implements a complete rebuild of the subscription page to support a new 3-tier pricing model and introduces a 3-day credit card trial option. It also includes backend support for the new pricing tiers and trial period. Additionally, several end-to-end test improvements were made, including running Playwright tests against the production build, navigation enhancements to the login page via hash routes, and replacing outdated email/password authentication specs with a Google sign-in smoke test.

🔗 Related Tasks

#86exkhcza - Rebuild subscription page for 3-tier pricing and cap moment upgrades
#86exkhcza - Add 3-tier pricing backend with 3-day credit-card trial
#86exkhcza - Note pilotui Button :to disabled-link gotcha in CLAUDE.md

📝 Additional Details

  • Playwright tests now run against the production build instead of the dev server to better simulate real user conditions.
  • Login navigation has been improved to utilize hash routes for more reliable routing.
  • Authentication tests were updated to replace stale email/password specs with a Google sign-in smoke test, improving test relevance and stability.

📜 Commit List

  • 83936be ci(e2e): run Playwright against production build instead of dev server
  • 544a3bf test(e2e): navigate to login via hash route
  • f568bd7 test(e2e): replace stale email/password auth specs with Google sign-in smoke test
  • d64c0a2 docs: note pilotui Button :to disabled-link gotcha in CLAUDE.md #86exkhcza
  • 0430e26 feat: rebuild subscription page for 3-tier pricing and cap moment upgrades #86exkhcza
  • 5b37c61 feat: add 3-tier pricing backend with 3-day credit-card trial #86exkhcza

navidshad and others added 3 commits May 14, 2026 21:12
Replace the single Premium plan with a Starter/Learner/Fluent tier ladder
driven by a code-based tier registry (tiers.ts). Adds Stripe 3-tier
products and prices via an idempotent setup script, annual billing, a
3-day card-required trial, webhook signature verification, soft-cap usage
tracking, the Fluent waitlist, and fire-and-forget server-side analytics.

Also folds in fixes from live testing: derive credit balances from raw
fields (Mongoose virtuals are undefined on findOne results) and self-heal
references to deleted Stripe customers.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…rades #86exkhcza

Rebuild /settings/subscription as a 3-card pricing page (Starter/Learner/
Fluent) with a monthly/annual toggle and currency selector. Adds the
soft-cap usage banner, cap-moment upgrade modals, the cancel-trial
off-ramp, shared analytics event constants, and retires the "Pro/Premium"
naming. Deletes the hardcoded billing.vue mock.

Also fixes live-session Start-button spacing and the "Manage Subscription"
button rendering as disabled in pilotui link mode.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…khcza

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@navidshad
Copy link
Copy Markdown
Contributor Author

@navidshad navidshad changed the title Cu 86exkhcza step 4 3 day cc trial 3 tier pricing rollout council 002 navid shad Rebuild subscription page with 3-tier pricing and add backend support for 3-day trial #86exkhcza May 15, 2026
navidshad and others added 5 commits May 15, 2026 14:53
…hcza_Step-4-3-day-CC-trial-3-tier-pricing-rollout-Council-002_Navid-Shad
…hcza_Step-4-3-day-CC-trial-3-tier-pricing-rollout-Council-002_Navid-Shad
…n smoke test

The login page is now Google OAuth only; the old specs hung in CI for
~7 min waiting on inputs that no longer exist. Keep e2e in the pipeline
with one assertion that the Google sign-in button renders.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Nuxt SPA uses hash routing, so /auth/login resolves the hash to "/" and
renders the wrong page. Use /#/auth/login instead.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add a frontend build step in the e2e job and switch Playwright's
webServer to "yarn preview" in CI. The dev server's on-demand compile
caused first-hit timeouts; a pre-built bundle responds instantly and
matches what users see. Drop retries from 2 to 1 so genuine flakes get
surfaced.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@navidshad navidshad merged commit 0843da8 into dev May 15, 2026
6 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