docfast: session 58 — 12 a11y/SEO fixes deployed, old server down (BUG-078)
This commit is contained in:
parent
a1d9d89323
commit
16ab054222
3 changed files with 61 additions and 5 deletions
|
|
@ -1,3 +1,17 @@
|
||||||
|
## BUG-078: Old Server Down — SMTP Relay + CI Runner Broken
|
||||||
|
- **Date:** 2026-02-19 14:09 UTC
|
||||||
|
- **Severity:** CRITICAL
|
||||||
|
- **Issue:** Old server (167.235.156.214) is completely unreachable — 100% packet loss. This server runs:
|
||||||
|
1. **Postfix SMTP relay** with DKIM for docfast.dev — ALL signup verification and key recovery emails route through it
|
||||||
|
2. **Forgejo Actions CI runner** — CI jobs stuck in "pending", no new images built
|
||||||
|
- **Impact:**
|
||||||
|
- New signups CANNOT receive verification emails → no new customers
|
||||||
|
- Code changes cannot be built/deployed through CI pipeline
|
||||||
|
- Commit 37386bf stuck in pending CI
|
||||||
|
- **Workaround:** Production manually updated to fb05989 image (accessibility fixes). But no email capability.
|
||||||
|
- **Fix needed:** Investor must reboot old server via Hetzner Console. Long-term: migrate SMTP to K3s cluster and CI runner to K3s.
|
||||||
|
- **Status:** OPEN — escalated to investor
|
||||||
|
|
||||||
## BUG-077: Cannot Push Code — Forgejo SSH Down + Token Lacks Write Scope
|
## BUG-077: Cannot Push Code — Forgejo SSH Down + Token Lacks Write Scope
|
||||||
- **Date:** 2026-02-19 13:15 UTC
|
- **Date:** 2026-02-19 13:15 UTC
|
||||||
- **Severity:** HIGH
|
- **Severity:** HIGH
|
||||||
|
|
|
||||||
|
|
@ -1404,3 +1404,41 @@
|
||||||
**Action needed from investor:**
|
**Action needed from investor:**
|
||||||
1. **Option A (quickest):** Log into Forgejo (git.cloonar.com) → Settings → Applications → Create token with `write:repository` scope → Update `FORGEJO_TOKEN` in `.credentials/services.env`
|
1. **Option A (quickest):** Log into Forgejo (git.cloonar.com) → Settings → Applications → Create token with `write:repository` scope → Update `FORGEJO_TOKEN` in `.credentials/services.env`
|
||||||
2. **Option B:** Register the deploy key (SSH public key from `/tmp/docfast_key.pub` on k3s-mgr) in the docfast repo's deploy keys with write access
|
2. **Option B:** Register the deploy key (SSH public key from `/tmp/docfast_key.pub` on k3s-mgr) in the docfast repo's deploy keys with write access
|
||||||
|
|
||||||
|
## Session 58 — 2026-02-19 14:09 UTC (Afternoon Session)
|
||||||
|
- **ACCESSIBILITY + SEO FIXES DEPLOYED TO PRODUCTION:**
|
||||||
|
- Frontend dev agent completed commit fb05989 with 12 bug fixes
|
||||||
|
- Deployed to staging via CI, verified, then manually set production image (CI runner down)
|
||||||
|
- Fixes verified on production:
|
||||||
|
- BUG-062 ✅ `<main>` now wraps all content (hero through pricing)
|
||||||
|
- BUG-063 ✅ EU heading changed from h3 to h2
|
||||||
|
- BUG-064 ✅ All modal inputs have aria-label attributes
|
||||||
|
- BUG-065 ✅ Close buttons have aria-label="Close"
|
||||||
|
- BUG-066 ✅ Modals have aria-modal="true"
|
||||||
|
- BUG-067 ✅ Skip-to-content with id="main-content" on main
|
||||||
|
- BUG-068 ✅ Hash detection for #change-email in app.js
|
||||||
|
- BUG-057 ✅ JSON-LD Pro description matches page
|
||||||
|
- BUG-059 ✅ /docs page gets twitter:image meta
|
||||||
|
- BUG-055 ℹ️ No duplicates found (already clean)
|
||||||
|
- BUG-056 ℹ️ Sitemap already correct (sitemaps.org)
|
||||||
|
- BUG-058 ℹ️ twitter:image already present on homepage
|
||||||
|
- BUG-051/052 ALSO RESOLVED: Duplicate HTTP headers gone on production
|
||||||
|
- **CRITICAL: OLD SERVER (167.235.156.214) DOWN (BUG-078):**
|
||||||
|
- Completely unreachable — SSH timeout
|
||||||
|
- SMTP relay broken → NO signup verification emails can be sent
|
||||||
|
- Forgejo Actions CI runner was on this server → CI jobs stuck in "pending"
|
||||||
|
- Commit 37386bf (from backend agent) in repo but CI can't build it
|
||||||
|
- **New signups are BLOCKED until server is back**
|
||||||
|
- **BUG-077 STILL OPEN:** Forgejo SSH port 2222 also down
|
||||||
|
- **Support:** Zero open tickets ✅
|
||||||
|
- **Production health:** All pods running, 2 workers healthy, DB good, ~135ms response
|
||||||
|
- **Investor Test:**
|
||||||
|
1. Trust with money? ⚠️ No — email verification broken, can't onboard new customers
|
||||||
|
2. Data loss on crash? ✅ No
|
||||||
|
3. Free tier abuse? ✅ Rate limited
|
||||||
|
4. Lost key recovery? ⚠️ No — recovery emails can't send
|
||||||
|
5. Features match website? ✅ Yes
|
||||||
|
- **Budget:** €181.71 remaining, Revenue: €9
|
||||||
|
- **Open bugs:** 1 CRITICAL (BUG-078 server down), 1 HIGH (BUG-077 git access)
|
||||||
|
- **Status:** NOT LAUNCH-READY — email infrastructure down. Existing customers unaffected (API works), but no new signups possible.
|
||||||
|
- **Escalation:** Investor must reboot old server via Hetzner Console. Long-term: migrate SMTP + CI to K3s cluster to eliminate single point of failure.
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
"phaseLabel": "Build Production-Grade Product",
|
"phaseLabel": "Build Production-Grade Product",
|
||||||
"status": "launch-ready",
|
"status": "launch-ready",
|
||||||
"product": "DocFast \u2014 HTML/Markdown to PDF API",
|
"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.",
|
"currentPriority": "CRITICAL: Old server down → SMTP broken (no emails) + CI runner dead. 12 accessibility/SEO bugs fixed on production. Need old server rebooted.",
|
||||||
"ownerDirectives_PRIORITY": "Process these IN ORDER. Do not skip.",
|
"ownerDirectives_PRIORITY": "Process these IN ORDER. Do not skip.",
|
||||||
"ownerDirectives": [
|
"ownerDirectives": [
|
||||||
"Stripe: owner has existing Stripe account from another project \u2014 use same account, just create separate Product + webhook endpoint for DocFast.",
|
"Stripe: owner has existing Stripe account from another project \u2014 use same account, just create separate Product + webhook endpoint for DocFast.",
|
||||||
|
|
@ -88,15 +88,19 @@
|
||||||
"NEVER_READ_DIRECTLY": true
|
"NEVER_READ_DIRECTLY": true
|
||||||
},
|
},
|
||||||
"openBugs": {
|
"openBugs": {
|
||||||
"CRITICAL": [],
|
"CRITICAL": [
|
||||||
|
"BUG-078: Old server (167.235.156.214) down — SMTP relay broken (no emails) + CI runner dead"
|
||||||
|
],
|
||||||
"HIGH": [
|
"HIGH": [
|
||||||
"BUG-077: Forgejo SSH port 2222 down + API token lacks write:repository scope"
|
"BUG-077: Forgejo SSH port 2222 down + API token lacks write:repository scope"
|
||||||
],
|
],
|
||||||
"MEDIUM": [],
|
"MEDIUM": [],
|
||||||
"LOW": [],
|
"LOW": [],
|
||||||
"note": "Session 57: Git push blocked. Changes ready locally."
|
"note": "Session 58: 12 a11y/SEO bugs fixed on prod. Old server down breaks email + CI."
|
||||||
},
|
},
|
||||||
"blockers": [],
|
"blockers": [
|
||||||
|
"Old server reboot needed (investor action) — SMTP + CI depend on it"
|
||||||
|
],
|
||||||
"startDate": "2026-02-14",
|
"startDate": "2026-02-14",
|
||||||
"sessionCount": 60
|
"sessionCount": 58
|
||||||
}
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue