1.7 KiB
| title | status | type | priority | created_at | updated_at | parent | blocked_by | |
|---|---|---|---|---|---|---|---|---|
| OpenTofu infra, deployment docs, project docs polish | completed | task | normal | 2026-07-13T02:09:09Z | 2026-07-13T22:38:04Z | pages-77lk |
|
infra/ per design §3/§4.4 mirroring ../quotesdb/infra style: providers.tf (cloudflare provider, variables for account_id/zone_id/api_token), r2.tf (pages bucket), d1.tf (pages database), dns.tf (pages.elijah.run record for worker custom domain or route), rate-limits.tf (rule on POST /api/* and /auth/*), every resource/data block commented. infra/README.md: apply order, wrangler deploy step, wrangler secret put GITHUB_CLIENT_SECRET, D1 schema apply command, GitHub OAuth app setup (callback URL). Update wrangler.toml with route/custom-domain + real binding placeholders and comments. tofu fmt + tofu validate (best effort if provider download blocked — say so). Update docs/PLANNING.md work log + README as needed.
- infra/*.tf with comments
- infra/README.md deployment guide
- wrangler.toml finalized
- tofu fmt/validate attempted, result recorded
- PLANNING.md updated
Summary of Changes
OpenTofu infra + deployment docs by a Sonnet agent; Opus review APPROVE with 2 should-fixes applied:
- infra/{providers,variables,r2,d1,dns,rate-limits}.tf (cloudflare ~> 4, AAAA 100:: placeholder + wrangler-owned route, http_ratelimit ruleset), infra/README.md end-to-end deploy guide, infra/.gitignore.
- Fixes: zone-entrypoint ruleset guidance corrected (one http_ratelimit ruleset per zone on every plan — merging with quotesdb's is mandatory when both apply); unused var.domain removed.
- tofu fmt -check + tofu validate pass; wrangler.toml left with placeholders pending real tofu apply.