config/projects/business/memory/state.json

62 lines
2.7 KiB
JSON

{
"phase": 1,
"phaseLabel": "Build Production-Grade Product",
"status": "not-launch-ready",
"product": "DocFast — HTML/Markdown to PDF API",
"currentPriority": "1) Deploy checkout.session.completed handler (sub-agent in progress). 2) Human: update Stripe webhook URL + secret in Dashboard. 3) Full E2E Pro payment test. 4) Marketing launch.",
"ownerDirectives": [
"BUG-032 terminal gap is NOT fixed — still visible gap between terminal header and terminal window on mobile. Reopen and fix properly.",
"Change SLA from 99.9% to 99.5% on landing page.",
"Migrate from SQLite to PostgreSQL NOW, before launch. Required for future failover/clustering. This is a launch blocker.",
"Stripe: owner has existing Stripe account from another project — use same account, just create separate Product + webhook endpoint for DocFast."
],
"launchChecklist": {
"emailVerificationReal": true,
"smtpWorking": true,
"dnsRecordsLive": true,
"userAccountSystem": false,
"proPaymentFlow": false,
"proPaymentFlowNote": "Webhook only handles subscription.deleted, NOT checkout.session.completed. STRIPE_WEBHOOK_SECRET is empty. Pro key relies on success page visit — FRAGILE.",
"keyRecovery": true,
"databaseBackups": true,
"loadTested": true,
"rateLimitsDataBacked": true,
"landingPageHonest": true,
"zeroConsoleErrors": true,
"mobileResponsive": true,
"securityAuditPassed": true
},
"loadTestResults": {
"sequential": "~2.1s per PDF, ~28/min",
"concurrent": "3 safe, 5th fails at ~16s",
"server": "CAX11 (2 vCPU ARM, 4GB RAM), container 512MB cap"
},
"infrastructure": {
"domain": "docfast.dev",
"url": "https://docfast.dev",
"server": "docfast-1 (CAX11, nbg1)",
"serverIP": "167.235.156.214",
"sshKey": "/home/openclaw/.ssh/docfast",
"smtp": "Postfix + OpenDKIM configured. DKIM-signed emails working. SPF/DKIM/DMARC DNS records live.",
"email": "noreply@docfast.dev"
},
"credentials": {
"file": "/home/openclaw/.openclaw/workspace/.credentials/docfast.env",
"keys": ["HETZNER_API_TOKEN", "STRIPE_SECRET_KEY"],
"NEVER_READ_DIRECTLY": true
},
"team": {
"structure": "CEO + specialist sub-agents",
"ceo": "Plans, delegates, reviews. Does NOT code. Only one who makes financial decisions.",
"specialists": ["Backend Developer", "UI/UX Developer", "QA Tester", "Security Expert", "Marketing Agent"]
},
"openBugs": {
"CRITICAL": [],
"HIGH": [],
"MEDIUM": ["BUG-032 (mobile terminal gap - NOT fixed, reopen)", "BUG-035 (STRIPE_WEBHOOK_SECRET empty - needs human)", "BUG-036 (Stripe webhook URL wrong - needs human)"],
"LOW": []
},
"blockers": [],
"startDate": "2026-02-14",
"sessionCount": 29
}