Last modified by Robert Schaub on 2025/12/24 20:35

From version 1.2
edited by Robert Schaub
on 2025/11/27 12:03
Change comment: Update document after refactoring.
To version 2.1
edited by Robert Schaub
on 2025/11/27 12:05
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -41,10 +41,10 @@
41 41   (scenarios live at the *claim* level, not per individual phrasing).
42 42  * Verdicts and Scenario–Evidence links are always attached to **versions**:
43 43  * {{code}}SCENARIO_VERSION{{/code}} +
44 - {{code}}EVIDENCE_VERSION{{/code}} →
45 - {{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}}
44 + {{code}}EVIDENCE_VERSION{{/code}} →
45 + {{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}}
46 46  * {{code}}SCENARIO_VERSION{{/code}} →
47 - {{code}}VERDICT_VERSION{{/code}}
47 + {{code}}VERDICT_VERSION{{/code}}
48 48  
49 49  This ensures that when a Scenario or Evidence changes, old verdicts and links
50 50  remain intact as historical records and can be revisited.
... ... @@ -59,124 +59,95 @@
59 59  
60 60  {{mermaid}}
61 61  erDiagram
62 -
63 63   CLAIM_CLUSTER {
64 - string claimClusterId
65 - string theme
66 - string embeddingVectorRef
67 - string language
68 - datetime createdAt
63 + string ClusterID PK
64 + string EmbeddingVectorRef
65 + string Theme
69 69   }
70 70  
71 71   CLAIM {
72 - string claimId
73 - string claimClusterIdFk
74 - string status
75 - datetime createdAt
69 + string ClaimID PK
70 + string ClusterID FK
71 + string Status
72 + datetime CreatedAt
76 76   }
77 77  
78 78   CLAIM_VERSION {
79 - string claimVersionId
80 - string claimIdFk
81 - string text
82 - string language
83 - string claimType
84 - string domain
85 - string authorType
86 - datetime createdAt
76 + string ClaimVersionID PK
77 + string ClaimID FK
78 + string Text
79 + string ClaimType
80 + string Domain
81 + datetime CreatedAt
87 87   }
88 88  
89 89   SCENARIO {
90 - string scenarioId
91 - string claimIdFk
92 - string key
93 - string title
94 - boolean isDeprecated
85 + string ScenarioID PK
86 + string ClaimID FK
87 + string Name
88 + datetime CreatedAt
95 95   }
96 96  
97 97   SCENARIO_VERSION {
98 - string scenarioVersionId
99 - string scenarioIdFk
100 - string versionTag
101 - string definitionsJson
102 - string assumptionsJson
103 - string boundariesJson
104 - string notes
105 - datetime createdAt
92 + string ScenarioVersionID PK
93 + string ScenarioID FK
94 + string Definitions
95 + string Assumptions
96 + string Boundaries
97 + datetime CreatedAt
106 106   }
107 107  
108 108   EVIDENCE {
109 - string evidenceId
110 - string canonicalSourceId
111 - string mainUrl
112 - string evidenceType
113 - string language
101 + string EvidenceID PK
102 + string SourceType
103 + string URL
104 + float ReliabilityScore
114 114   }
115 115  
116 116   EVIDENCE_VERSION {
117 - string evidenceVersionId
118 - string evidenceIdFk
119 - string snapshotLocation
120 - string extractionSummary
121 - string reliabilityModel
122 - datetime collectedAt
123 - datetime createdAt
108 + string EvidenceVersionID PK
109 + string EvidenceID FK
110 + string Summary
111 + float ReliabilityScore
112 + datetime CreatedAt
124 124   }
125 125  
126 126   SCENARIO_EVIDENCE_LINK {
127 - string scenarioEvidenceLinkId
128 - string scenarioIdFk
129 - string evidenceIdFk
116 + string LinkID PK
117 + string ScenarioVersionID FK
118 + string EvidenceVersionID FK
119 + float Relevance
120 + string Direction
130 130   }
131 131  
132 - SCENARIO_EVIDENCE_LINK_VERSION {
133 - string scenarioEvidenceLinkVersionId
134 - string scenarioEvidenceLinkIdFk
135 - string scenarioVersionIdFk
136 - string evidenceVersionIdFk
137 - float relevance
138 - string direction %% SUPPORTS / CONTRADICTS / MIXED / CONTEXT
139 - string rationale
140 - datetime createdAt
141 - }
142 -
143 143   VERDICT {
144 - string verdictId
145 - string scenarioIdFk
146 - string verdictType %% e.g. likelihood, classification
124 + string VerdictID PK
125 + string ScenarioID FK
147 147   }
148 148  
149 149   VERDICT_VERSION {
150 - string verdictVersionId
151 - string verdictIdFk
152 - string scenarioVersionIdFk
153 - float probability
154 - float confidence
155 - string reasoningSummary
156 - string uncertaintyFactorsJson
157 - datetime createdAt
129 + string VerdictVersionID PK
130 + string VerdictID FK
131 + float Verdict
132 + float Confidence
133 + string Reasoning
134 + datetime CreatedAt
158 158   }
159 159  
160 - %% Relationships
161 -
162 162   CLAIM_CLUSTER ||--o{ CLAIM : contains
163 - CLAIM ||--o{ CLAIM_VERSION : has_versions
164 - CLAIM ||--o{ SCENARIO : has_scenarios
165 - SCENARIO ||--o{ SCENARIO_VERSION : has_versions
138 + CLAIM ||--o{ CLAIM_VERSION : versions
166 166  
167 - EVIDENCE ||--o{ EVIDENCE_VERSION : has_versions
140 + CLAIM ||--o{ SCENARIO : has
141 + SCENARIO ||--o{ SCENARIO_VERSION : versions
168 168  
169 - SCENARIO ||--o{ SCENARIO_EVIDENCE_LINK : may_link
170 - EVIDENCE ||--o{ SCENARIO_EVIDENCE_LINK : may_link
143 + EVIDENCE ||--o{ EVIDENCE_VERSION : versions
171 171  
172 - SCENARIO_EVIDENCE_LINK ||--o{ SCENARIO_EVIDENCE_LINK_VERSION : has_versions
145 + SCENARIO_VERSION ||--o{ SCENARIO_EVIDENCE_LINK : links
146 + EVIDENCE_VERSION ||--o{ SCENARIO_EVIDENCE_LINK : linked
173 173  
174 - SCENARIO_VERSION ||--o{ SCENARIO_EVIDENCE_LINK_VERSION : uses_evidence
175 - EVIDENCE_VERSION ||--o{ SCENARIO_EVIDENCE_LINK_VERSION : is_used_in
148 + SCENARIO ||--o{ VERDICT : assessed
149 + VERDICT ||--o{ VERDICT_VERSION : versions
176 176  
177 - SCENARIO ||--o{ VERDICT : has_verdicts
178 - VERDICT ||--o{ VERDICT_VERSION : has_versions
179 - SCENARIO_VERSION ||--o{ VERDICT_VERSION : assessed_in
180 180  {{/mermaid}}
181 181  
182 182  **Important points:**
... ... @@ -309,7 +309,7 @@
309 309  * It may inherit some links from earlier scenarios, or start empty depending
310 310   on the change classification (cosmetic vs. conceptual).
311 311  * All verdicts for that scenario are recalculated and stored as new
312 - {{code}}VERDICT_VERSION{{/code}} entries.
283 + {{code}}VERDICT_VERSION{{/code}} entries.
313 313  
314 314  * REVIEW_ACTIONs are always attached to the **exact version** that was seen by
315 315   the reviewer. This preserves a faithful audit trail if data later changes.