Infrastructure Decisions
Six Open Questions
These are real decisions we haven’t made yet. Each one has trade-offs we’re still weighing.
-
GitHub Actions Runners — We’re burning through hosted minutes on CI builds. Self-hosted runners on the droplet would be free but introduce maintenance burden and security surface. Is the cost saving worth the operational risk at our scale?
-
Convex Hosting — Convex runs as a Docker sidecar alongside our stack. It needs a daily restart to stay healthy, which is fragile. A managed Convex instance would eliminate that, but we’d lose the data locality and self-hosting control we currently have.
-
Monitoring Location — Amber Monitor runs on a Mac via launchd, which means monitoring dies when the laptop sleeps. Moving it to the droplet or a managed service would give us 24/7 coverage, but adds another thing to maintain on already-constrained infrastructure.
-
Droplet Scaling — Everything runs on a single 8GB DigitalOcean droplet. It works today for 5 to 20 users. What’s the trigger for horizontal scaling — memory pressure, concurrent agent sessions, or something else?
-
Docker Socket Proxy — We use a socket proxy in production to limit container access to the Docker API. The current allowlist was set up quickly and needs a proper review, especially now that dev containers create and destroy containers dynamically.
-
Production Deploy Automation — Deploys are triggered manually via GitHub Actions. Before we automate further, we need proper health-check validation after deploy and a tested rollback path. Without those, automation just means failing faster.