cc-os/plugins/os-adr/eval/fixture/legacy-project/DECISIONS.md

837 B

Decisions Log

ADR-1 — Use Redis for the job queue

Why: We needed a queue that survives process restarts. The in-memory array we started with lost jobs on every deploy.

Decision: All background jobs go through Redis lists via the Worker class. SETTLED.

We looked at beanstalkd but nobody on the team had operated it, and at Postgres-based queues but we did not want polling load on the main database.

ADR-2 — Ship as a single container

Why: Deploys kept drifting between the app host and the worker host.

Decision: App and worker ship in one container image; the entrypoint picks the role. SETTLED.

ADR-3 — Job payload schema versioning

Why: A payload shape change stranded old jobs in the queue.

Decision: OPEN — leaning toward an integer v field in every payload, not decided yet.