Review & Data Use
Last modified by Robert Schaub on 2026/02/08 08:32
Review & Data Use
This page describes the Review & Data Use model, defining User roles and how review actions are logged.
1. User & Role Concepts
- USER: Base entity for all users (human or technical).
- TECHNICAL_USER: Strictly technical identities (services, federation components, background jobs).
- CONTRIBUTING_USER: Users that can contribute content (claims, scenarios, evidence).
- TRUSTED_CONTRIBUTOR: Additional trust / certification properties.
- REVIEWER: Can perform review actions on versioned entities.
- EXPERT: Contributor with domain‑specific expertise / higher authority.
- FEDERATION_NODE: Technical entity representing a participating node in the federation.
- FEDERATION_ADMIN: Administers one or more federation nodes; not necessarily a content contributor.
2. Review Actions
The system logs every significant action:
- REVIEW_ACTION logs *who* did *what* on *which* versioned entity.
- Fields: ``ReviewActionID``, ``UserID``, ``EntityType``, ``EntityVersionID``, ``ActionType``, ``Timestamp``.
- Each entry targets a specific VERSIONED entity (e.g., ClaimVersion, ScenarioVersion).
- Claim Clusters may also be targets of review actions (e.g., curation or moderation).
3. Review & Data Use ERD
3.1 User Roles
Target User Role Hierarchy
graph TD
READER[Reader] --> |Registers| CONTRIBUTOR[Contributor]
CONTRIBUTOR --> |Earns Reputation| TRUSTED[Trusted Contributor]
CONTRIBUTOR --> |Appointed| MODERATOR[Moderator]
READER --> |Can| R1[Browse Search]
READER --> |Can| R2[Flag Issues]
READER --> |Can| R3[Submit Claims]
CONTRIBUTOR --> |Can| C1[Edit Claims]
CONTRIBUTOR --> |Can| C2[Add Evidence]
CONTRIBUTOR --> |Can| C3[Improve Content]
TRUSTED --> |Can| T1[Approve Changes]
TRUSTED --> |Can| T2[Mentor New Contributors]
MODERATOR --> |Can| M1[Review Flags]
MODERATOR --> |Can| M2[Hide Harmful Content]
MODERATOR --> |Can| M3[Resolve Disputes]
Role Descriptions
| Role | Purpose | Current Status |
|---|---|---|
| Reader | Anonymous browsing and submission | Implemented (all users) |
| Contributor | Edit claims, add evidence | Not implemented |
| Trusted Contributor | Approve changes, mentor | Not implemented |
| Moderator | Handle abuse, resolve disputes | Not implemented |
Current Implementation
All users are anonymous Readers:
- Can submit text/URLs for analysis
- Can view analysis results
- No persistent accounts
- No role-based permissions
Target Design Principles
Simplified flat role structure:
- Reader: Default role, no login required
- Contributor: Registers and earns reputation through contributions
- Trusted Contributor: Substantial reputation unlocks additional permissions
- Moderator: Appointed by Governing Team, handles abuse/disputes
No hierarchy - roles represent responsibility levels, not management structure.
Target Technical Model
erDiagram
USER {
string UserID_PK
string role
int reputation
}
MODERATOR {
string ModeratorID_PK
string UserID_FK
string permissions
}
SYSTEM_SERVICE {
string ServiceID_PK
string ServiceName
string Purpose
string Status
}
AKEL {
string InstanceID_PK
string ServiceID_FK
string Version
}
BACKGROUND_SCHEDULER {
string SchedulerID_PK
string ServiceID_FK
string ScheduledTasks
}
SEARCH_INDEXER {
string IndexerID_PK
string ServiceID_FK
string LastSyncTime
}
USER ||--o| MODERATOR : appointed_as
MODERATOR ||--o{ SYSTEM_SERVICE : monitors
SYSTEM_SERVICE ||--|| AKEL : AI_processing
SYSTEM_SERVICE ||--|| BACKGROUND_SCHEDULER : periodic_tasks
SYSTEM_SERVICE ||--|| SEARCH_INDEXER : search_sync
Implementation Status
| Component | Target Purpose | Current Status |
|---|---|---|
| USER | User accounts with reputation | Not implemented (anonymous only) |
| MODERATOR | Appointed users with permissions | Not implemented |
| AKEL | AI processing engine | Implemented (Triple-Path pipeline) |
| BACKGROUND_SCHEDULER | Periodic tasks | Not implemented |
| SEARCH_INDEXER | Elasticsearch sync | Not implemented (no Elasticsearch) |
Current Implementation
v2.6.33 has only:
- AKEL pipeline for analysis
- .NET API for job persistence
- No background services
- No search indexing (uses web search only)
4. User Class Diagram
Target User Class Diagram
classDiagram
class User {
+UUID id
+String username
+String email
+Role role
+Int reputation
+Timestamp created_at
+contribute()
+flag_issue()
+earn_reputation()
}
class Reader {
+browse()
+search()
+flag_content()
}
class Contributor {
+edit_claims()
+add_evidence()
+suggest_improvements()
}
class Moderator {
+review_flags()
+hide_content()
+resolve_disputes()
}
User --> Reader : default role
User --> Contributor : registers and earns reputation
User --> Moderator : appointed
Role Permissions
| Role | Capabilities | Requirements |
|---|---|---|
| Reader | Browse, search, flag content | Default (no login) |
| Contributor | Edit claims, add evidence, suggest improvements | Registration + sufficient reputation |
| Moderator | Review flags, hide content, resolve disputes | Appointed by Governing Team |
Current Implementation
- All users are anonymous Readers
- No authentication system
- No reputation tracking
- No role-based permissions
Target Design
Simplified flat role structure:
- Three roles only: Reader (default), Contributor (earned), Moderator (appointed)
- Reputation system replaces role hierarchy
- Progressive permissions based on reputation, not titles