52c0baedf5
Validate Flux manifests / kustomize-build (pull_request) Failing after 25s
ROADMAP.md (#156): - Phase 0: mark cluster audit done (issue #36 ✅) - Phase 4: mark VIN Decoder metrics + Grafana dashboard done (issue #129 ✅) - Phase 5: mark docs-site skeleton (#28 ✅), CI pipeline (#29 #38 #85 ✅), and SEO blog posts (#39 #124 ✅) as complete - Phase 6: mark legal docs (ToS, Privacy Policy, AUP) done (#40 #89 ✅) STATUS.md (#158): - Update last-updated date to 2026-06-01 - Add Current Blockers section (as of 2026-06-01) with dependency-ordered P1 list - Add Sprint Summary section: issues closed (#145-#154), opened (#150 #151 #156 #157 #158) - Update VIN Decoder blockers: #129 marked closed, #126 added - Add new Completed This Cycle entry for 2026-06-01 kustomize build flux/ = PASS
3.1 KiB
3.1 KiB
api-company Roadmap
Cross-repo milestones. Per-API phases live in each API repo's ROADMAP.md.
As of 2026-05-30, a 4th API (VIN Decoder) has been added. Per-API phases also live in
leeworks-agents/vin-decoder.
Phase 0 — Orientation (one-time)
- Audit cluster: nodes, namespaces, ingress, Flux state →
docs/cluster-audit.md(issue #36 — closed ✅) - Add Flux GitRepository + Kustomization watching
leeworks-agents/api-company - Deploy
gitea-act-runnerin cluster via Flux HelmRelease (flux/gitea-runner/) - Stand up
registry.leeworks.dev(container registry) — required before any API CI works
Phase 1 — API Contracts
Each API repo writes its openapi.yaml first and lints it. Spec is the source of truth.
- See:
leeworks-agents/zip-enrichment,holidays,air-quality,vin-decoder
Phase 2 — Data
Per-API: pull free public data sources, cache locally (SQLite or in-memory), schedule monthly re-seed.
- VIN Decoder: NHTSA vPIC as data source — SQLite cache seeded on demand (issue #120)
Phase 3 — Servers
Per-API: implement Fastify/FastAPI service matching openapi.yaml exactly. RapidAPI proxy-secret middleware on every route.
- VIN Decoder: Fastify server implementation (issue #121)
Phase 4 — Monitoring
- Prometheus + Grafana via Flux HelmRelease (
flux/monitoring/) - Gatus public status page at
status.leeworks.dev - Instrument every API with
api_requests_total,api_response_duration_seconds,api_data_freshness_seconds - VIN Decoder metrics instrumentation + Grafana dashboard (issue #129 — closed ✅)
- VIN Decoder Gatus health check (issue #134 — closed ✅)
Phase 5 — Documentation site
docs-site/Astro + Redoc skeleton (issue #28 — closed ✅)- Gitea Actions pipeline that copies per-API
openapi.yamlfiles at build time (issues #29 ✅, #38 ✅, #85 ✅) - Deploy to
docs.leeworks.devvia Flux - One SEO blog post per API minimum (issues #39 ✅ — ZIP/Holidays/AirQuality, #124 ✅ — VIN Decoder)
- VIN Decoder docs page (issue #123 — closed ✅)
- VIN Decoder SEO blog post (issue #124 — closed ✅)
Phase 6 — Pre-launch
docs/legal/terms-of-service.md(issue #40 — closed ✅)docs/legal/privacy-policy.md(issue #40 — closed ✅)docs/legal/acceptable-use-policy.md(issues #40 ✅, #89 ✅)- DNS:
zip.leeworks.dev,holidays.leeworks.dev,aqi.leeworks.dev,docs.,status.,registry. - VIN Decoder DNS
vin.leeworks.dev(issue #130 — closed ✅) - VIN Decoder RapidAPI listing (issue #131 — closed ✅ as tracker; operator action required)
- PayPal linked to RapidAPI (manual, on 18th birthday)
- Paid tiers enabled on RapidAPI listings (manual)
Revenue target
$100/mo net ≈ $136/mo gross after RapidAPI 25% + PayPal ~2%.
| Plan baseline | Subs needed for net $100/mo |
|---|---|
| 15 Basic @ $9 | $122 net |
| 7 Pro @ $19 | $97 net |
| 3 Ultra @ $49 | $107 net |
(Per-API rough math; mix-and-match across all 4 APIs — ZIP Enrichment, Holidays, Air Quality, VIN Decoder.)