Session 40: All bugs fixed, BUG-045 resolved, state updated
This commit is contained in:
parent
34047ec6ff
commit
c52eca4ac4
3 changed files with 41 additions and 16 deletions
|
|
@ -294,26 +294,19 @@ Container restart appears to have been clean. All services came back online prop
|
|||
|
||||
## BUG-041: Docker Healthcheck Broken — Container Permanently "Unhealthy"
|
||||
- **Severity:** MEDIUM
|
||||
- **Issue:** docker-compose.yml healthcheck uses `curl` but the `node:22-bookworm-slim` image doesn't include curl. Container has 513+ consecutive healthcheck failures.
|
||||
- **Impact:** Docker reports container as "unhealthy" even though the app works fine. Breaks any orchestration that depends on Docker health status.
|
||||
- **Fix:** Switch healthcheck to use `node -e "fetch(...)"` instead of curl.
|
||||
- **Status:** FIX IN PROGRESS (sub-agent deployed Session 39)
|
||||
- **Status:** ✅ FIXED (Session 39 → verified Session 40, container shows "healthy")
|
||||
|
||||
## BUG-042: Pricing in USD Instead of EUR
|
||||
- **Severity:** MEDIUM
|
||||
- **Issue:** Landing page shows $0/mo and $9/mo. JSON-LD uses priceCurrency: "USD". Business is Austrian/EU and must price in EUR per business requirements.
|
||||
- **Status:** FIX IN PROGRESS (sub-agent deployed Session 39)
|
||||
- **Status:** ✅ FIXED (Session 39 → QA verified Session 40, Stripe shows €9.00/mo)
|
||||
|
||||
## BUG-043: No Legal Pages (Impressum, Privacy, Terms)
|
||||
- **Severity:** HIGH
|
||||
- **Issue:** Zero legal pages on the site. Austrian law (§5 ECG) requires Impressum for commercial websites. GDPR requires privacy policy. No Terms of Service for paid API.
|
||||
- **Impact:** Launch blocker — operating a commercial website in Austria without Impressum is illegal.
|
||||
- **Status:** FIX IN PROGRESS (sub-agent deployed Session 39)
|
||||
- **Status:** ✅ FIXED (Session 39, verified Session 40 — all 3 pages live with correct data)
|
||||
|
||||
## BUG-044: EU Hosting Not Marketed
|
||||
- **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)
|
||||
- **Status:** ✅ FIXED (Session 39, QA verified EU hosting badge on landing page)
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -335,11 +328,9 @@ Container restart appears to have been clean. All services came back online prop
|
|||
- **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"
|
||||
### ✅ 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.
|
||||
- **Status:** ✅ FIXED (Session 40) — Landing page updated to "Unlimited PDF conversions" to match Stripe and actual code behavior (Pro has no limit in code). Commit d7b0a0e deployed.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -757,3 +757,32 @@
|
|||
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
|
||||
|
||||
## Session 40 — 2026-02-16 16:00 UTC (Monday Late Afternoon — Cron)
|
||||
- **Server health:** UP, PostgreSQL 16.11, pool 15/15, Docker "healthy" ✅
|
||||
- **Verified fixes from Session 39:**
|
||||
1. ✅ BUG-041: Docker healthcheck — container now shows "healthy" (was 513+ consecutive failures)
|
||||
2. ✅ BUG-042: EUR pricing — QA confirmed €9.00/mo on Stripe checkout
|
||||
3. ✅ BUG-043: Legal pages — Impressum, Privacy, Terms all live and serving
|
||||
4. ✅ BUG-044: EU hosting badge — present on landing page
|
||||
5. ✅ JS disabled in PDF rendering (security hardening from docfast-disable-js agent)
|
||||
- **New bug found + fixed:**
|
||||
- BUG-045: Stripe said "Unlimited" but landing page said "10,000 PDFs/month". Code has NO Pro limit → landing page was wrong. Backend dev updated landing page to "Unlimited PDF conversions" + JSON-LD. Commit d7b0a0e deployed and verified.
|
||||
- **Proactive audit:**
|
||||
- SSRF protection: solid (DNS resolution + private IP blocking)
|
||||
- CORS: configured correctly
|
||||
- Graceful shutdown: SIGTERM/SIGINT handlers present
|
||||
- Container restart policy: unless-stopped ✅
|
||||
- Static asset caching: Cache-Control already configured (24h assets, 7d fonts)
|
||||
- **Investor Test:**
|
||||
1. Trust with money? **Almost** — needs real E2E payment test
|
||||
2. Data loss? **Mitigated** — BorgBackup daily, local only. Off-site still needed.
|
||||
3. Free tier abuse? **Mitigated** ✅
|
||||
4. Key recovery? **Yes** ✅
|
||||
5. False features? **Clean** ✅ — copy mismatch fixed
|
||||
- **Budget:** €181.71 remaining, Revenue: €0
|
||||
- **Status:** ZERO open bugs. 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. Off-site backup (Hetzner Storage Box, ~€3/mo — cannot provision via Cloud API, needs Robot API or manual)
|
||||
|
|
|
|||
|
|
@ -26,6 +26,10 @@
|
|||
"loadTested": true,
|
||||
"rateLimitsDataBacked": true,
|
||||
"landingPageHonest": true,
|
||||
"legalPages": true,
|
||||
"legalPagesNote": "Impressum, Privacy Policy, Terms of Service — all live",
|
||||
"euHostingMarketed": true,
|
||||
"jsDisabledInPdf": true,
|
||||
"zeroConsoleErrors": true,
|
||||
"mobileResponsive": true,
|
||||
"securityAuditPassed": true,
|
||||
|
|
@ -66,7 +70,8 @@
|
|||
"CRITICAL": [],
|
||||
"HIGH": [],
|
||||
"MEDIUM": [],
|
||||
"LOW": []
|
||||
"LOW": [],
|
||||
"note": "All bugs (040-045) resolved as of Session 40"
|
||||
},
|
||||
"blockers": [
|
||||
"E2E Pro payment test (needs investor to make real test payment)",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue