Wiki source code of Requirements

Version 2.1 by Robert Schaub on 2025/12/12 09:32

Hide last authors
Robert Schaub 1.1 1 = Requirements =
2
Robert Schaub 2.1 3 This chapter defines the requirements for FactHarbor.
Robert Schaub 1.1 4
Robert Schaub 2.1 5 == User Roles ==
Robert Schaub 1.1 6
Robert Schaub 2.1 7 === Reader ===
8 * **Responsibilities**: Browse, search, view scenarios/verdicts, flag issues.
9 * **Permissions**: Read-only access.
10 * **Limitations**: Cannot change content.
Robert Schaub 1.1 11
Robert Schaub 2.1 12 === Contributor ===
13 * **Responsibilities**: Submit claims, draft scenarios, attach evidence.
14 * **Permissions**: Create/Edit drafts, comment.
15 * **Limitations**: Cannot publish without review.
Robert Schaub 1.1 16
Robert Schaub 2.1 17 === Reviewer ===
18 * **Responsibilities**: Validate contributions, check consistency.
19 * **Permissions**: Change status to "Published" or "Rejected".
Robert Schaub 1.1 20
Robert Schaub 2.1 21 === Expert ===
22 * **Responsibilities**: Domain-specific judgment, refine assumptions.
23 * **Permissions**: Attach expert annotations, propose re-evaluation.
Robert Schaub 1.1 24
Robert Schaub 2.1 25 === Moderator ===
26 * **Responsibilities**: Handle abuse, spam, and manipulation.
27 * **Permissions**: Hide content, ban users.
Robert Schaub 1.1 28
Robert Schaub 2.1 29 === Maintainer / Administrator ===
30 * **Responsibilities**: Node config, security, role assignment.
31 * **Permissions**: System configuration.
Robert Schaub 1.1 32
Robert Schaub 2.1 33 === AKEL (AI) ===
34 * **Responsibilities**: Propose drafts, normalize, classify.
35 * **Permissions**: Create machine-generated drafts.
36 * **Limitations**: Never publishes without human approval.
Robert Schaub 1.1 37
Robert Schaub 2.1 38 == Functional Requirements ==
Robert Schaub 1.1 39
Robert Schaub 2.1 40 === Claim Intake & Normalization ===
41 * **FR1**: Support text, URL, document input.
42 * **FR2**: Normalize wording while preserving original.
43 * **FR3**: Classify by domain/type.
44 * **FR4**: Cluster similar claims.
Robert Schaub 1.1 45
Robert Schaub 2.1 46 === Scenario System ===
47 * **FR5**: Create scenarios linked to clusters.
48 * **FR6**: Require Definitions, Assumptions, Boundaries.
49 * **FR7**: Full versioning.
50 * **FR8**: Side-by-side comparison.
Robert Schaub 1.1 51
Robert Schaub 2.1 52 === Evidence Management ===
53 * **FR9**: Ingest external sources.
54 * **FR10**: Assess reliability/quality.
55 * **FR11**: Link evidence to multiple scenarios.
Robert Schaub 1.1 56
Robert Schaub 2.1 57 === Verdicts & Truth Landscape ===
58 * **FR12**: Likelihood-based verdicts **per scenario**.
59 * **FR13**: Aggregate into Truth Landscape.
60 * **FR14**: Show evolution over time.
Robert Schaub 1.1 61
Robert Schaub 2.1 62 === Workflow & Audit ===
63 * **FR15**: Draft -> Review -> Publish states.
64 * **FR16**: Moderation tools.
65 * **FR17**: Full audit trail.
Robert Schaub 1.1 66
Robert Schaub 2.1 67 == Federation Requirements ==
Robert Schaub 1.1 68
Robert Schaub 2.1 69 * **FR18**: Node autonomy.
70 * **FR19**: Configurable data sharing.
71 * **FR20**: Sync with conflict handling.
72 * **FR21**: Node discovery.
Robert Schaub 1.1 73
Robert Schaub 2.1 74 == Non-Functional Requirements ==
Robert Schaub 1.1 75
Robert Schaub 2.1 76 * **NFR1 - Transparency**: Visible reasoning and AKEL labeling.
77 * **NFR2 - Security**: Role-based access, secure storage.
78 * **NFR3 - Privacy**: Minimal data retention, compliance hooks.
79 * **NFR4 - Performance**: < 2s response (POC).
80 * **NFR5 - Scalability**: Support thousands of users (Release 1.0).
81 * **NFR6 - Interoperability**: Open API.
82 * **NFR7 - Observability**: Metrics and logs.
83 * **NFR8 - Maintainability**: Modular architecture.
84 * **NFR9 - Usability**: Progressive disclosure of complexity.
Robert Schaub 1.1 85
Robert Schaub 2.1 86 == Release Levels ==
Robert Schaub 1.1 87
Robert Schaub 2.1 88 * **POC (Fully Automated)**: Single node. **"Text to Truth Landscape"** workflow. Automated extraction, scenario generation, and verdict computation.
89 * **Beta 0**: Few nodes, external testers. Expanded manual workflows and moderation.
90 * **Release 1.0**: Scalable, Federated, High Automation. Multi-node federation.
Robert Schaub 1.1 91