User Class Diagram
Last modified by Robert Schaub on 2025/12/24 21:53
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()
+requires: reputation sufficient
}
class Moderator {
<>
+review_flags()
+hide_content()
+resolve_disputes()
+requires: appointed by Governing Team
}
User --> Reader : default role
User --> Contributor : registers + earns reputation
User --> Moderator : appointed
note for User "Reputation system unlocks permissions progressively"
note for Contributor "Reputation sufficient: Full edit access"
note for Contributor "Reputation sufficient: Can approve changes"
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