28 lines
825 B
Markdown
28 lines
825 B
Markdown
|
|
---
|
||
|
|
id: "0006"
|
||
|
|
date: 2026-03-01
|
||
|
|
status: Accepted
|
||
|
|
supersedes:
|
||
|
|
superseded-by:
|
||
|
|
affected-paths: [taskq/logging.py, taskq/execution.py]
|
||
|
|
affected-components: [logging, execution]
|
||
|
|
---
|
||
|
|
|
||
|
|
# 0006 — All job state transitions logged to audit trail for compliance
|
||
|
|
|
||
|
|
## Context
|
||
|
|
|
||
|
|
No record of who/when changed job status for audit/compliance reporting.
|
||
|
|
|
||
|
|
## Decision
|
||
|
|
|
||
|
|
Every job state change (enqueue, start, success, failure, escalate) logged to immutable audit trail with timestamp, user (if applicable), and reason. Audit trail never deleted, only archived.
|
||
|
|
|
||
|
|
## Consequences
|
||
|
|
|
||
|
|
Strong audit trail. Extra logging overhead. Requires cleanup/archival process for large deployments. Larger on-disk footprint.
|
||
|
|
|
||
|
|
## Alternatives rejected
|
||
|
|
|
||
|
|
Ad-hoc logging rejected: inconsistent, missed events. Centralized event store rejected: external dependency.
|