Review & Data Use
Version 2.6 by Robert Schaub on 2026/01/20 20:28
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: Reviewer 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
User Role Structure
graph TD
READER[Reader - Guest/Anonymous] --> |Can| R1[Browse Published Analyses]
READER --> |Can| R2[Search Content]
READER --> |Can| R3[View Analysis Results]
USER[User - Registered] --> |Can| RU1[Everything Reader Can]
USER --> |Can| RU2[Submit URLs/Text - Rate-Limited]
USER --> |Can| RU3[Flag Issues]
UCM_ADMIN[UCM Administrator - Appointed] --> |Can| U1[Manage UCM Config]
UCM_ADMIN --> |Can| U2[View Config Audit Trail]
UCM_ADMIN --> |Can| U3[Trigger Re-Analysis]
UCM_ADMIN --> |Can| U4[View System Metrics]
MODERATOR[Moderator - Appointed] --> |Can| M1[Review Flags]
MODERATOR --> |Can| M2[Hide Harmful Content]
MODERATOR --> |Can| M3[Ban Abusive Users]
Role Descriptions
| Role | Purpose | Current Status |
|---|---|---|
| Reader (Guest) | Anonymous browsing, searching, and viewing | Implemented (all users) |
| User (Registered) | Submit URLs/text for analysis (rate-limited) | Not yet implemented (no auth) |
| UCM Administrator | Manage UCM configuration, view audit trail | Partially implemented (CLI/direct DB) |
| Moderator | Handle abuse, enforce community guidelines | Not yet implemented |
Current Implementation
All users are anonymous Readers:
- Can view analysis results
- Can browse and search published analyses
- No persistent accounts (no authentication system yet)
- No submission rate limiting (single-user development mode)
Design Principles
- No data editing — analysis outputs are immutable
- Improve the system, not the data — UCM Administrators tune configuration to improve quality
- Moderators handle abuse only — not content quality (that is automated)
- Low barrier to entry — anyone can browse and search without registration; submission requires a free account
- Rate-limited submissions — LLM inference and web search are not free; registered users have configurable quotas
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
User Class Diagram
classDiagram
class BaseUser {
+view_results()
+browse()
+search()
}
class Reader {
<>
+browse()
+search()
+view_results()
}
class RegisteredUser {
+UUID id
+String username
+Role role
+Timestamp created_at
+submit_url()
+flag_issue()
+view_submission_history()
}
class UCMAdministrator {
+manage_config()
+view_audit_trail()
+activate_config_version()
+trigger_reanalysis()
+view_system_metrics()
}
class Moderator {
+review_flags()
+hide_content()
+ban_user()
}
BaseUser <|-- Reader : anonymous
BaseUser <|-- RegisteredUser : logged in
RegisteredUser <|-- UCMAdministrator : appointed
RegisteredUser <|-- Moderator : appointed
Role Permissions
| Role | Capabilities | Requirements |
|---|---|---|
| Reader (Guest) | Browse, search, view results | No login required |
| User (Registered) | Everything Reader can + submit URLs/text (rate-limited), flag content | Free account required |
| UCM Administrator | Everything User can + manage UCM config, view audit trail, trigger re-analysis | Appointed by Governing Team |
| Moderator | Everything User can + review flags, hide content, ban users | Appointed by Governing Team |
Current Implementation
- All users are anonymous Readers (no authentication system yet)
- UCM config management via CLI/direct DB access
- No moderator tooling
- No rate limiting (single-user development mode)
Design Principles
- No data editing roles — analysis outputs are immutable
- UCM Administrator improves the system through configuration, not by editing individual outputs
- Submission requires login — LLM inference and web search are not free; rate limits control costs
- Four roles: Reader (guest), User (registered), UCM Administrator (appointed), Moderator (appointed)