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

From version 2.2
edited by Robert Schaub
on 2025/11/27 12:08
Change comment: There is no comment for this version
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.
... ... @@ -172,145 +172,83 @@
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 - }
181 181  
182 - CLAIM {
183 - string ClaimID PK
184 - string ClusterID FK
185 - string Status
186 - datetime CreatedAt
176 + USER {
177 + string userId
178 + string displayName
179 + string email
180 + string userType %% "human" or "technical"
181 + datetime createdAt
187 187   }
188 188  
189 - CLAIM_VERSION {
190 - string ClaimVersionID PK
191 - string ClaimID FK
192 - string Text
193 - string ClaimType
194 - string Domain
195 - datetime CreatedAt
184 + TECHNICAL_USER {
185 + string technicalUserId
186 + string userIdFk
187 + string description
188 + string systemIdentifier
196 196   }
197 197  
198 - SCENARIO {
199 - string ScenarioID PK
200 - string ClaimID FK
201 - string Name
202 - datetime CreatedAt
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
203 203   }
204 204  
205 - SCENARIO_VERSION {
206 - string ScenarioVersionID PK
207 - string ScenarioID FK
208 - string Definitions
209 - string Assumptions
210 - string Boundaries
211 - datetime CreatedAt
198 + USER_ROLE_MEMBERSHIP {
199 + string membershipId
200 + string userIdFk
201 + string roleIdFk
202 + datetime grantedAt
203 + string grantedByUserIdFk
212 212   }
213 213  
214 - EVIDENCE {
215 - string EvidenceID PK
216 - string SourceType
217 - string URL
218 - float ReliabilityScore
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
219 219   }
220 220  
221 - EVIDENCE_VERSION {
222 - string EvidenceVersionID PK
223 - string EvidenceID FK
224 - string Summary
225 - float ReliabilityScore
226 - datetime CreatedAt
227 - }
217 + %% Versioned data entities (references from the core model)
228 228  
229 - VERDICT {
230 - string VerdictID PK
231 - string ScenarioID FK
219 + CLAIM_VERSION {
220 + string claimVersionId
232 232   }
233 233  
234 - VERDICT_VERSION {
235 - string VerdictVersionID PK
236 - string VerdictID FK
237 - float Verdict
238 - float Confidence
239 - string Reasoning
240 - datetime CreatedAt
223 + SCENARIO_VERSION {
224 + string scenarioVersionId
241 241   }
242 242  
243 - %% Users and roles
244 - USER {
245 - string UserID PK
246 - string Handle
247 - string Email
227 + EVIDENCE_VERSION {
228 + string evidenceVersionId
248 248   }
249 249  
250 - TECHNICAL_USER {
251 - string UserID PK
252 - string SystemName
231 + SCENARIO_EVIDENCE_LINK_VERSION {
232 + string scenarioEvidenceLinkVersionId
253 253   }
254 254  
255 - CONTRIBUTING_USER {
256 - string UserID PK
257 - string DisplayName
235 + VERDICT_VERSION {
236 + string verdictVersionId
258 258   }
259 259  
260 - TRUSTED_CONTRIBUTOR {
261 - string UserID PK
262 - string TrustLevel
263 - }
239 + %% Relationships
264 264  
265 - REVIEWER {
266 - string UserID PK
267 - string Domain
268 - }
241 + USER ||--o{ TECHNICAL_USER : may_be
242 + USER ||--o{ USER_ROLE_MEMBERSHIP : has_role
243 + ROLE ||--o{ USER_ROLE_MEMBERSHIP : assigned_to
269 269  
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
307 307   USER ||--o{ REVIEW_ACTION : performs
308 308  
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 -
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
314 314  {{/mermaid}}
315 315  
316 316  Notes:
... ... @@ -342,7 +342,7 @@
342 342  * It may inherit some links from earlier scenarios, or start empty depending
343 343   on the change classification (cosmetic vs. conceptual).
344 344  * All verdicts for that scenario are recalculated and stored as new
345 - {{code}}VERDICT_VERSION{{/code}} entries.
283 + {{code}}VERDICT_VERSION{{/code}} entries.
346 346  
347 347  * REVIEW_ACTIONs are always attached to the **exact version** that was seen by
348 348   the reviewer. This preserves a faithful audit trail if data later changes.