agent-company a615b7ebfd feat: implement docs-site, legal docs, metrics standard, flux manifests
Closes leeworks-agents/api-company#5  (docs-site Astro scaffold)
Closes leeworks-agents/api-company#9  (metrics instrumentation standard)
Closes leeworks-agents/api-company#10 (Gitea Actions openapi aggregation pipeline)
Closes leeworks-agents/api-company#11 (docs-site Flux HelmRelease)
Closes leeworks-agents/api-company#12 (SEO blog posts x3)
Closes leeworks-agents/api-company#13 (legal docs ToS/Privacy/AUP)
Closes leeworks-agents/api-company#14 (DNS documentation)

## Changes

### docs/legal/
- terms-of-service.md — API usage, liability, account termination, governing law
- privacy-policy.md — request log retention (90d), no PII sold, data sharing
- acceptable-use-policy.md — rate limit abuse, scraping prohibition, resale ban

### docs/metrics-standard.md
- Defines api_requests_total, api_response_duration_seconds, api_data_freshness_seconds
- Fastify (TypeScript) and FastAPI (Python) reference middleware implementations
- Prometheus scrape config and Grafana dashboard guidance

### docs/registry.md
- Decision: use Gitea built-in container registry (no new infra)
- Image naming convention, auth, Kubernetes imagePullSecrets, ingress config

### docs/dns.md
- Required A records for all 6 subdomains
- cert-manager ClusterIssuer and Ingress TLS examples
- Verification commands and human-operator action items

### docs-site/
- Astro 4 + MDX + sitemap scaffold
- Base layout with nav linking all APIs, blog, RapidAPI, status
- Landing page with API cards
- Per-API Redoc viewer pages (zip-enrichment, holidays, air-quality)
- Blog index + 3 SEO blog posts (~1000 words each with JSON-LD)
- Dockerfile (multi-stage: node build + nginx serve)
- nginx.conf with gzip, caching, health endpoint

### flux/
- gitea-runner/: gitea-act-runner HelmRelease (org-scope, dind)
- monitoring/: kube-prometheus-stack + Gatus HelmReleases
  - Prometheus with pod annotation scraping
  - Grafana at grafana.leeworks.dev with persistence
  - Gatus status page at status.leeworks.dev, 90-day retention
- docs-site/: Deployment + Service + Ingress via raw chart
- api-company-source/: GitRepository + Kustomization reference manifests
- kustomization.yaml: root kustomize entry point (build validated)

### .gitea/workflows/build-docs.yaml
- Aggregates openapi.yaml from zip-enrichment, holidays, air-quality repos
- Builds Astro docs-site
- Pushes image to registry.leeworks.dev/leeworks-agents/docs-site
- Triggered on push to main, schedule daily 02:00 UTC, workflow_dispatch
2026-05-24 23:20:33 +00:00
2026-05-18 17:18:47 -04:00
2026-05-18 17:18:47 -04:00
2026-05-18 17:18:47 -04:00

api-company

Meta-repo for the leeworks-apis recursive build loop. This repo holds cross-cutting concerns; the actual APIs each live in their own repo.

Sibling repos

Repo Purpose Status
leeworks-agents/zip-enrichment US ZIP code enrichment (Census ACS + HUD-USPS) Phase 1
leeworks-agents/holidays Public holidays and business days Phase 1
leeworks-agents/air-quality AQI + pollen + forecast Phase 1

What lives here

  • MASTER_BUILD_PROMPT.md — the prime directive driving the build loop
  • ROADMAP.md — cross-repo milestones (Phase 06)
  • STATUS.md — living revenue + infra scorecard
  • SESSION_LOG.md — append-only log of agent work sessions
  • research/RESEARCH_LOG.md — market research findings, candidate API ideas
  • flux/ — cluster-level Flux manifests (registry, runner, monitoring, docs-site)
  • monitoring/ — Prometheus, Grafana, Gatus configs
  • docs-site/ — Astro + Redoc site at docs.leeworks.dev

How this gets worked on

The agent-company Kubernetes deployment in 0xWheatyz/Talos runs three crons every 5 hours:

  • /manager discovers agent-ready issues here and in each API repo, fans out @repo-manager subagents
  • /sprint reads ROADMAP.md and breaks down the next phase into new issues
  • /ship merges approved PRs and creates upstream PRs to 0xWheatyz forks

Goal: $100/mo net revenue via RapidAPI marketplace listings.

S
Description
Meta-repo for the leeworks-apis recursive build loop. Cross-API roadmap, monitoring, docs-site, registry, Flux configs.
Readme 922 KiB
Languages
MDX 54.1%
Astro 30.2%
JavaScript 8.7%
Shell 6.4%
Dockerfile 0.6%