Changes for page User Class Diagram

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

From version 1.1
edited by Robert Schaub
on 2025/12/12 09:32
Change comment: Imported from XAR
To version 4.3
edited by Robert Schaub
on 2025/12/16 21:40
Change comment: Update document after refactoring.

Summary

Details

Page properties
Parent
... ... @@ -1,1 +1,1 @@
1 -FactHarbor.Specification.Diagrams.WebHome
1 +FactHarbor.Specification V0\.9\.18.Diagrams.WebHome
Content
... ... @@ -1,57 +1,139 @@
1 1  **User Class Diagram**
2 2  
3 -{{plantuml}}
4 -@startuml
5 -abstract class User {
6 - +UserID: String
7 - +DisplayName: String
8 - +Email: String
9 - +Type: Enum
10 -}
3 +This diagram shows the user role hierarchy in FactHarbor v0.9.1, with corrected inheritance.
11 11  
12 -class TechnicalUser {
13 - +SystemName: String
14 -}
5 +== Critical: Corrected Inheritance ==
15 15  
16 -class ContributingUser {
17 - +PrimaryRole: String
18 -}
7 +**IMPORTANT CORRECTION**:
19 19  
20 -class TrustedContributor {
21 - +CertificationLevel: String
22 -}
9 +* Moderator derives from **Reviewer** (NOT from Expert)
10 +* Maintainer derives from **Contributor** (NOT from Reviewer or Moderator)
23 23  
24 -class Reviewer {
25 - +Domain: String
26 -}
12 +**Two Independent Tracks from Contributor**:
27 27  
28 -class Expert {
29 - +ExpertiseArea: String
30 -}
14 +**Content Track**: Contributor → Reviewer → (Auditor | Expert | Moderator)
31 31  
32 -class FederationAdmin {
33 - +Permissions: List
34 -}
16 +* Focus: Content quality, validation, community management
17 +* Skills: Domain expertise, review, moderation
35 35  
36 -class FederationNode {
37 - +NodeID: String
38 - +Status: String
39 -}
19 +**Technical Track**: Contributor → Maintainer
40 40  
41 -class ReviewAction {
42 - +ActionID: String
43 - +Timestamp: DateTime
44 - +ActionType: Enum
45 -}
21 +* Focus: System operations, configuration, deployment
22 +* Skills: DevOps, system administration, technical configuration
23 +* **Independent from content review** - Maintainers don't need review skills
46 46  
47 -User <|-- TechnicalUser
48 -User <|-- ContributingUser
49 -ContributingUser <|-- TrustedContributor
50 -ContributingUser <|-- Reviewer
51 -Reviewer <|-- Expert
52 -TechnicalUser <|-- FederationAdmin
25 +**System Track**: Reader → Technical User
53 53  
54 -FederationAdmin --> FederationNode : administers
55 -User --> ReviewAction : performs
56 -@enduml
57 -{{/plantuml}}
27 +* Not human users - automated processes
28 +* Examples: AKEL instances, sync bots, monitors
29 +* Managed by Maintainers
30 +
31 +== Role Hierarchy Explanation ==
32 +
33 +**Base: Reader**
34 +
35 +* Anyone, no login required
36 +* Foundation for all other roles
37 +* Can browse, search, compare, flag, and **automatically submit claims**
38 +
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 +
46 +**Contributor** (extends Reader)
47 +
48 +* Registered human users
49 +* Can submit evidence, propose scenarios, participate in discussions
50 +* All Reader capabilities plus contribution rights
51 +* **Two-way branching**: Can become Reviewer (content track) or Maintainer (technical track)
52 +
53 +**Reviewer** (is-a Contributor - Content Track)
54 +
55 +* Trusted community members on **content track**
56 +* Can review and approve content
57 +* Can validate AI-generated content (Mode 2 → Mode 3 for Tier B/C)
58 +* Participates in audit sampling
59 +* **Three-way branching**: Can specialize as Auditor, Expert, or Moderator
60 +
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
74 +* Reviews sampled AI-generated content
75 +* Validates quality gate enforcement
76 +* Provides feedback for system improvement
77 +
78 +**Expert** (specialized Reviewer - domain track)
79 +
80 +* Subject matter specialists
81 +* Final authority for Tier A content in their domain
82 +* Can define domain-specific standards
83 +* Required for Tier A "Human-Reviewed" status
84 +
85 +**Moderator** (specialized Reviewer - process track)
86 +
87 +* Community management focus
88 +* Handles abuse and disputes
89 +* Manages users and permissions
90 +* Oversees audit system
91 +* **Independent from domain expertise and technical operations**
92 +
93 +**AKEL** (Technical User implementation)
94 +
95 +* AI system implementing Technical User interface
96 +* Creates drafts for Contributor review
97 +* Subject to Auditor oversight
98 +* Never bypasses human authority
99 +
100 +== Key Design Principles ==
101 +
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 +
124 +**Progressive Trust**:
125 +
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 +
131 +**Human Authority**:
132 +
133 +* Technical Users assist but don't make human-level decisions
134 +* Human Reviewers validate AI outputs
135 +* Experts have final say on Tier A content
136 +* Moderators have final say on community matters
137 +* Maintainers have final say on technical configuration
138 +
139 +{{include reference="FactHarbor.Archive.FactHarbor V0\.9\.23 Lost Data.Specification.Diagrams.User Class Diagram_Mermaid.WebHome"}}{{/include}}