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

From version 2.1
edited by Robert Schaub
on 2025/11/27 12:05
Change comment: There is no comment for this version
To version 3.1
edited by Robert Schaub
on 2025/11/27 12:08
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.
... ... @@ -172,83 +172,145 @@
172 172  
173 173  {{mermaid}}
174 174  erDiagram
175 + %% Core clusters shown for context
176 + CLAIM_CLUSTER {
177 + string ClusterID PK
178 + string EmbeddingVectorRef
179 + string Theme
180 + }
175 175  
176 - USER {
177 - string userId
178 - string displayName
179 - string email
180 - string userType %% "human" or "technical"
181 - datetime createdAt
182 + CLAIM {
183 + string ClaimID PK
184 + string ClusterID FK
185 + string Status
186 + datetime CreatedAt
182 182   }
183 183  
184 - TECHNICAL_USER {
185 - string technicalUserId
186 - string userIdFk
187 - string description
188 - string systemIdentifier
189 + CLAIM_VERSION {
190 + string ClaimVersionID PK
191 + string ClaimID FK
192 + string Text
193 + string ClaimType
194 + string Domain
195 + datetime CreatedAt
189 189   }
190 190  
191 - ROLE {
192 - string roleId
193 - string code %% e.g. READER, CONTRIBUTOR, REVIEWER, TRUSTED_CONTRIBUTOR, MODERATOR, SYSTEM_ADMIN, FEDERATION_OPERATOR, FEDERATION_ADMIN
194 - string description
195 - boolean isFederationRole
198 + SCENARIO {
199 + string ScenarioID PK
200 + string ClaimID FK
201 + string Name
202 + datetime CreatedAt
196 196   }
197 197  
198 - USER_ROLE_MEMBERSHIP {
199 - string membershipId
200 - string userIdFk
201 - string roleIdFk
202 - datetime grantedAt
203 - string grantedByUserIdFk
205 + SCENARIO_VERSION {
206 + string ScenarioVersionID PK
207 + string ScenarioID FK
208 + string Definitions
209 + string Assumptions
210 + string Boundaries
211 + datetime CreatedAt
204 204   }
205 205  
206 - REVIEW_ACTION {
207 - string reviewActionId
208 - string subjectType %% e.g. CLAIM_VERSION, SCENARIO_VERSION...
209 - string subjectVersionId
210 - string actionType %% APPROVE, REJECT, FLAG, COMMENT, REQUEST_CHANGES...
211 - string outcome %% ACCEPTED, REJECTED, ESCALATED...
212 - string comment
213 - string createdByUserIdFk
214 - datetime createdAt
214 + EVIDENCE {
215 + string EvidenceID PK
216 + string SourceType
217 + string URL
218 + float ReliabilityScore
215 215   }
216 216  
217 - %% Versioned data entities (references from the core model)
221 + EVIDENCE_VERSION {
222 + string EvidenceVersionID PK
223 + string EvidenceID FK
224 + string Summary
225 + float ReliabilityScore
226 + datetime CreatedAt
227 + }
218 218  
219 - CLAIM_VERSION {
220 - string claimVersionId
229 + VERDICT {
230 + string VerdictID PK
231 + string ScenarioID FK
221 221   }
222 222  
223 - SCENARIO_VERSION {
224 - string scenarioVersionId
234 + VERDICT_VERSION {
235 + string VerdictVersionID PK
236 + string VerdictID FK
237 + float Verdict
238 + float Confidence
239 + string Reasoning
240 + datetime CreatedAt
225 225   }
226 226  
227 - EVIDENCE_VERSION {
228 - string evidenceVersionId
243 + %% Users and roles
244 + USER {
245 + string UserID PK
246 + string Handle
247 + string Email
229 229   }
230 230  
231 - SCENARIO_EVIDENCE_LINK_VERSION {
232 - string scenarioEvidenceLinkVersionId
250 + TECHNICAL_USER {
251 + string UserID PK
252 + string SystemName
233 233   }
234 234  
235 - VERDICT_VERSION {
236 - string verdictVersionId
255 + CONTRIBUTING_USER {
256 + string UserID PK
257 + string DisplayName
237 237   }
238 238  
239 - %% Relationships
260 + TRUSTED_CONTRIBUTOR {
261 + string UserID PK
262 + string TrustLevel
263 + }
240 240  
241 - USER ||--o{ TECHNICAL_USER : may_be
242 - USER ||--o{ USER_ROLE_MEMBERSHIP : has_role
243 - ROLE ||--o{ USER_ROLE_MEMBERSHIP : assigned_to
265 + REVIEWER {
266 + string UserID PK
267 + string Domain
268 + }
244 244  
270 + EXPERT {
271 + string UserID PK
272 + string ExpertiseArea
273 + }
274 +
275 + FEDERATION_NODE {
276 + string NodeID PK
277 + string Region
278 + }
279 +
280 + FEDERATION_ADMIN {
281 + string UserID PK
282 + string Permissions
283 + }
284 +
285 + REVIEW_ACTION {
286 + string ReviewActionID PK
287 + string UserID FK
288 + string TargetEntityType
289 + string TargetEntityVersionID
290 + string ActionType
291 + string Comment
292 + datetime Timestamp
293 + }
294 +
295 + %% Inheritance / specialization (modelled as relationships)
296 + USER ||--o{ TECHNICAL_USER : "is a"
297 + USER ||--o{ CONTRIBUTING_USER : "is a"
298 +
299 + CONTRIBUTING_USER ||--o{ TRUSTED_CONTRIBUTOR : "subset"
300 + CONTRIBUTING_USER ||--o{ REVIEWER : "subset"
301 + CONTRIBUTING_USER ||--o{ EXPERT : "subset"
302 +
303 + TECHNICAL_USER ||--o{ FEDERATION_NODE : "operates"
304 + TECHNICAL_USER ||--o{ FEDERATION_ADMIN : "administers"
305 +
306 + %% Review actions on versioned entities
245 245   USER ||--o{ REVIEW_ACTION : performs
246 246  
247 - CLAIM_VERSION ||--o{ REVIEW_ACTION : is_reviewed_in
248 - SCENARIO_VERSION ||--o{ REVIEW_ACTION : is_reviewed_in
249 - EVIDENCE_VERSION ||--o{ REVIEW_ACTION : is_reviewed_in
250 - SCENARIO_EVIDENCE_LINK_VERSION ||--o{ REVIEW_ACTION : is_reviewed_in
251 - VERDICT_VERSION ||--o{ REVIEW_ACTION : is_reviewed_in
309 + REVIEW_ACTION }o--|| CLAIM_VERSION : reviews
310 + REVIEW_ACTION }o--|| SCENARIO_VERSION : reviews
311 + REVIEW_ACTION }o--|| EVIDENCE_VERSION : reviews
312 + REVIEW_ACTION }o--|| VERDICT_VERSION : reviews
313 +
252 252  {{/mermaid}}
253 253  
254 254  Notes:
... ... @@ -280,7 +280,7 @@
280 280  * It may inherit some links from earlier scenarios, or start empty depending
281 281   on the change classification (cosmetic vs. conceptual).
282 282  * All verdicts for that scenario are recalculated and stored as new
283 - {{code}}VERDICT_VERSION{{/code}} entries.
345 +{{code}}VERDICT_VERSION{{/code}} entries.
284 284  
285 285  * REVIEW_ACTIONs are always attached to the **exact version** that was seen by
286 286   the reviewer. This preserves a faithful audit trail if data later changes.