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 1.1
edited by Robert Schaub
on 2025/12/12 09:32
Change comment: Imported from XAR

Summary

Details

Page properties
Content
... ... @@ -1,174 +1,57 @@
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 +{{plantuml}}
4 +@startuml
5 +abstract class User {
6 + +UserID: String
7 + +DisplayName: String
8 + +Email: String
9 + +Type: Enum
10 +}
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
12 +class TechnicalUser {
13 + +SystemName: String
14 +}
102 102  
103 -{{/mermaid}}
16 +class ContributingUser {
17 + +PrimaryRole: String
18 +}
104 104  
105 -== Role Hierarchy Explanation ==
20 +class TrustedContributor {
21 + +CertificationLevel: String
22 +}
106 106  
107 -**Base: Reader**
108 -* Anyone, no login required
109 -* Foundation for all other roles
110 -* Can browse, search, compare, flag, and **automatically submit claims**
24 +class Reviewer {
25 + +Domain: String
26 +}
111 111  
112 -**Contributor** (extends Reader)
113 -* Registered users
114 -* Can submit evidence, propose scenarios, participate in discussions
115 -* All Reader capabilities plus contribution rights
28 +class Expert {
29 + +ExpertiseArea: String
30 +}
116 116  
117 -**Reviewer** (is-a Contributor)
118 -* Trusted community members
119 -* Can review and approve content
120 -* Can validate AI-generated content (Mode 2 → Mode 3 for Tier B/C)
121 -* Participates in audit sampling
32 +class FederationAdmin {
33 + +Permissions: List
34 +}
122 122  
123 -**Auditor** (specialized Reviewer)
124 -* Dedicated audit role
125 -* Reviews sampled AI-generated content
126 -* Validates quality gate enforcement
127 -* Provides feedback for system improvement
36 +class FederationNode {
37 + +NodeID: String
38 + +Status: String
39 +}
128 128  
129 -**Expert** (is-a Reviewer)
130 -* Domain specialists
131 -* Final authority for Tier A content
132 -* Can define domain-specific standards
133 -* Required for Tier A "Human-Reviewed" status
41 +class ReviewAction {
42 + +ActionID: String
43 + +Timestamp: DateTime
44 + +ActionType: Enum
45 +}
134 134  
135 -**Moderator** (is-a Expert)
136 -* Cross-domain authority
137 -* Handles abuse and disputes
138 -* Manages users and permissions
139 -* Oversees audit system
47 +User <|-- TechnicalUser
48 +User <|-- ContributingUser
49 +ContributingUser <|-- TrustedContributor
50 +ContributingUser <|-- Reviewer
51 +Reviewer <|-- Expert
52 +TechnicalUser <|-- FederationAdmin
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
149 -* Creates drafts for Contributor review
150 -* Subject to audit oversight
151 -* Never bypasses human authority
152 -
153 -== Key Design Principles ==
154 -
155 -**Progressive Trust**:
156 -* Each level inherits capabilities from below
157 -* Additional responsibilities require appointment
158 -* Trust earned through contribution quality
159 -
160 -**Human Authority**:
161 -* AKEL assists but doesn't decide
162 -* Human reviewers validate AI outputs
163 -* Experts have final say on Tier A content
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 -
54 +FederationAdmin --> FederationNode : administers
55 +User --> ReviewAction : performs
56 +@enduml
57 +{{/plantuml}}