Snapshot & Temporal Reporting – Technical Oversight Proposal

Purpose

This document outlines the proposed technical direction for introducing governed snapshot reporting into the CDM-based Data Warehouse, while preserving the existing temporal and dynamic reporting capabilities.

The intention is to support:

  • reproducible period-end reporting
  • certified business reporting positions
  • operational replay (asat)
  • lightweight governance-driven overrides
  • platform-independent reporting consumption

without reverting to large static snapshot table architectures.


Existing Temporal Capability

The CDM already supports temporal replay using effective-dated rows.

Core temporal fields:

FieldPurpose
ACTIVE_FLAGCurrent active row
CREATED_DATERow became valid
EXPIRED_DATERow superseded

This allows:

  • current reporting
  • historical replay
  • change tracking
  • lifecycle analysis
  • temporal reconstruction

Example asat logic:

CREATED_DATE <= @asAtDate
AND (
    EXPIRED_DATE IS NULL
    OR EXPIRED_DATE >= @asAtDate
)

This remains the primary historical engine.


Reporting Modes

The warehouse now conceptually supports four reporting modes:

ModePurpose
currentLatest active operational position
historyFull temporal history
asatReconstructed operational state at a specific date
snapshotCertified reporting position

Snapshot Design Principle

Snapshots should act as:

  • governance artefacts
  • reporting certification references
  • temporal replay anchors

Snapshots should not become full duplicated copies of all reporting tables unless absolutely necessary for performance or legal retention.

The preferred approach is:

  • reconstruct historical state dynamically
  • apply lightweight snapshot governance overlays where required

Snapshot Registry

Proposed warehouse table:

snapshot_registry

Example structure:

ColumnPurpose
SNAPSHOT_IDUnique reporting snapshot
PERIODReporting period
SNAPSHOT_TYPEDraft / Final / Forecast etc
ASAT_DATETemporal replay date
STATUSDraft / Approved / Retired
CREATED_UTCSnapshot creation date
APPROVED_BYGovernance approval
NOTESOptional comments

Example:

SNAPSHOT_IDPERIODASAT_DATE
P06_FINAL2026-P062026-03-31

Snapshot Replay Flow

Step 1 – Report selects snapshot

Example:

P06_FINAL

Step 2 – Snapshot resolves temporal context

ASAT_DATE = 2026-03-31

Step 3 – get.myview executes in asat mode

Equivalent internal execution:

EXEC get.myview
    @mode = 'asat',
    @asAtDate = '2026-03-31'

Snapshot Override Philosophy

The proposal intentionally avoids:

  • mutating base temporal history
  • rewriting CREATED_DATE
  • modifying operational lineage

Instead, snapshot-specific interpretation rules are layered above the base temporal model.


Snapshot Temporal Override Rules

Proposed table:

snapshot_temporal_override

Purpose:

Allow approved late-arriving or certified rows to satisfy a snapshot replay position without altering source history.


Example Structure

ColumnPurpose
SNAPSHOT_IDReporting snapshot
OBJECT_SEQBusiness object
ATTRIBUTEMetadata attribute
APPROVED_ROW_CHECKSUMApproved row/version
REPORTING_EFFECTIVE_DATESnapshot-effective interpretation date
REASONGovernance explanation
APPROVED_BYApproval trace
CREATED_UTCAudit timestamp

Override Interpretation

The override table does not hold replacement values directly.

Instead it stores:

  • approved equivalence rules
  • approved future row references
  • snapshot interpretation metadata

Example:

SNAPSHOT_IDOBJECT_SEQATTRIBUTEAPPROVED_ROW_CHECKSUM
P06_FINALD1001STATUS0xAB1234

Meaning:

“For snapshot P06_FINAL, this later-arriving row/version is approved to represent the certified reporting position.”


Replay Precedence Logic

Snapshot replay should follow:

1. Attempt standard asat reconstruction
2. Check snapshot temporal override rules
3. If approved future-equivalent row exists:
       prefer approved row
4. Suppress superseded temporal row
5. Return one certified reporting value

Important Governance Principle

The warehouse must preserve both:

Truth TypePurpose
Operational truthWhat the source system recorded
Reporting truthWhat the business certified

These must remain separable.


Platform Independence

The Data Warehouse remains the canonical source of truth.

Applications remain presentation/workflow layers only.

LayerResponsibility
DWHTemporal logic, snapshot registry, overrides
WordPress / Workflow UIApproval workflow and governance
Power BIReporting consumption
APIsIntegration

This preserves:

  • application independence
  • governance traceability
  • auditability
  • long-term platform flexibility

Recommended Initial Scope

Initial pilot implementation should focus on:

  • Project Portfolio
  • Resource Forecasting
  • Headcount / Workforce reporting

using:

  • current
  • asat
  • snapshot

comparisons to validate business interpretation and replay consistency.

Leave a Comment