Wiki source code of Requirements
Version 4.1 by Robert Schaub on 2025/12/12 19:37
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | = Requirements = | ||
| 2 | |||
| 3 | This chapter defines the requirements for FactHarbor. | ||
| 4 | |||
| 5 | == User Roles == | ||
| 6 | |||
| 7 | === Reader === | ||
| 8 | * **Responsibilities**: Browse, search, view scenarios/verdicts, flag issues. | ||
| 9 | * **Permissions**: Read-only access. | ||
| 10 | * **Limitations**: Cannot change content. | ||
| 11 | |||
| 12 | === Contributor === | ||
| 13 | * **Responsibilities**: Submit claims, draft scenarios, attach evidence. | ||
| 14 | * **Permissions**: Create/Edit drafts, comment. | ||
| 15 | * **Limitations**: Cannot publish without review. | ||
| 16 | |||
| 17 | === Reviewer === | ||
| 18 | * **Responsibilities**: Validate contributions, check consistency. | ||
| 19 | * **Permissions**: Change status to "Published" or "Rejected". | ||
| 20 | |||
| 21 | === Expert === | ||
| 22 | * **Responsibilities**: Domain-specific judgment, refine assumptions. | ||
| 23 | * **Permissions**: Attach expert annotations, propose re-evaluation. | ||
| 24 | |||
| 25 | === Moderator === | ||
| 26 | * **Responsibilities**: Handle abuse, spam, and manipulation. | ||
| 27 | * **Permissions**: Hide content, ban users. | ||
| 28 | |||
| 29 | === Maintainer / Administrator === | ||
| 30 | * **Responsibilities**: Node config, security, role assignment. | ||
| 31 | * **Permissions**: System configuration. | ||
| 32 | |||
| 33 | === AKEL (AI) === | ||
| 34 | * **Responsibilities**: Propose drafts, normalize, classify. | ||
| 35 | * **Permissions**: Create machine-generated drafts. | ||
| 36 | * **Limitations**: Never publishes without human approval. | ||
| 37 | |||
| 38 | == Functional Requirements == | ||
| 39 | |||
| 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. | ||
| 45 | |||
| 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. | ||
| 51 | |||
| 52 | === Evidence Management === | ||
| 53 | * **FR9**: Ingest external sources. | ||
| 54 | * **FR10**: Assess reliability/quality. | ||
| 55 | * **FR11**: Link evidence to multiple scenarios. | ||
| 56 | |||
| 57 | === Verdicts & Truth Landscape === | ||
| 58 | * **FR12**: Likelihood-based verdicts **per scenario**. | ||
| 59 | * **FR13**: Aggregate into Truth Landscape. | ||
| 60 | * **FR14**: Show evolution over time. | ||
| 61 | |||
| 62 | === Workflow & Audit === | ||
| 63 | * **FR15**: Draft -> Review -> Publish states. | ||
| 64 | * **FR16**: Moderation tools. | ||
| 65 | * **FR17**: Full audit trail. | ||
| 66 | |||
| 67 | == Federation Requirements == | ||
| 68 | |||
| 69 | * **FR18**: Node autonomy. | ||
| 70 | * **FR19**: Configurable data sharing. | ||
| 71 | * **FR20**: Sync with conflict handling. | ||
| 72 | * **FR21**: Node discovery. | ||
| 73 | |||
| 74 | == Non-Functional Requirements == | ||
| 75 | |||
| 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. | ||
| 85 | |||
| 86 | == Release Levels == | ||
| 87 | |||
| 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. |