Skip to content

Branchable temporal records with explainable history #359

Closed

Description

@techmahedy

Area: Database\Temporal, model queries, migrations

Problem

Doppar already supports querying temporal data at a point in time, but teams
cannot safely compare proposed changes, explain who changed a record, or revert
one version without manually copying rows.

Proposal

Extend temporal models with named branches, version diffs, and a guarded
restoreVersion() operation. Keep the existing temporal table format as the
default and make branch metadata opt-in.

Acceptance criteria

  • A branch can be created from a selected timestamp and queried independently.
  • Diffs identify changed attributes while respecting casts and hidden fields.
  • Restoring a version creates a new version; it never rewrites history.
  • SQLite, MySQL, and PostgreSQL behavior is covered where supported.

Make temporal persistence useful for business workflows, not only historical reads: history stays immutable and proposed state is safely reviewable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

featnew feature

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions