Spectron does not treat “delete record” as the primary way to retire a belief. Memories are superseded or aged; three clocks answer three different questions.
To put this in concrete terms, take the same sentences about a cat:
| Sentence | What you need to remember | Clocks and fields |
|---|---|---|
| “I have a cat.” | True for this person now | Valid time includes today; scoped to the speaker |
| “I saw a cat last night.” | A past encounter, still tied to the speaker | Valid time on the night in question; episodic source turn |
| “House cats weigh about 4 kg.” | A general fact, not “about me” | Broader scope; may come from a document (known time = when you ingested it) |
| “I used to have a cat.” | Was true, is not now | Supersession: prior “has cat” gets valid_until; history stays queryable |
Humans do this without thinking. Spectron makes it explicit so agents – and auditors – can answer “what did we believe, when, and on what evidence?” without guessing from similar-looking chunks.
The three clocks
| Clock | What it is | Answers | Example |
|---|---|---|---|
| System time | SurrealDB MVCC history – every write keeps a versioned record; you can reconstruct database state at an instant. | “What did the database contain at instant T?” | “What did we store about UK head of state on 8 September 2022?” (still “Prince Charles” in a snapshot taken that morning.) |
| Known time | When Spectron first recorded a belief; as_of walks supersession chains. | “When did we first believe this?” | “When did we first store that Charles became King Charles III?” (likely 8 September 2022, even if the user mentioned it days later.) |
| Valid time | When the fact held in the real world, via valid_from / valid_until. | “When was this true?” | Napoleon: valid time roughly 15 August 1769 – 5 May 1821; your assistant might only learn his birth year in a school chat years later – that learning moment is known time, not valid time. |
Document facts may carry a valid_from long before upload (e.g. policy effective date). Conversational facts usually anchor to turn time unless you supply otherwise.
What you get in practice
Time-travel queries on previous database states – without stitching together your own application tables.
as_ofqueries – belief-level history over supersession chains, indexed for retrieval.Supersession chains – prior beliefs stay addressable with
valid_untilset; you can see how “Prince of Wales” became “King Charles III”.Aging, not deletion – stale observations can be marked superseded with a reason in provenance rather than erased.
forgetas a first-class verb – explicit user-driven removal, distinct from aging.
Together with provenance and the single reconciler (Eight pillars), this supports a defensible audit story: unwind any current fact to what it replaced, to the source that produced it, and to the exact quote in that source – and rewind the database by system time while still querying belief history on known time.
Field-level detail: Temporal validity and Reconciliation and supersession.