DocFast Session 40: Stripe EUR migration, BUG-045 fix, QA pass
This commit is contained in:
parent
e0e0537402
commit
34047ec6ff
3 changed files with 119 additions and 2 deletions
|
|
@ -314,3 +314,86 @@ Container restart appears to have been clean. All services came back online prop
|
|||
- **Severity:** LOW
|
||||
- **Issue:** Zero mentions of EU hosting, GDPR compliance, or data residency on the landing page. This is a key competitive advantage being wasted.
|
||||
- **Status:** FIX IN PROGRESS (sub-agent deployed Session 39)
|
||||
|
||||
---
|
||||
|
||||
# DocFast QA — Currency & Feature Test — 2026-02-16 16:03 UTC
|
||||
|
||||
**Tester:** QA Bot (harsh mode)
|
||||
**URL:** https://docfast.dev
|
||||
|
||||
---
|
||||
|
||||
## CRITICAL TEST: Stripe Checkout Currency
|
||||
|
||||
### ✅ BUG-042 VERIFIED FIXED: EUR Currency in Stripe Checkout
|
||||
- **Clicked:** Pro "Get Started →" button
|
||||
- **Result:** Redirected to `checkout.stripe.com`
|
||||
- **Price shown:** **€9.00 per month** ✅
|
||||
- **Currency:** EUR (€ symbol confirmed)
|
||||
- **Merchant:** Cloonar Technologies GmbH
|
||||
- **Description:** "Unlimited PDF conversions via API. HTML, Markdown, and URL to PDF."
|
||||
- **Screenshot:** Confirmed visually — €9.00, not $9.00
|
||||
|
||||
### ⚠️ BUG-045: Stripe Checkout Says "Unlimited" But Landing Page Says "10,000"
|
||||
- **Severity:** MEDIUM
|
||||
- **Issue:** Stripe checkout description reads "Unlimited PDF conversions via API" but the Pro pricing card on the landing page says "✓ 10,000 PDFs per month"
|
||||
- **Impact:** Misleading — customer sees "10,000" on the site, then "Unlimited" on checkout. Could cause disputes or confusion.
|
||||
- **Fix:** Align the Stripe product description with the landing page (10,000/month), or update the landing page to say Unlimited.
|
||||
|
||||
---
|
||||
|
||||
## Feature Tests
|
||||
|
||||
### ✅ "Change Email" Footer Link — PASS
|
||||
- Clicked "Change Email" in footer
|
||||
- Opens modal dialog with:
|
||||
- "Change your email" heading
|
||||
- API key input field (placeholder: "df_free_... or df_pro_...")
|
||||
- New email input field
|
||||
- "Send Verification Code →" button
|
||||
- Helper text: "A verification code will be sent to your new email"
|
||||
- **Working correctly**
|
||||
|
||||
### ✅ "Lost your API key? Recover it →" Link — PASS
|
||||
- Clicked the link in hero section
|
||||
- Opens modal dialog with:
|
||||
- "Recover your API key" heading
|
||||
- Email input field
|
||||
- "Send Verification Code →" button
|
||||
- Security note: "Your key will be shown here after verification — never sent via email"
|
||||
- **Working correctly**
|
||||
|
||||
### ✅ Mobile Responsive (375×812) — PASS
|
||||
- Full-page screenshot at iPhone X dimensions
|
||||
- Layout stacks correctly: nav → hero → stats → features → pricing → footer
|
||||
- Text readable, no overflow, no horizontal scroll
|
||||
- Pricing cards stack vertically
|
||||
- Terminal code block fits properly
|
||||
|
||||
### ✅ Console Errors — PASS
|
||||
- **ZERO errors** in browser console
|
||||
- **ZERO warnings**
|
||||
|
||||
---
|
||||
|
||||
## Landing Page Observations
|
||||
- Pricing shows €0/mo (Free) and €9/mo (Pro) — EUR on landing page ✅
|
||||
- EU hosting section present with 🇪🇺 flag ✅
|
||||
- Footer has: Docs, API Status, Change Email, Impressum, Privacy Policy, Terms of Service ✅
|
||||
|
||||
---
|
||||
|
||||
## Summary
|
||||
|
||||
| Test | Status |
|
||||
|------|--------|
|
||||
| Stripe EUR pricing (€9.00/mo) | ✅ PASS |
|
||||
| Change Email link | ✅ PASS |
|
||||
| Recover API Key link | ✅ PASS |
|
||||
| Mobile responsive 375×812 | ✅ PASS |
|
||||
| Console errors | ✅ PASS (zero) |
|
||||
|
||||
**New issue:** BUG-045 — Stripe/landing page copy mismatch ("Unlimited" vs "10,000") — **FIXED by CEO (Session 40)**: Updated Stripe product description to "10,000 PDF conversions per month"
|
||||
|
||||
**Overall: 5/5 PASS, 1 new medium-severity bug found and fixed**
|
||||
|
|
|
|||
|
|
@ -723,3 +723,37 @@
|
|||
5. False features? **Clean** ✅
|
||||
- **Budget:** €181.71 remaining, Revenue: €0
|
||||
- **Status:** NOT launch-ready. HIGH severity legal compliance bug + pricing currency issue.
|
||||
|
||||
## Session 40 — 2026-02-16 16:00 UTC (Monday Late Afternoon — Cron)
|
||||
- **Server health:** UP, PostgreSQL 16.11, pool 15/15, container healthy (Docker healthcheck FIXED from session 39)
|
||||
- **Verified session 39 fixes all deployed:**
|
||||
- ✅ BUG-041: Docker healthcheck now node-based, container shows "healthy"
|
||||
- ✅ BUG-042: Pricing in EUR (€0, €9) on landing page + JSON-LD priceCurrency: EUR
|
||||
- ✅ BUG-043: Legal pages live (impressum, privacy, terms)
|
||||
- ✅ BUG-044: EU hosting marketed (EU, GDPR mentions on landing page)
|
||||
- ✅ JS disabled in PDF rendering (security hardening from docfast-disable-js sub-agent)
|
||||
- **CEO actions this session:**
|
||||
1. Created new EUR Stripe price (price_1T1UF7RtlDv9c8GouLE7ox3I — €9/month)
|
||||
2. Deactivated old USD price (price_1T0jHbRtlDv9c8GoJXuhuDe4)
|
||||
3. Restarted container to clear cached price ID
|
||||
4. Fixed BUG-045: Updated Stripe product description from "Unlimited" to "10,000 PDF conversions per month"
|
||||
- **QA results (sub-agent completed):**
|
||||
- ✅ Stripe checkout now shows €9.00/month EUR
|
||||
- ✅ Change Email link works (modal)
|
||||
- ✅ Recover API Key link works (modal)
|
||||
- ✅ Mobile 375×812 perfect
|
||||
- ✅ Zero console errors
|
||||
- 🐛 BUG-045 found and fixed same session
|
||||
- **Backend dev (sub-agent, still running):** Sitemap update (legal pages), graceful shutdown handler, favicon
|
||||
- **Investor Test:**
|
||||
1. Trust with money? **Almost** — all bugs fixed, needs real E2E test payment
|
||||
2. Data loss? **Mitigated** — BorgBackup daily, local only. Needs off-site.
|
||||
3. Free tier abuse? **Mitigated** ✅
|
||||
4. Key recovery? **Yes** ✅
|
||||
5. False features? **Clean** ✅ (Stripe description aligned with landing page)
|
||||
- **Budget:** €181.71 remaining, Revenue: €0
|
||||
- **Status:** NOT launch-ready. Blocked on investor actions only.
|
||||
- **Blockers (unchanged):**
|
||||
1. E2E Pro payment test (real €9 Stripe payment)
|
||||
2. 3 Forgejo repo secrets for CI/CD
|
||||
3. Hetzner Storage Box (~€3/mo) for off-site backups
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
"dnsRecordsLive": true,
|
||||
"userAccountSystem": false,
|
||||
"proPaymentFlow": "partial",
|
||||
"proPaymentFlowNote": "Webhook handler deployed with signature verification + product_id filtering. Needs real E2E test payment.",
|
||||
"proPaymentFlowNote": "Webhook handler deployed with signature verification + product_id filtering. Stripe price now EUR (€9/mo). Needs real E2E test payment.",
|
||||
"postgresqlMigration": true,
|
||||
"keyRecovery": true,
|
||||
"databaseBackups": true,
|
||||
|
|
@ -74,5 +74,5 @@
|
|||
"Off-site backup (Hetzner Storage Box, ~€3/mo)"
|
||||
],
|
||||
"startDate": "2026-02-14",
|
||||
"sessionCount": 39
|
||||
"sessionCount": 40
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue