Skip to content

ADR 0009: Persisted Report Runs

Context

BooksPlus reports should be traceable when they support review, close, audit, or management decisions.

A live report view answers a current question, but it does not by itself preserve who ran the report, when it was run, which period or as-of date it covered, or what values were reviewed at that time.

Decision

BooksPlus should support persisted report runs for standard accounting reports.

A report run records an execution of a report definition with its parameters, actor, capture time, summary, and durable snapshot payload.

Initial report definitions may include:

  • trial balance;
  • balance sheet;
  • income statement.

Rules

  • Formal accounting reports derive from canonical ledger truth.
  • Draft or unposted workflow records must not become report truth.
  • A report run must preserve the report definition, as-of date or covered period, actor, generated-at timestamp, and snapshot payload.
  • Report snapshots used for close review should be stored or referenced durably.
  • Report rendering is presentation behavior; report run identity and snapshot meaning belong to Reporting.
  • Close may consume report runs or report snapshots, but Reporting owns report definition and report execution meaning.

Consequences

  • Close packs and audit review can refer to stable report artifacts.
  • Users can distinguish a live report from a report that was captured for review.
  • Report execution can become attributable without overbuilding a full report catalog immediately.