docs: add architecture decision records

This commit is contained in:
2026-04-28 10:49:52 +02:00
parent 1eb6aca588
commit aede012d42
4 changed files with 114 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
# ADR-0002: Do Not Add an Async Task Queue Yet
Date: 2026-04-28
## Status
Accepted
## Context
The initial booking flow requires email delivery and QR code generation. These operations are important, but the project does not yet require high-volume background processing, scheduled jobs, retries across many task types, or distributed workers.
Adding Celery, Redis, or another queue would increase deployment and operational complexity for a small theatre company website.
## Decision
Do not use Celery, Redis, or any asynchronous task queue at this stage.
The backend will perform initial email sending and QR code generation synchronously within the Django application, with clear error handling and logging that avoids sensitive data.
## Consequences
- The deployment remains small: Django, PostgreSQL, Angular static assets, and nginx.
- Local development and production operations are easier to understand.
- Email provider latency or outages can affect booking and confirmation responses.
- If email volume, retry needs, or long-running work become a real problem, the project can introduce a task queue later with a new ADR.