---
title: "What is a validity window?"
description: "A validity window is the period during which a stored fact was true, with dates for when the period started and ended. Definition, mechanics, and querying."
canonical: https://past.dev/glossary/validity-window
last-updated: 2026-08-31
---
# Validity window

Source: https://past.dev/glossary/validity-window

A validity window records the period during which a fact was true. It opens when the fact became valid and closes when another fact supersedes it. An open window marks a current fact. Querying windows by date supports current-state answers, historical answers and change tracking.

## Anatomy of a window

- **Opened by** the event that made the fact true, carrying that event's date and source.
- **Closed by** the event that superseded it, through [fact supersession](/glossary/fact-supersession). The closing event dates the end of the window.
- **Open-ended** when nothing has superseded the fact: this is the current value.

Validity windows use event time, which records when a change occurred. Ingestion time separately records when the system received it. [Bitemporal memory](/glossary/bitemporal-memory) stores both.

## What windows make queryable

- Current state: facts with open windows.
- State as of a date: facts whose windows cover the date. This is [point-in-time recall](/glossary/point-in-time-recall).
- Changes in a period: windows that opened or closed during the period.
- Duration questions: the length of a validity period.

## Validity windows in past.dev

Every fact on the [temporal knowledge graph](/glossary/temporal-knowledge-graph) carries a validity window, sources and supersession links. Recall uses open windows for current-state questions and window coverage for historical questions. Returned evidence includes the relevant dates.

`POST /api/v1/ingest` accepts the source record's original timestamp for backfilled data, as documented in the [quickstart](/docs/memory-api/quickstart). The [benchmark method](/benchmarks) includes validity-window tests.

## Common modeling questions

The source determines time precision. A dated email opens a window on its date; a meeting note opens one at the meeting time. Overlapping windows for the same attribute signal a conflict, which past.dev reports as `Conflicted`. Stable facts keep open windows until a change, deletion, or retention rule closes them. This differs from [memory decay](/glossary/memory-decay) policies.

## Frequently asked questions

### Do validity windows require exact timestamps?

No. A window is as precise as its source. A date-only email opens a window at day precision, which is enough for most as-of questions. What matters is preserving the source's own time instead of substituting ingestion time.

## Related

- [Fact supersession](https://past.dev/glossary/fact-supersession)
- [Bitemporal memory](https://past.dev/glossary/bitemporal-memory)
- [Point-in-time recall](https://past.dev/glossary/point-in-time-recall)
- [What is agent memory?](https://past.dev/what-is-agent-memory)
- [Quickstart](https://past.dev/docs/memory-api/quickstart)