diff --git a/docs/core/tasks.md b/docs/core/tasks.md index 7d3a8ce..17a7c13 100644 --- a/docs/core/tasks.md +++ b/docs/core/tasks.md @@ -2637,6 +2637,88 @@ Use Pterodactyl Panel console at panel.firefrostgaming.com → Console tab → ` --- +### 87. Arbiter 2.1 - Subscription Cancellation & Grace Period System +**Time:** 4-6 hours implementation + 2 hours Paymenter research +**Status:** ARCHITECTURE VALIDATED — awaiting Paymenter webhook research +**Priority:** Tier 1 — SOFT LAUNCH BLOCKER +**Documentation:** `docs/tasks/arbiter-2-1-cancellation-flow/` + +Add subscription offboarding flow to Arbiter 2.0. Currently have onboarding (subscribe → Discord role) but NO cancellation process. Cannot soft launch without defining what happens when users cancel, payment fails, or chargebacks occur. + +**Architecture validated by Gemini AI (March 30, 2026).** + +**Key Policy Decisions:** +- Payment failure → 3-day grace → auto-downgrade to Awakened (permanent safety net) +- Chargeback → immediate permanent ban (any amount) +- Multi-tier support: Max 2 tiers per user (one permanent + one monthly) +- Email reminders: Day 0, 1, 2, 3 during grace period +- Cleanup job: Daily at 4:00 AM + +**Critical Edge Cases Identified:** +1. Stripe Smart Retries - payment succeeds Day 5 after Day 3 downgrade (need payment.succeeded webhook) +2. Double Buy - user buys new subscription during grace period (use UPSERT on email) + +**Blocks:** Soft launch (must have cancellation flow before opening subscriptions) + +**Blocked By:** Paymenter webhook event research (verify what events are available) + +**Next Steps:** +1. Research Paymenter webhook events (when home) +2. Decide: Paymenter webhooks vs Stripe webhooks direct +3. Build database enhancements (permanent_tier, monthly_tier columns) +4. Implement webhook handlers +5. Build 4 AM cleanup job +6. Create 4 email templates +7. Test thoroughly (especially Stripe retry scenario) + +**See task directory for complete architectural review, Gemini consultation, code blocks, and implementation plan.** + +--- + +### 88. Ghost CMS Homepage - Mobile Responsive Fix +**Time:** 5-10 minutes +**Status:** IDENTIFIED — CSS fix ready to apply +**Priority:** Tier 2 — Quality of Life +**Documentation:** CSS file ready at `/home/claude/ghost-homepage-mobile-fix.css` + +Fix mobile layout issues on firefrostgaming.com homepage where content gets cut off on right side of screen on mobile devices. + +**Problem:** +- Content pushed off-screen to right on mobile +- Text truncated/disappearing +- Horizontal overflow issues +- Buttons and cards not wrapping properly + +**Root Cause:** +- Inline styles with fixed max-width values +- No mobile-responsive media queries +- Ghost theme CSS not overriding inline styles + +**Solution:** +Complete mobile-responsive CSS media queries ready to inject via Ghost Admin → Settings → Code Injection → Site Header. + +**CSS Fixes Applied:** +- Force full-width layouts on mobile (< 768px) +- Reduce font sizes (4rem → 2.5rem headings) +- Stack buttons vertically +- Stack Fire/Frost path cards +- Remove negative margins +- Prevent horizontal scrolling +- Tablet adjustments (768px - 1024px) + +**Implementation:** +1. Copy CSS from `/home/claude/ghost-homepage-mobile-fix.css` +2. Ghost Admin → Settings → Code Injection +3. Paste into Site Header box +4. Save +5. Test on mobile device + +**Impact:** Immediate improvement to mobile UX, no code changes to homepage HTML needed. + +**See CSS file for complete media queries and responsive breakpoints.** + +--- + --- diff --git a/docs/planning/ideas/features/ghost-homepage-mobile-fix.css b/docs/planning/ideas/features/ghost-homepage-mobile-fix.css new file mode 100644 index 0000000..499a7e2 --- /dev/null +++ b/docs/planning/ideas/features/ghost-homepage-mobile-fix.css @@ -0,0 +1,133 @@ +/* + * GHOST HOMEPAGE MOBILE FIX + * Add this to: Ghost Admin → Settings → Code Injection → Site Header + * + * Fixes content getting cut off on mobile by forcing full-width layouts + * and responsive font sizes + */ + +