Changes for page User Class Diagram
Last modified by Robert Schaub on 2025/12/24 20:34
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,174 +1,139 @@ 1 1 **User Class Diagram** 2 2 3 -This diagram shows the user role hierarchy in FactHarbor, reflectingthecurrentrolemodelwithReaderasthe baserole.3 +This diagram shows the user role hierarchy in FactHarbor v0.9.1, with corrected inheritance. 4 4 5 -{{mermaid}} 6 -classDiagram 7 - class Reader { 8 - +String SessionID 9 - +String LocalPreferences 10 - +browse() View all published content 11 - +search() Search claims and scenarios 12 - +compare() Compare scenarios 13 - +flag() Flag issues or errors 14 - +submitClaim() Submit text for automatic claim extraction 15 - } 16 - 17 - class Contributor { 18 - +String UserID 19 - +String DisplayName 20 - +String Email 21 - +DateTime RegisteredAt 22 - +submitEvidence() Attach sources 23 - +proposeScenario() Draft scenarios 24 - +comment() Participate in discussions 25 - +requestReview() Request human review 26 - } 27 - 28 - class Reviewer { 29 - +String ReviewerID 30 - +String[] Domains 31 - +DateTime AppointedAt 32 - +review() Review contributions and AI drafts 33 - +validate() Validate AI-generated content Mode 2→3 34 - +edit() Edit claims, scenarios, evidence 35 - +approve() Approve Tier B/C for Human-Reviewed 36 - +flagForExpert() Escalate to expert review 37 - +audit() Participate in sampling audits 38 - } 39 - 40 - class Auditor { 41 - +String AuditorID 42 - +String[] AuditDomains 43 - +Float AuditAccuracy 44 - +reviewSample() Review sampled AI content 45 - +validateQualityGates() Check gate enforcement 46 - +identifyPatterns() Find AI error patterns 47 - +provideFeedback() Improve system quality 48 - } 49 - 50 - class Expert { 51 - +String ExpertID 52 - +String ExpertiseArea 53 - +String[] Certifications 54 - +DateTime VerifiedAt 55 - +authoritativeApproval() Final authority Tier A 56 - +validateComplex() Complex domain validation 57 - +defineStandards() Set domain quality standards 58 - +overrideAKEL() Override AI suggestions with docs 59 - } 60 - 61 - class Moderator { 62 - +String ModeratorID 63 - +String[] Responsibilities 64 - +handleAbuse() Manage abuse reports 65 - +manageUsers() User permissions 66 - +enforceGuidelines() Community guidelines 67 - +adjustRiskTiers() Review tier assignments 68 - +overseeAudits() Audit system oversight 69 - } 70 - 71 - class Maintainer { 72 - +String MaintainerID 73 - +String[] SystemAccess 74 - +configureSystem() Technical configuration 75 - +manageRoles() Grant and revoke roles 76 - +configureAKEL() Quality gates and parameters 77 - +deployUpdates() System deployment 78 - +setPolicy() Risk tier policies 79 - } 80 - 81 - class AKEL { 82 - +String InstanceID 83 - +Enum AuthorType "AI" 84 - +extractClaims() Claim extraction 85 - +classifyRisk() Risk tier assignment 86 - +generateScenarios() Draft scenarios 87 - +searchContradictions() Mandatory counter-evidence search 88 - +validateQualityGates() Run 4 quality gates 89 - +proposeVerdicts() Draft verdicts 90 - } 91 - 92 - Reader <|-- Contributor : extends 93 - Contributor <|-- Reviewer : is-a 94 - Reviewer <|-- Auditor : specialized-role 95 - Reviewer <|-- Expert : is-a 96 - Expert <|-- Moderator : is-a 97 - Moderator <|-- Maintainer : is-a 98 - 99 - AKEL ..> Contributor : creates-drafts-for 100 - AKEL ..> Reviewer : submits-to 101 - AKEL ..> Auditor : audited-by 5 +== Critical: Corrected Inheritance == 102 102 103 - {{/mermaid}}7 +**IMPORTANT CORRECTION**: 104 104 9 +* Moderator derives from **Reviewer** (NOT from Expert) 10 +* Maintainer derives from **Contributor** (NOT from Reviewer or Moderator) 11 + 12 +**Two Independent Tracks from Contributor**: 13 + 14 +**Content Track**: Contributor → Reviewer → (Auditor | Expert | Moderator) 15 + 16 +* Focus: Content quality, validation, community management 17 +* Skills: Domain expertise, review, moderation 18 + 19 +**Technical Track**: Contributor → Maintainer 20 + 21 +* Focus: System operations, configuration, deployment 22 +* Skills: DevOps, system administration, technical configuration 23 +* **Independent from content review** - Maintainers don't need review skills 24 + 25 +**System Track**: Reader → Technical User 26 + 27 +* Not human users - automated processes 28 +* Examples: AKEL instances, sync bots, monitors 29 +* Managed by Maintainers 30 + 105 105 == Role Hierarchy Explanation == 106 106 107 107 **Base: Reader** 34 + 108 108 * Anyone, no login required 109 109 * Foundation for all other roles 110 110 * Can browse, search, compare, flag, and **automatically submit claims** 111 111 39 +**Technical User** (system type, extends Reader) 40 + 41 +* **Not human users** - automated system processes 42 +* Examples: AKEL instances, federation sync bots, backup services, monitoring 43 +* Can perform automated operations 44 +* AKEL is primary implementation of Technical User pattern 45 + 112 112 **Contributor** (extends Reader) 113 -* Registered users 47 + 48 +* Registered human users 114 114 * Can submit evidence, propose scenarios, participate in discussions 115 115 * All Reader capabilities plus contribution rights 51 +* **Two-way branching**: Can become Reviewer (content track) or Maintainer (technical track) 116 116 117 -**Reviewer** (is-a Contributor) 118 -* Trusted community members 53 +**Reviewer** (is-a Contributor - Content Track) 54 + 55 +* Trusted community members on **content track** 119 119 * Can review and approve content 120 120 * Can validate AI-generated content (Mode 2 → Mode 3 for Tier B/C) 121 121 * Participates in audit sampling 59 +* **Three-way branching**: Can specialize as Auditor, Expert, or Moderator 122 122 123 -**Auditor** (specialized Reviewer) 124 -* Dedicated audit role 61 +**Maintainer** (is-a Contributor - Technical Track) 62 + 63 +* Core technical team members on **technical track** 64 +* System configuration and deployment authority 65 +* Does NOT require review skills 66 +* Manages Technical Users (creates AKEL instances, sync bots, etc.) 67 +* **Independent from content review hierarchy** 68 + 69 +**Specialized Reviewer Roles**: 70 + 71 +**Auditor** (specialized Reviewer - QA track) 72 + 73 +* Dedicated quality assurance role 125 125 * Reviews sampled AI-generated content 126 126 * Validates quality gate enforcement 127 127 * Provides feedback for system improvement 128 128 129 -**Expert** (is-a Reviewer) 130 -* Domain specialists 131 -* Final authority for Tier A content 78 +**Expert** (specialized Reviewer - domain track) 79 + 80 +* Subject matter specialists 81 +* Final authority for Tier A content in their domain 132 132 * Can define domain-specific standards 133 133 * Required for Tier A "Human-Reviewed" status 134 134 135 -**Moderator** (is-a Expert) 136 -* Cross-domain authority 85 +**Moderator** (specialized Reviewer - process track) 86 + 87 +* Community management focus 137 137 * Handles abuse and disputes 138 138 * Manages users and permissions 139 139 * Oversees audit system 91 +* **Independent from domain expertise and technical operations** 140 140 141 -**Maintainer** (is-a Moderator) 142 -* Core team members 143 -* Technical system access 144 -* Configure AKEL and quality gates 145 -* Set platform-wide policies 93 +**AKEL** (Technical User implementation) 146 146 147 -**AKEL** (AI System) 148 -* Separate from user hierarchy 95 +* AI system implementing Technical User interface 149 149 * Creates drafts for Contributor review 150 -* Subject to audit oversight97 +* Subject to Auditor oversight 151 151 * Never bypasses human authority 152 152 153 153 == Key Design Principles == 154 154 102 +**Why Maintainer derives from Contributor (not Reviewer)**: 103 + 104 +* **Different skill set**: Technical operations ≠ Content review 105 +* **Separation of concerns**: Technical authority independent from editorial authority 106 +* **Flexibility**: Can have technical experts without review experience 107 +* **Realistic**: System admin skills and content review skills are distinct 108 +* **Cleaner**: Maintainer manages Technical Users (including AKEL) - natural fit on technical track 109 + 110 +**Why Moderator derives from Reviewer (not Expert)**: 111 + 112 +* Moderators handle **process** (community management, disputes) not **domain expertise** 113 +* Experts focus on **subject matter** (medical, legal, scientific validation) 114 +* Allows independent oversight of content quality (Experts) vs community behavior (Moderators) 115 +* Moderators don't need domain expertise to handle community issues 116 + 117 +**Technical User Pattern**: 118 + 119 +* **Purpose**: Represents automated system processes 120 +* **Examples**: AKEL (AI processing), Federation sync bots, Scheduled audit tasks, Backup services, Monitoring systems, API integrations 121 +* **Managed by**: Maintainers create and configure Technical Users 122 +* **Authority**: Limited to programmatic operations, no human-level decisions 123 + 155 155 **Progressive Trust**: 156 -* Each level inherits capabilities from below 157 -* Additional responsibilities require appointment 158 -* Trust earned through contribution quality 159 159 126 +* Reader → Contributor (registration) 127 +* Contributor → Reviewer (content track) OR Maintainer (technical track) 128 +* Reviewer → Auditor/Expert/Moderator (specializations) 129 +* All appointments based on demonstrated competence 130 + 160 160 **Human Authority**: 161 -* AKEL assists but doesn't decide 162 -* Human reviewers validate AI outputs 132 + 133 +* Technical Users assist but don't make human-level decisions 134 +* Human Reviewers validate AI outputs 163 163 * Experts have final say on Tier A content 136 +* Moderators have final say on community matters 137 +* Maintainers have final say on technical configuration 164 164 165 -**Audit Oversight**: 166 -* Dedicated Auditor role for quality assurance 167 -* Sampling-based rather than reviewing everything 168 -* Feedback loop improves AI performance 169 - 170 -**Separation of Concerns**: 171 -* Technical (Maintainer) vs Editorial (Expert/Reviewer) 172 -* Domain expertise (Expert) vs Cross-domain moderation (Moderator) 173 -* Content creation (Contributor) vs Validation (Reviewer) 174 - 139 +{{include reference="FactHarbor.Archive.FactHarbor V0\.9\.23 Lost Data.Specification.Diagrams.User Class Diagram_Mermaid.WebHome"}}{{/include}}