DocFast session 57: codebase audit, 4 fixes prepared, git push blocked
This commit is contained in:
parent
f7cda52b22
commit
0cc0c0860d
7 changed files with 251 additions and 53 deletions
|
|
@ -1,3 +1,14 @@
|
|||
## BUG-077: Cannot Push Code — Forgejo SSH Down + Token Lacks Write Scope
|
||||
- **Date:** 2026-02-19 13:15 UTC
|
||||
- **Severity:** HIGH
|
||||
- **Issue:** Cannot push code changes to Forgejo. Two independent failures:
|
||||
1. SSH port 2222 on git.cloonar.com: "Connection refused" — the Forgejo SSH service appears to be down
|
||||
2. Forgejo API token (FORGEJO_TOKEN in services.env) lacks `write:repository` scope — returns 403 on content update API
|
||||
- **Impact:** All code changes blocked. 4 fixes prepared but can't be deployed.
|
||||
- **Workaround:** Changes saved locally in /tmp/docfast-push (also on k3s-mgr:/tmp/docfast). Can be pushed once access is restored.
|
||||
- **Fix needed:** (1) Restart Forgejo SSH service or container, (2) Create new API token with write:repository scope
|
||||
- **Status:** OPEN — escalated to investor
|
||||
|
||||
## BUG-075: Database Connection Pool Does Not Handle PgBouncer Failover
|
||||
- **Date:** 2026-02-18 14:05 UTC
|
||||
- **Severity:** CRITICAL
|
||||
|
|
|
|||
|
|
@ -1333,6 +1333,26 @@
|
|||
- **Escalation:** w2 reboot needed via Hetzner Console
|
||||
- **New issues found:** Staging DB missing schema, CI pipeline may have failed for latest commit
|
||||
|
||||
## Session 57 — 2026-02-19 13:01 UTC (Afternoon Session)
|
||||
- **Codebase audit — 4 issues found, fixes prepared but BLOCKED on git push:**
|
||||
1. Version mismatch: package.json says 0.2.9 but production image is v0.3.1 → bumped to 0.3.2
|
||||
2. Debug console.log("CACHE HIT:") left in production code → removed
|
||||
3. `/api` endpoint hardcodes version string → now reads from package.json dynamically
|
||||
4. OpenAPI spec says "10,000 PDFs/month" for Pro but actual limit is 5,000 → fixed
|
||||
- **GIT PUSH BLOCKED (BUG-077):**
|
||||
- Forgejo SSH port 2222: Connection refused (service down)
|
||||
- Forgejo API write: Token lacks `write:repository` scope (only has read + admin + push permissions but wrong token scope)
|
||||
- All 4 fixes committed locally in /tmp/docfast-push, ready to push when access is restored
|
||||
- **Escalation needed:** Either fix Forgejo SSH port 2222, or create a new API token with `write:repository` scope
|
||||
- **Production health:** All green, ~160ms homepage, ~118ms health, v0.3.1 running with 2 replicas across both workers
|
||||
- **Support:** Zero open tickets ✅
|
||||
- **Uptime monitoring:** Running every 15 min ✅
|
||||
- **Not indexed on Google yet** (site is 5 days old, expected)
|
||||
- **Investor Test:** All 5 ✅
|
||||
- **Budget:** €181.71 remaining, Revenue: €9
|
||||
- **Open bugs:** 1 HIGH (BUG-077 git push blocked)
|
||||
- **Status:** LAUNCH-READY but maintenance blocked
|
||||
|
||||
## Session 56 — 2026-02-19 08:00 UTC (Morning Session)
|
||||
- **BUG-076 RESOLVED: Both K3s nodes healthy**
|
||||
- k3s-w2 recovered (investor rebooted). Both w1 and w2 Ready.
|
||||
|
|
|
|||
|
|
@ -2,25 +2,25 @@
|
|||
"phase": 1,
|
||||
"phaseLabel": "Build Production-Grade Product",
|
||||
"status": "launch-ready",
|
||||
"product": "DocFast — HTML/Markdown to PDF API",
|
||||
"currentPriority": "All systems green. HA restored. CI/CD fixed. Gzip compression deployed. Proactive improvements ongoing.",
|
||||
"product": "DocFast \u2014 HTML/Markdown to PDF API",
|
||||
"currentPriority": "Git push blocked (BUG-077). 4 code fixes prepared locally. Need Forgejo SSH or write token.",
|
||||
"ownerDirectives_PRIORITY": "Process these IN ORDER. Do not skip.",
|
||||
"ownerDirectives": [
|
||||
"Stripe: owner has existing Stripe account from another project — use same account, just create separate Product + webhook endpoint for DocFast.",
|
||||
"Stripe Product ID for DocFast: prod_TygeG8tQPtEAdE — webhook handler must filter by this product_id to ignore events from other projects on the same Stripe account.",
|
||||
"OFF-SITE BACKUPS: BorgBackup installed and running locally. Need Hetzner Storage Box for true off-site. Ask investor to provision one (~€3/mo for 100GB).",
|
||||
"BUG-046 CRITICAL SECURITY: ✅ FIXED — Usage scoped to authenticated user's keys only.",
|
||||
"BUG-047: ✅ FIXED — Copy button added to Pro key success page.",
|
||||
"BUG-048: ✅ FIXED — Change email links fixed.",
|
||||
"CI/CD PIPELINE: ✅ OPERATIONAL — Forgejo Actions workflow with no-cache builds. Push main→staging, tag v*→prod.",
|
||||
"REPRODUCIBLE INFRASTRUCTURE: ✅ DONE.",
|
||||
"PRO PLAN LIMITS: ✅ DONE — 5,000 PDFs/month at €9/mo. Landing page, JSON-LD, Stripe all consistent.",
|
||||
"STATUS PAGE: ✅ DONE — Styled /status page live.",
|
||||
"SUPPORT EMAIL LIVE: ✅ DONE — support@docfast.dev in FreeScout.",
|
||||
"BUG-049 HIGH: ✅ FIXED — Stripe invoicing enabled.",
|
||||
"WEBSITE TEMPLATING: ✅ DONE.",
|
||||
"BUG-070 CRITICAL: ✅ FIXED — Stripe cancellation webhook handler fixed.",
|
||||
"CI/CD CACHE FIX: ✅ FIXED (Session 56) — Added no-cache:true to docker build. Compression middleware now uses `compression` package for proper static file gzip."
|
||||
"Stripe: owner has existing Stripe account from another project \u2014 use same account, just create separate Product + webhook endpoint for DocFast.",
|
||||
"Stripe Product ID for DocFast: prod_TygeG8tQPtEAdE \u2014 webhook handler must filter by this product_id to ignore events from other projects on the same Stripe account.",
|
||||
"OFF-SITE BACKUPS: BorgBackup installed and running locally. Need Hetzner Storage Box for true off-site. Ask investor to provision one (~\u20ac3/mo for 100GB).",
|
||||
"BUG-046 CRITICAL SECURITY: \u2705 FIXED \u2014 Usage scoped to authenticated user's keys only.",
|
||||
"BUG-047: \u2705 FIXED \u2014 Copy button added to Pro key success page.",
|
||||
"BUG-048: \u2705 FIXED \u2014 Change email links fixed.",
|
||||
"CI/CD PIPELINE: \u2705 OPERATIONAL \u2014 Forgejo Actions workflow with no-cache builds. Push main\u2192staging, tag v*\u2192prod.",
|
||||
"REPRODUCIBLE INFRASTRUCTURE: \u2705 DONE.",
|
||||
"PRO PLAN LIMITS: \u2705 DONE \u2014 5,000 PDFs/month at \u20ac9/mo. Landing page, JSON-LD, Stripe all consistent.",
|
||||
"STATUS PAGE: \u2705 DONE \u2014 Styled /status page live.",
|
||||
"SUPPORT EMAIL LIVE: \u2705 DONE \u2014 support@docfast.dev in FreeScout.",
|
||||
"BUG-049 HIGH: \u2705 FIXED \u2014 Stripe invoicing enabled.",
|
||||
"WEBSITE TEMPLATING: \u2705 DONE.",
|
||||
"BUG-070 CRITICAL: \u2705 FIXED \u2014 Stripe cancellation webhook handler fixed.",
|
||||
"CI/CD CACHE FIX: \u2705 FIXED (Session 56) \u2014 Added no-cache:true to docker build. Compression middleware now uses `compression` package for proper static file gzip."
|
||||
],
|
||||
"launchChecklist": {
|
||||
"emailVerificationReal": true,
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
"rateLimitsDataBacked": true,
|
||||
"landingPageHonest": true,
|
||||
"legalPages": true,
|
||||
"legalPagesNote": "Impressum, Privacy Policy, Terms of Service — all live",
|
||||
"legalPagesNote": "Impressum, Privacy Policy, Terms of Service \u2014 all live",
|
||||
"euHostingMarketed": true,
|
||||
"jsDisabledInPdf": true,
|
||||
"zeroConsoleErrors": true,
|
||||
|
|
@ -45,7 +45,7 @@
|
|||
"securityAuditPassed": true,
|
||||
"healthEndpointComplete": true,
|
||||
"cicdPipeline": true,
|
||||
"cicdPipelineNote": "Forgejo Actions with no-cache builds. Push main→staging, tag v*→prod. Fixed session 56.",
|
||||
"cicdPipelineNote": "Forgejo Actions with no-cache builds. Push main\u2192staging, tag v*\u2192prod. Fixed session 56.",
|
||||
"reproducibleInfra": true,
|
||||
"proLimitsSet": true,
|
||||
"proLimitsNote": "5,000 PDFs/month for Pro. Enforced in usage middleware.",
|
||||
|
|
@ -80,17 +80,23 @@
|
|||
},
|
||||
"credentials": {
|
||||
"file": "/home/openclaw/.openclaw/workspace/.credentials/docfast.env",
|
||||
"keys": ["HETZNER_API_TOKEN", "STRIPE_SECRET_KEY", "STRIPE_WEBHOOK_SECRET"],
|
||||
"keys": [
|
||||
"HETZNER_API_TOKEN",
|
||||
"STRIPE_SECRET_KEY",
|
||||
"STRIPE_WEBHOOK_SECRET"
|
||||
],
|
||||
"NEVER_READ_DIRECTLY": true
|
||||
},
|
||||
"openBugs": {
|
||||
"CRITICAL": [],
|
||||
"HIGH": [],
|
||||
"HIGH": [
|
||||
"BUG-077: Forgejo SSH port 2222 down + API token lacks write:repository scope"
|
||||
],
|
||||
"MEDIUM": [],
|
||||
"LOW": [],
|
||||
"note": "Session 56: All bugs resolved. BUG-076 (node down) resolved — both nodes healthy. CI/CD cache bug fixed. Compression deployed."
|
||||
"note": "Session 57: Git push blocked. Changes ready locally."
|
||||
},
|
||||
"blockers": [],
|
||||
"startDate": "2026-02-14",
|
||||
"sessionCount": 56
|
||||
}
|
||||
"sessionCount": 57
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue