User Class Diagram

Version 3.1 by Robert Schaub on 2025/12/14 22:27

User Class Diagram

This diagram shows the user role hierarchy in FactHarbor, reflecting the current role model with Reader as the base role.

classDiagram
    class Reader {
        +String SessionID
        +String LocalPreferences
        +browse() View all published content
        +search() Search claims and scenarios
        +compare() Compare scenarios
        +flag() Flag issues or errors
        +submitClaim() Submit text for automatic claim extraction
    }
    
    class Contributor {
        +String UserID
        +String DisplayName
        +String Email
        +DateTime RegisteredAt
        +submitEvidence() Attach sources
        +proposeScenario() Draft scenarios
        +comment() Participate in discussions
        +requestReview() Request human review
    }
    
    class Reviewer {
        +String ReviewerID
        +String[] Domains
        +DateTime AppointedAt
        +review() Review contributions and AI drafts
        +validate() Validate AI-generated content Mode 2→3
        +edit() Edit claims, scenarios, evidence
        +approve() Approve Tier B/C for Human-Reviewed
        +flagForExpert() Escalate to expert review
        +audit() Participate in sampling audits
    }
    
    class Auditor {
        +String AuditorID
        +String[] AuditDomains
        +Float AuditAccuracy
        +reviewSample() Review sampled AI content
        +validateQualityGates() Check gate enforcement
        +identifyPatterns() Find AI error patterns
        +provideFeedback() Improve system quality
    }
    
    class Expert {
        +String ExpertID
        +String ExpertiseArea
        +String[] Certifications
        +DateTime VerifiedAt
        +authoritativeApproval() Final authority Tier A
        +validateComplex() Complex domain validation
        +defineStandards() Set domain quality standards
        +overrideAKEL() Override AI suggestions with docs
    }
    
    class Moderator {
        +String ModeratorID
        +String[] Responsibilities
        +handleAbuse() Manage abuse reports
        +manageUsers() User permissions
        +enforceGuidelines() Community guidelines
        +adjustRiskTiers() Review tier assignments
        +overseeAudits() Audit system oversight
    }
    
    class Maintainer {
        +String MaintainerID
        +String[] SystemAccess
        +configureSystem() Technical configuration
        +manageRoles() Grant and revoke roles
        +configureAKEL() Quality gates and parameters
        +deployUpdates() System deployment
        +setPolicy() Risk tier policies
    }
    
    class AKEL {
        +String InstanceID
        +Enum AuthorType "AI"
        +extractClaims() Claim extraction
        +classifyRisk() Risk tier assignment
        +generateScenarios() Draft scenarios
        +searchContradictions() Mandatory counter-evidence search
        +validateQualityGates() Run 4 quality gates
        +proposeVerdicts() Draft verdicts
    }
    
    Reader <|-- Contributor : extends
    Contributor <|-- Reviewer : is-a
    Reviewer <|-- Auditor : specialized-role
    Reviewer <|-- Expert : is-a
    Expert <|-- Moderator : is-a
    Moderator <|-- Maintainer : is-a
    
    AKEL ..> Contributor : creates-drafts-for
    AKEL ..> Reviewer : submits-to
    AKEL ..> Auditor : audited-by

Role Hierarchy Explanation

Base: Reader

  • Anyone, no login required
  • Foundation for all other roles
  • Can browse, search, compare, flag, and automatically submit claims

Contributor (extends Reader)

  • Registered users
  • Can submit evidence, propose scenarios, participate in discussions
  • All Reader capabilities plus contribution rights

Reviewer (is-a Contributor)

  • Trusted community members
  • Can review and approve content
  • Can validate AI-generated content (Mode 2 → Mode 3 for Tier B/C)
  • Participates in audit sampling

Auditor (specialized Reviewer)

  • Dedicated audit role
  • Reviews sampled AI-generated content
  • Validates quality gate enforcement
  • Provides feedback for system improvement

Expert (is-a Reviewer)

  • Domain specialists
  • Final authority for Tier A content
  • Can define domain-specific standards
  • Required for Tier A "Human-Reviewed" status

Moderator (is-a Expert)

  • Cross-domain authority
  • Handles abuse and disputes
  • Manages users and permissions
  • Oversees audit system

Maintainer (is-a Moderator)

  • Core team members
  • Technical system access
  • Configure AKEL and quality gates
  • Set platform-wide policies

AKEL (AI System)

  • Separate from user hierarchy
  • Creates drafts for Contributor review
  • Subject to audit oversight
  • Never bypasses human authority

Key Design Principles

Progressive Trust:

  • Each level inherits capabilities from below
  • Additional responsibilities require appointment
  • Trust earned through contribution quality

Human Authority:

  • AKEL assists but doesn't decide
  • Human reviewers validate AI outputs
  • Experts have final say on Tier A content

Audit Oversight:

  • Dedicated Auditor role for quality assurance
  • Sampling-based rather than reviewing everything
  • Feedback loop improves AI performance

Separation of Concerns:

  • Technical (Maintainer) vs Editorial (Expert/Reviewer)
  • Domain expertise (Expert) vs Cross-domain moderation (Moderator)
  • Content creation (Contributor) vs Validation (Reviewer)