Changes for page User Class Diagram

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

From version 3.1
edited by Robert Schaub
on 2025/12/14 22:27
Change comment: Imported from XAR
To version 4.1
edited by Robert Schaub
on 2025/12/15 16:56
Change comment: Imported from XAR

Summary

Details

Page properties
Content
... ... @@ -1,107 +1,29 @@
1 1  **User Class Diagram**
2 2  
3 -This diagram shows the user role hierarchy in FactHarbor, reflecting the current role model with Reader as the base role.
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**:
8 +* Moderator derives from **Reviewer** (NOT from Expert)
9 +* Maintainer derives from **Contributor** (NOT from Reviewer or Moderator)
104 104  
11 +**Two Independent Tracks from Contributor**:
12 +
13 +**Content Track**: Contributor → Reviewer → (Auditor | Expert | Moderator)
14 +* Focus: Content quality, validation, community management
15 +* Skills: Domain expertise, review, moderation
16 +
17 +**Technical Track**: Contributor → Maintainer
18 +* Focus: System operations, configuration, deployment
19 +* Skills: DevOps, system administration, technical configuration
20 +* **Independent from content review** - Maintainers don't need review skills
21 +
22 +**System Track**: Reader → Technical User
23 +* Not human users - automated processes
24 +* Examples: AKEL instances, sync bots, monitors
25 +* Managed by Maintainers
26 +
105 105  == Role Hierarchy Explanation ==
106 106  
107 107  **Base: Reader**
... ... @@ -109,66 +109,92 @@
109 109  * Foundation for all other roles
110 110  * Can browse, search, compare, flag, and **automatically submit claims**
111 111  
34 +**Technical User** (system type, extends Reader)
35 +* **Not human users** - automated system processes
36 +* Examples: AKEL instances, federation sync bots, backup services, monitoring
37 +* Can perform automated operations
38 +* AKEL is primary implementation of Technical User pattern
39 +
112 112  **Contributor** (extends Reader)
113 -* Registered users
41 +* Registered human users
114 114  * Can submit evidence, propose scenarios, participate in discussions
115 115  * All Reader capabilities plus contribution rights
44 +* **Two-way branching**: Can become Reviewer (content track) or Maintainer (technical track)
116 116  
117 -**Reviewer** (is-a Contributor)
118 -* Trusted community members
46 +**Reviewer** (is-a Contributor - Content Track)
47 +* 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
51 +* **Three-way branching**: Can specialize as Auditor, Expert, or Moderator
122 122  
123 -**Auditor** (specialized Reviewer)
124 -* Dedicated audit role
53 +**Maintainer** (is-a Contributor - Technical Track)
54 +* Core technical team members on **technical track**
55 +* System configuration and deployment authority
56 +* Does NOT require review skills
57 +* Manages Technical Users (creates AKEL instances, sync bots, etc.)
58 +* **Independent from content review hierarchy**
59 +
60 +**Specialized Reviewer Roles**:
61 +
62 +**Auditor** (specialized Reviewer - QA track)
63 +* 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
68 +**Expert** (specialized Reviewer - domain track)
69 +* Subject matter specialists
70 +* 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
74 +**Moderator** (specialized Reviewer - process track)
75 +* Community management focus
137 137  * Handles abuse and disputes
138 138  * Manages users and permissions
139 139  * Oversees audit system
79 +* **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
146 -
147 -**AKEL** (AI System)
148 -* Separate from user hierarchy
81 +**AKEL** (Technical User implementation)
82 +* AI system implementing Technical User interface
149 149  * Creates drafts for Contributor review
150 -* Subject to audit oversight
84 +* Subject to Auditor oversight
151 151  * Never bypasses human authority
152 152  
153 153  == Key Design Principles ==
154 154  
89 +**Why Maintainer derives from Contributor (not Reviewer)**:
90 +* **Different skill set**: Technical operations ≠ Content review
91 +* **Separation of concerns**: Technical authority independent from editorial authority
92 +* **Flexibility**: Can have technical experts without review experience
93 +* **Realistic**: System admin skills and content review skills are distinct
94 +* **Cleaner**: Maintainer manages Technical Users (including AKEL) - natural fit on technical track
95 +
96 +**Why Moderator derives from Reviewer (not Expert)**:
97 +* Moderators handle **process** (community management, disputes) not **domain expertise**
98 +* Experts focus on **subject matter** (medical, legal, scientific validation)
99 +* Allows independent oversight of content quality (Experts) vs community behavior (Moderators)
100 +* Moderators don't need domain expertise to handle community issues
101 +
102 +**Technical User Pattern**:
103 +* **Purpose**: Represents automated system processes
104 +* **Examples**: AKEL (AI processing), Federation sync bots, Scheduled audit tasks, Backup services, Monitoring systems, API integrations
105 +* **Managed by**: Maintainers create and configure Technical Users
106 +* **Authority**: Limited to programmatic operations, no human-level decisions
107 +
155 155  **Progressive Trust**:
156 -* Each level inherits capabilities from below
157 -* Additional responsibilities require appointment
158 -* Trust earned through contribution quality
109 +* Reader → Contributor (registration)
110 +* Contributor → Reviewer (content track) OR Maintainer (technical track)
111 +* Reviewer → Auditor/Expert/Moderator (specializations)
112 +* All appointments based on demonstrated competence
159 159  
160 160  **Human Authority**:
161 -* AKEL assists but doesn't decide
162 -* Human reviewers validate AI outputs
115 +* Technical Users assist but don't make human-level decisions
116 +* Human Reviewers validate AI outputs
163 163  * Experts have final say on Tier A content
118 +* Moderators have final say on community matters
119 +* 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
121 +{{include reference="Test.FactHarborV09.Specification.Diagrams.User Class Diagram_Mermaid.WebHome"}}
169 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 -