Allow undated reconstructed events

This commit is contained in:
2026-08-14 19:57:22 +02:00
parent 703b9652c9
commit d99deb3c06
10 changed files with 60 additions and 17 deletions
+3 -3
View File
@@ -148,7 +148,7 @@ CREATE TABLE osint.event_exhibits (
exhibit_id UUID PRIMARY KEY REFERENCES osint.exhibits(id) ON DELETE CASCADE,
title TEXT NOT NULL,
narrative_text TEXT NOT NULL,
occurred_at TIMESTAMPTZ NOT NULL
occurred_at TIMESTAMPTZ
);
```
@@ -159,10 +159,10 @@ The service validates that every base exhibit has exactly one subtype row matchi
An event is an investigator-authored assertion: **“this happened.”** It is not source evidence and must not silently inherit a document's publication time.
- `narrative_text` states what the investigator believes happened.
- `occurred_at` places that assertion in reconstructed time.
- Nullable `occurred_at` places that assertion in reconstructed time when known. It must never inherit the exhibit's creation timestamp.
- One event may cite several supporting exhibits.
- One exhibit may support several events.
- Events ordered by `occurred_at` form the emerging case narrative; there is no duplicated story-text record.
- Dated events ordered by `occurred_at` form the temporal narrative. Undated events remain visible in the reconstructed story without affecting the timeline range; there is no duplicated story-text record.
Supporting evidence is an explicit normalized relationship: