Changes for page Requirements
Last modified by Robert Schaub on 2025/12/24 20:34
From version 5.1
edited by Robert Schaub
on 2025/12/12 21:13
on 2025/12/12 21:13
Change comment:
Rollback to version 3.1
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,177 +1,372 @@ 1 1 = Requirements = 2 2 3 -This chapterdefinesall functional,non-functional, user-role, andfederationrequirementsforFactHarbor.3 +This page defines **Roles**, **Responsibilities**, and **Rules** for contributors and users of FactHarbor. 4 4 5 - Itanswers:5 +== Roles == 6 6 7 -* Who can do what in the system? 8 -* What workflows must FactHarbor support? 9 -* What quality, transparency, and federation guarantees must be met? 7 +=== Reader === 10 10 11 - ----9 +**Who**: Anyone (no login required). 12 12 13 - = User Roles =11 +**Can**: 14 14 15 -== Reader == 13 +* Browse and search claims 14 +* View scenarios, evidence, verdicts, and timelines 15 +* Compare scenarios and explore assumptions 16 +* Flag issues, errors, contradictions, or suspicious patterns 17 +* Use filters, search, and visualization tools 18 +* Create personal views (saved searches, bookmarks - local browser storage) 19 +* **Submit claims automatically** by providing text to analyze - new claims are added automatically unless equal claims already exist in the system 16 16 17 - Responsibilities:21 +**Cannot**: 18 18 19 -* Browse and search claims 20 -* View scenarios, evidence, verdicts, and timelines 21 -* Compare scenarios and explore assumptions 22 -* Flag issues, errors, contradictions, or suspicious patterns 23 +* Modify existing content 24 +* Access draft content 25 +* Participate in governance decisions 23 23 24 - Permissions:27 +**Note**: Readers can request human review of AI-generated content by flagging it. 25 25 26 -* Read-only access to all published claims, scenarios, evidence, and verdicts 27 -* Use filters, search, and visualization tools (“truth landscape”, timelines, scenario comparison, etc.) 28 -* Create personal views (saved searches, bookmarks, etc.) 29 +=== Contributor === 29 29 30 - Limitations:31 +**Who**: Registered and logged-in users (extends Reader capabilities). 31 31 32 -* Cannot change shared content 33 -* Cannot publish new claims, scenarios, or verdicts 33 +**Can**: 34 34 35 ----- 35 +* Everything a Reader can do 36 +* Submit claims 37 +* Submit evidence 38 +* Provide feedback 39 +* Suggest scenarios 40 +* Flag content for review 41 +* Request human review of AI-generated content 36 36 37 - ==Contributor ==43 +**Cannot**: 38 38 39 -Responsibilities: 45 +* Publish or mark content as "reviewed" or "approved" 46 +* Override expert or maintainer decisions 47 +* Directly modify AKEL or quality gate configurations 40 40 41 -* Submit claims 42 -* Propose new claim clusters (if automatic clustering is insufficient) 43 -* Draft scenarios (definitions, assumptions, boundaries) 44 -* Attach evidence (sources, documents, links, datasets) 45 -* Suggest verdict drafts and uncertainty ranges 46 -* Respond to reviewer or expert feedback 49 +=== Reviewer === 47 47 48 - Permissions:51 +**Who**: Trusted community members, appointed by maintainers. 49 49 50 -* Everything a Reader can do 51 -* Create and edit **draft** claims, scenarios, evidence links, and verdict drafts 52 -* Comment on existing content and discuss assumptions 53 -* Propose corrections to misclassified or outdated content 53 +**Can**: 54 54 55 -Limitations: 55 +* Review contributions from Contributors and AKEL drafts 56 +* Validate AI-generated content (Mode 2 → Mode 3 transition) 57 +* Edit claims, scenarios, and evidence 58 +* Add clarifications or warnings 59 +* Change content status: `draft` → `in review` → `published` / `rejected` 60 +* Approve or reject **Tier B and C** content for "Human-Reviewed" status 61 +* Flag content for expert review 62 +* Participate in audit sampling 56 56 57 -* Cannot *publish* or mark content as “reviewed” or “approved” 58 -* Cannot override expert or maintainer decisions 59 -* Cannot change system-level settings, roles, or federation configuration 64 +**Cannot**: 60 60 66 +* Approve Tier A content for "Human-Reviewed" status (requires Expert) 67 +* Change governance rules 68 +* Unilaterally change expert conclusions without process 69 +* Bypass quality gates 70 + 71 +**Note on AI-Drafted Content**: 72 + 73 +* Reviewers can validate AI-generated content (Mode 2) to promote it to "Human-Reviewed" (Mode 3) 74 +* For Tier B and C, Reviewers have approval authority 75 +* For Tier A, only Experts can grant "Human-Reviewed" status 76 + 77 +=== Expert (Domain-Specific) === 78 + 79 +**Who**: Subject-matter specialists in specific domains (medicine, law, science, etc.). 80 + 81 +**Can**: 82 + 83 +* Everything a Reviewer can do 84 +* **Final authority** on Tier A content "Human-Reviewed" status 85 +* Validate complex or controversial claims in their domain 86 +* Define domain-specific quality standards 87 +* Set reliability thresholds for domain sources 88 +* Participate in risk tier assignment review 89 +* Override AKEL suggestions in their domain (with documentation) 90 + 91 +**Cannot**: 92 + 93 +* Change platform governance policies 94 +* Approve content outside their expertise domain 95 +* Bypass technical quality gates (but can flag for adjustment) 96 + 97 +**Specialization**: 98 + 99 +* Experts are domain-specific (e.g., "Medical Expert", "Legal Expert", "Climate Science Expert") 100 +* Cross-domain claims may require multiple expert reviews 101 + 102 +=== Auditor === 103 + 104 +**Who**: Reviewers or Experts assigned to sampling audit duties. 105 + 106 +**Can**: 107 + 108 +* Review sampled AI-generated content against quality standards 109 +* Validate quality gate enforcement 110 +* Identify patterns in AI errors or hallucinations 111 +* Provide feedback for system improvement 112 +* Flag content for immediate review if errors found 113 +* Contribute to audit statistics and transparency reports 114 + 115 +**Cannot**: 116 + 117 +* Change audit sampling algorithms (maintainer responsibility) 118 +* Bypass normal review workflows 119 +* Audit content they personally created 120 + 121 +**Selection**: 122 + 123 +* Auditors selected based on domain expertise and review quality 124 +* Rotation to prevent audit fatigue 125 +* Stratified assignment (Tier A auditors need higher expertise) 126 + 127 +**Audit Focus**: 128 + 129 +* Tier A: Recommendation 30-50% sampling rate, expert auditors 130 +* Tier B: Recommendation 10-20% sampling rate, reviewer/expert auditors 131 +* Tier C: Recommendation 5-10% sampling rate, reviewer auditors 132 + 133 +=== Moderator === 134 + 135 +**Who**: Maintainers or trusted long-term contributors. 136 + 137 +**Can**: 138 + 139 +* All Reviewer and Expert capabilities (cross-domain) 140 +* Manage user accounts and permissions 141 +* Handle disputes and conflicts 142 +* Enforce community guidelines 143 +* Suspend or ban abusive users 144 +* Finalize publication status for sensitive content 145 +* Review and adjust risk tier assignments 146 +* Oversee audit system performance 147 + 148 +**Cannot**: 149 + 150 +* Change core data model or architecture 151 +* Override technical system constraints 152 +* Make unilateral governance decisions without consensus 153 + 154 +=== Maintainer === 155 + 156 +**Who**: Core team members responsible for the platform. 157 + 158 +**Can**: 159 + 160 +* All Moderator capabilities 161 +* Change data model, architecture, and technical systems 162 +* Configure quality gates and AKEL parameters 163 +* Adjust audit sampling algorithms 164 +* Set and modify risk tier policies 165 +* Make platform-wide governance decisions 166 +* Access and modify backend systems 167 +* Deploy updates and fixes 168 +* Grant and revoke roles 169 + 170 +**Governance**: 171 + 172 +* Maintainers operate under organizational governance rules 173 +* Major policy changes require Governing Team approval 174 +* Technical decisions made collaboratively 175 + 61 61 ---- 62 62 63 -== Reviewer==178 +== Content Publication States == 64 64 65 - Responsibilities:180 +=== Mode 1: Draft === 66 66 67 -* Review contributions from Contributors and AKEL drafts 68 -* Check internal consistency and clarity of scenarios 69 -* Validate that evidence is correctly linked and described 70 -* Ensure verdicts match the evidence and stated assumptions 71 -* Reject, request change, or accept content 182 +* Not visible to public 183 +* Visible to contributor and reviewers 184 +* Can be edited by contributor or reviewers 185 +* Default state for failed quality gates 72 72 73 - Permissions:187 +=== Mode 2: AI-Generated (Published) === 74 74 75 -* Everything a Contributor can do 76 -* Change content status from `draft` → `in review` → `published` / `rejected` 77 -* Send content back to Contributors with comments 78 -* Flag content for expert review 189 +* **Public** and visible to all users 190 +* Clearly labeled as "AI-Generated, Awaiting Human Review" 191 +* Passed all automated quality gates 192 +* Risk tier displayed (A/B/C) 193 +* Users can: 194 +** Read and use content 195 +** Request human review 196 +** Flag for expert attention 197 +* Subject to sampling audits 198 +* Can be promoted to Mode 3 by reviewer/expert validation 79 79 80 - Limitations:200 +=== Mode 3: Human-Reviewed (Published) === 81 81 82 -* Cannot modify system-wide configuration or federation topology 83 -* Cannot unilaterally change expert conclusions without process 202 +* **Public** and visible to all users 203 +* Labeled as "Human-Reviewed" with reviewer/expert attribution 204 +* Passed quality gates + human validation 205 +* Highest trust level 206 +* For Tier A, requires Expert approval 207 +* For Tier B/C, Reviewer approval sufficient 84 84 209 +=== Rejected === 210 + 211 +* Not visible to public 212 +* Visible to contributor with rejection reason 213 +* Can be resubmitted after addressing issues 214 +* Rejection logged for transparency 215 + 85 85 ---- 86 86 87 -== Expert ==218 +== Contribution Rules == 88 88 89 - Responsibilities:220 +=== All Contributors Must: === 90 90 91 -* Provide domain-specific judgment on scenarios, evidence, and verdicts 92 -* Refine assumptions and definitions in complex or ambiguous topics 93 -* Identify subtle biases, missing evidence, or misinterpretations 94 -* Propose improved verdicts and uncertainty assessments 222 +* Provide sources for claims 223 +* Use clear, neutral language 224 +* Avoid personal attacks or insults 225 +* Respect intellectual property (cite sources) 226 +* Accept community feedback gracefully 95 95 96 - Permissions:228 +=== AKEL (AI) Must: === 97 97 98 -* Everything a Reviewer can do 99 -* Attach expert annotations and signed opinions to scenarios and verdicts 100 -* Propose re-evaluation of already published content based on new evidence 230 +* Mark all outputs with `AuthorType = AI` 231 +* Pass quality gates before Mode 2 publication 232 +* Perform mandatory contradiction search 233 +* Disclose confidence levels and uncertainty 234 +* Provide traceable reasoning chains 235 +* Flag potential bubbles or echo chambers 236 +* Submit to audit sampling 101 101 102 - Limitations:238 +=== Reviewers Must: === 103 103 104 -* Expert status is scoped to specific domains 105 -* Cannot bypass moderation, abuse policies, or legal constraints 240 +* Be impartial and evidence-based 241 +* Document reasoning for decisions 242 +* Escalate to experts when appropriate 243 +* Participate in audits when assigned 244 +* Provide constructive feedback 106 106 246 +=== Experts Must: === 247 + 248 +* Stay within domain expertise 249 +* Disclose conflicts of interest 250 +* Document specialized terminology 251 +* Provide reasoning for domain-specific decisions 252 +* Participate in Tier A audits 253 + 107 107 ---- 108 108 109 -== Moderator ==256 +== Quality Standards == 110 110 111 -Re sponsibilities:258 +=== Source Requirements === 112 112 113 -* Handle abuse reports, spam, harassment, and coordinated manipulation 114 -* Enforce community guidelines and legal constraints 115 -* Manage user bans, content takedowns, and visibility restrictions 260 +* Primary sources preferred over secondary 261 +* Publication date and author must be identifiable 262 +* Sources must be accessible (not paywalled when possible) 263 +* Contradictory sources must be acknowledged 264 +* Echo chamber sources must be flagged 116 116 117 - Permissions:266 +=== Claim Requirements === 118 118 119 -* Hide or temporarily disable access to abusive content 120 -* Ban or restrict users in line with policy 121 -* Edit or redact sensitive content (e.g., doxxing, illegal material) 268 +* Falsifiable or evaluable 269 +* Clear definitions of key terms 270 +* Boundaries and scope stated 271 +* Assumptions made explicit 272 +* Uncertainty acknowledged 122 122 123 - Limitations:274 +=== Evidence Requirements === 124 124 125 -* Does not change factual verdicts except where required for legal / safety reasons 126 -* Substantive fact changes must go through the review / expert process 276 +* Relevant to the claim and scenario 277 +* Reliability assessment provided 278 +* Methodology described (for studies) 279 +* Limitations noted 280 +* Conflicting evidence acknowledged 127 127 128 128 ---- 129 129 130 -== Maintainer/Administrator==284 +== Risk Tier Assignment == 131 131 132 -Responsibilities: 286 +**Automated (AKEL)**: Initial tier suggested based on domain, keywords, impact 287 +**Human Validation**: Moderators or Experts can override AKEL suggestions 288 +**Review**: Risk tiers periodically reviewed based on audit outcomes 133 133 134 -* Maintain node configuration, security settings, and backups 135 -* Configure AKEL, storage, federation endpoints, and performance tuning 136 -* Manage role assignments (who is Reviewer, Expert, Moderator, etc.) 137 -* Approve software updates and schema migrations 290 +**Tier A Indicators**: 138 138 139 -Permissions: 292 +* Medical diagnosis or treatment advice 293 +* Legal interpretation or advice 294 +* Election or voting information 295 +* Safety or security sensitive 296 +* Major financial decisions 297 +* Potential for significant harm 140 140 141 -* All read/write access to configuration, but not necessarily content editorial authority 142 -* Define organization-level policies (e.g., which sources are allowed by default) 299 +**Tier B Indicators**: 143 143 144 -Limitations: 301 +* Complex scientific causality 302 +* Contested policy domains 303 +* Historical interpretation with political implications 304 +* Significant economic impact claims 145 145 146 -* Editorialdecisionsoncontroversialtopics follow governance rules, not arbitrary admin choice306 +**Tier C Indicators**: 147 147 308 +* Established historical facts 309 +* Simple definitions 310 +* Well-documented scientific consensus 311 +* Basic reference information 312 + 148 148 ---- 149 149 150 -== AKEL (AI Knowledge Extraction Layer) == 151 151 152 - Responsibilities:316 +---- 153 153 154 -* Propose drafts — never final decisions 155 -* Normalize claims and extract candidate clusters 156 -* Draft scenarios, evidence candidates, and preliminary verdict suggestions 157 -* Propose re-evaluation when new evidence appears 318 +== User Role Hierarchy Diagram == 158 158 159 - Permissions:320 +The following diagram visualizes the complete role hierarchy: 160 160 161 -* Create and update **machine-generated drafts** and suggestions 162 -* Never directly publish content without human approval 322 +{{include reference="FactHarbor.Archive.FactHarbor V0\.9\.23 Lost Data.Specification.Diagrams.User Class Diagram.WebHome"/}} 163 163 164 - Limitations:324 +---- 165 165 166 -* AKEL output is always labeled as AI-generated draft 167 -* Must be reviewable, auditable, and overridable by humans 326 +---- 168 168 328 +== Role Hierarchy Diagrams == 329 + 330 +=== User Class Diagram === 331 + 332 +The following class diagram visualizes the complete user role hierarchy: 333 + 334 +{{include reference="FactHarbor.Archive.FactHarbor V0\.9\.23 Lost Data.Specification.Diagrams.User Class Diagram.WebHome"/}} 335 + 336 +=== Human User Roles === 337 + 338 +This diagram shows the two-track progression for human users: 339 + 340 +{{include reference="FactHarbor.Archive.FactHarbor V0\.9\.23 Lost Data.Specification.Diagrams.Human User Roles.WebHome"/}} 341 + 342 +=== Technical and System Users === 343 + 344 +This diagram shows system processes and their management: 345 + 346 +{{include reference="FactHarbor.Archive.FactHarbor V0\.9\.23 Lost Data.Specification.Diagrams.Technical and System Users.WebHome"/}} 347 + 348 +**Key Design Principles**: 349 + 350 +* **Two tracks from Contributor**: Content Track (Reviewer) and Technical Track (Maintainer) 351 +* **Technical Users**: System processes (AKEL, bots) managed by Maintainers 352 +* **Separation of concerns**: Editorial authority independent from technical authority 353 + 169 169 ---- 170 170 356 + 357 + 358 +---- 359 + 171 171 = Functional Requirements = 172 172 173 -This section defines what the system must **do**. 174 174 363 + 364 +This page defines what the FactHarbor system must **do** to fulfill its mission. 365 + 366 +Requirements are structured as FR (Functional Requirement) items and organized by capability area. 367 + 368 +---- 369 + 175 175 == Claim Intake & Normalization == 176 176 177 177 === FR1 – Claim Intake === ... ... @@ -178,36 +178,32 @@ 178 178 179 179 The system must support Claim creation from: 180 180 181 -* Free-text input 182 -* URLs (web pages, articles, posts) 183 -* Uploaded documents and transcripts 184 -* Structured feeds (optional, e.g. from partner platforms) 376 +* Free-text input (from any Reader) 377 +* URLs (web pages, articles, posts) 378 +* Uploaded documents and transcripts 379 +* Structured feeds (optional, e.g. from partner platforms) 380 +* Automated ingestion (federation input) 381 +* AKEL extraction from multi-claim texts 185 185 186 -Ac cepted sources:383 +**Automatic submission**: Any Reader can submit text, and new claims are added automatically unless identical claims already exist. 187 187 188 -* Text entered by users 189 -* URLs 190 -* Uploaded documents 191 -* Transcripts 192 -* Automated ingestion (optional federation input) 193 -* AKEL extraction from multi-claim texts 194 - 195 195 === FR2 – Claim Normalization === 196 196 197 -* Convert diverse inputs into short, structured, declarative claims 198 -* Preserve original phrasing for reference 199 -* Avoid hidden reinterpretation; differences between original and normalized phrasing must be visible 387 +* Convert diverse inputs into short, structured, declarative claims 388 +* Preserve original phrasing for reference 389 +* Avoid hidden reinterpretation; differences between original and normalized phrasing must be visible 200 200 201 201 === FR3 – Claim Classification === 202 202 203 -* Classify claims by topic, domain, and type (e.g., quantitative, causal, normative) 204 -* Suggest which node / experts are relevant 393 +* Classify claims by topic, domain, and type (e.g., quantitative, causal, normative) 394 +* Assign risk tier (A/B/C) based on domain and potential impact 395 +* Suggest which node / experts are relevant 205 205 206 206 === FR4 – Claim Clustering === 207 207 208 -* Group similar claims into Claim Clusters 209 -* Allow manual correction of cluster membership 210 -* Provide explanation why two claims are considered “same cluster”399 +* Group similar claims into Claim Clusters 400 +* Allow manual correction of cluster membership 401 +* Provide explanation why two claims are considered "same cluster" 211 211 212 212 ---- 213 213 ... ... @@ -215,29 +215,30 @@ 215 215 216 216 === FR5 – Scenario Creation === 217 217 218 -* Contributors, Reviewers, and Experts can create scenarios 219 -* AKEL can propose draft scenarios 220 -* Each scenario is tied to exactly one Claim Cluster 409 +* Contributors, Reviewers, and Experts can create scenarios 410 +* AKEL can propose draft scenarios 411 +* Each scenario is tied to exactly one Claim Cluster 221 221 222 222 === FR6 – Required Scenario Fields === 223 223 224 224 Each scenario includes: 225 225 226 -* Definitions (key terms) 227 -* Assumptions (explicit, testable where possible) 228 -* Boundaries (time, geography, population, conditions) 229 -* Scope of evidence considered 230 -* Intended decision / context (optional) 417 +* Definitions (key terms) 418 +* Assumptions (explicit, testable where possible) 419 +* Boundaries (time, geography, population, conditions) 420 +* Scope of evidence considered 421 +* Intended decision / context (optional) 231 231 232 232 === FR7 – Scenario Versioning === 233 233 234 -* Every change to a scenario creates a new version 235 -* Previous versions remain accessible with timestamps and rationale 425 +* Every change to a scenario creates a new version 426 +* Previous versions remain accessible with timestamps and rationale 427 +* ParentVersionID links versions 236 236 237 237 === FR8 – Scenario Comparison === 238 238 239 -* Users can compare scenarios side by side 240 -* Show differences in assumptions, definitions, and evidence sets 431 +* Users can compare scenarios side by side 432 +* Show differences in assumptions, definitions, and evidence sets 241 241 242 242 ---- 243 243 ... ... @@ -245,21 +245,24 @@ 245 245 246 246 === FR9 – Evidence Ingestion === 247 247 248 -* Attach external sources (articles, studies, datasets, reports, transcripts) to Scenarios 249 -* Allow multiple pieces of evidence per Scenario 440 +* Attach external sources (articles, studies, datasets, reports, transcripts) to Scenarios 441 +* Allow multiple pieces of evidence per Scenario 442 +* Support large file uploads (with size limits) 250 250 251 251 === FR10 – Evidence Assessment === 252 252 253 253 For each piece of evidence: 254 254 255 -* Assign reliability / quality ratings 256 -* Capture who rated it and why 257 -* Indicate known limitations, biases, or conflicts of interest 448 +* Assign reliability / quality ratings 449 +* Capture who rated it and why 450 +* Indicate known limitations, biases, or conflicts of interest 451 +* Track evidence version history 258 258 259 259 === FR11 – Evidence Linking === 260 260 261 -* Link one piece of evidence to multiple scenarios if relevant 262 -* Make dependencies explicit (e.g., “Scenario A uses subset of evidence used in Scenario B”) 455 +* Link one piece of evidence to multiple scenarios if relevant 456 +* Make dependencies explicit (e.g., "Scenario A uses subset of evidence used in Scenario B") 457 +* Use ScenarioEvidenceLink table with RelevanceScore 263 263 264 264 ---- 265 265 ... ... @@ -269,19 +269,22 @@ 269 269 270 270 For each Scenario: 271 271 272 -* Provide a **probability- or likelihood-based verdict** 273 -* Capture uncertainty and reasoning 274 -* Distinguish between AKEL draft and human-approved verdict 467 +* Provide a **probability- or likelihood-based verdict** 468 +* Capture uncertainty and reasoning 469 +* Distinguish between AKEL draft and human-approved verdict 470 +* Support Mode 1 (draft), Mode 2 (AI-generated), Mode 3 (human-reviewed) 275 275 276 276 === FR13 – Truth Landscape === 277 277 278 -* Aggregate all scenario-specific verdicts into a “truth landscape” for a claim 279 -* Make disagreements visible rather than collapsing them into a single binary result 474 +* Aggregate all scenario-specific verdicts into a "truth landscape" for a claim 475 +* Make disagreements visible rather than collapsing them into a single binary result 476 +* Show parallel scenarios and their respective verdicts 280 280 281 281 === FR14 – Time Evolution === 282 282 283 -* Show how verdicts and evidence evolve over time 284 -* Allow users to see “as of date X, what did we know?” 480 +* Show how verdicts and evidence evolve over time 481 +* Allow users to see "as of date X, what did we know?" 482 +* Maintain complete version history for auditing 285 285 286 286 ---- 287 287 ... ... @@ -289,153 +289,196 @@ 289 289 290 290 === FR15 – Workflow States === 291 291 292 -* Draft → In Review → Published / Rejected 293 -* Separate states for Claims, Scenarios, Evidence, and Verdicts 490 +* Draft → In Review → Published / Rejected 491 +* Separate states for Claims, Scenarios, Evidence, and Verdicts 492 +* Support Mode 1/2/3 publication model 294 294 295 295 === FR16 – Moderation & Abuse Handling === 296 296 297 -* Allow Moderators to hide content or lock edits for abuse or legal reasons 298 -* Keep internal audit trail even if public view is restricted 496 +* Allow Moderators to hide content or lock edits for abuse or legal reasons 497 +* Keep internal audit trail even if public view is restricted 498 +* Support user reporting and flagging 299 299 300 300 === FR17 – Audit Trail === 301 301 302 -* Every significant action (create, edit, publish, delete/hide) is logged with: 303 - * Who did it304 - * When305 - * What changed306 - * Why (shortcomment, optionalbutrecommended)502 +* Every significant action (create, edit, publish, delete/hide) is logged with: 503 +** Who did it 504 +** When (timestamp) 505 +** What changed (diffs) 506 +** Why (justification text) 307 307 308 308 ---- 309 309 310 -= FederationRequirements=510 +== Quality Gates & AI Review == 311 311 312 -F actHarborisdesignedtooperate as a **federated network ofnodes**.512 +=== FR18 – Quality Gate Validation === 313 313 314 - ===FR18–NodeAutonomy===514 +Before AI-generated content (Mode 2) publication, enforce: 315 315 316 -* Each node can run independently (local policies, local users, local moderation) 317 -* Nodes decide which other nodes to federate with 516 +* Gate 1: Source Quality 517 +* Gate 2: Contradiction Search (MANDATORY) 518 +* Gate 3: Uncertainty Quantification 519 +* Gate 4: Structural Integrity 318 318 319 -=== FR19 – DataSharingModes===521 +=== FR19 – Audit Sampling === 320 320 321 -Nodes must be able to: 523 +* Implement stratified sampling by risk tier 524 +* Recommendation: 30-50% Tier A, 10-20% Tier B, 5-10% Tier C 525 +* Support audit workflow and feedback loop 322 322 323 -* Share claims and summaries only 324 -* Share selected claims, scenarios, and verdicts 325 -* Share full underlying evidence metadata where allowed 326 -* Opt-out of sharing sensitive or restricted content 527 +=== FR20 – Risk Tier Assignment === 327 327 328 -=== FR20 – Synchronization & Conflict Handling === 529 +* AKEL suggests tier based on domain, keywords, impact 530 +* Moderators and Experts can override 531 +* Risk tier affects publication workflow 329 329 330 -* Changes from remote nodes must be mergeable or explicitly conflict-marked 331 -* Conflicting verdicts are allowed and visible; not forced into consensus 533 +---- 332 332 333 -== =FR21 – FederationDiscovery===535 +== Federation Requirements == 334 334 335 -* Discover other nodes and their capabilities (public endpoints, policies) 336 -* Allow whitelisting / blacklisting of nodes 537 +=== FR21 – Node Autonomy === 337 337 338 -**Basic federation** (minimum): 539 +* Each node can run independently (local policies, local users, local moderation) 540 +* Nodes decide which other nodes to federate with 541 +* Trust levels: Trusted / Neutral / Untrusted 339 339 340 -* Subscribe to and import selected claims and scenarios from other nodes 341 -* Keep provenance (which node originated what) 342 -* Respect remote deletion / redaction notices where required by policy or law 543 +=== FR22 – Data Sharing Modes === 343 343 344 - Advancedfederation(laterversions):545 +Nodes must be able to: 345 345 346 -* Cross-node search 347 -* Federation-wide discovery and reputation signals 547 +* Share claims and summaries only 548 +* Share selected claims, scenarios, and verdicts 549 +* Share full underlying evidence metadata where allowed 550 +* Opt-out of sharing sensitive or restricted content 348 348 552 +=== FR23 – Synchronization & Conflict Handling === 553 + 554 +* Changes from remote nodes must be mergeable or explicitly conflict-marked 555 +* Conflicting verdicts are allowed and visible; not forced into consensus 556 +* Support push/pull/subscription synchronization 557 + 558 +=== FR24 – Federation Discovery === 559 + 560 +* Discover other nodes and their capabilities (public endpoints, policies) 561 +* Allow whitelisting / blacklisting of nodes 562 +* Global identifier format: `factharbor://node_url/type/local_id` 563 + 564 +=== FR25 – Cross-Node AI Knowledge Exchange === 565 + 566 +* Share vector embeddings for clustering 567 +* Share canonical claim forms 568 +* Share scenario templates 569 +* Share contradiction alerts 570 +* NEVER share model weights 571 +* NEVER override local governance 572 + 349 349 ---- 350 350 351 -= Non-Functional Requirements (NFR)=575 +== Non-Functional Requirements == 352 352 353 -== NFR1 – Transparency == 577 +=== NFR1 – Transparency === 354 354 355 -* All assumptions, evidence, and reasoning behind verdicts must be visible 356 -* AKEL involvement must be clearly labeled 357 -* Users must be able to inspect the chain of reasoning and versions 579 +* All assumptions, evidence, and reasoning behind verdicts must be visible 580 +* AKEL involvement must be clearly labeled 581 +* Users must be able to inspect the chain of reasoning and versions 358 358 359 -== NFR2 – Security == 583 +=== NFR2 – Security === 360 360 361 -* Role-based access control 362 -* Transport-level security (HTTPS) 363 -* Secure storage of secrets (API keys, credentials) 364 -* Audit trails for sensitive actions 585 +* Role-based access control 586 +* Transport-level security (HTTPS) 587 +* Secure storage of secrets (API keys, credentials) 588 +* Audit trails for sensitive actions 365 365 366 -== NFR3 – Privacy & Compliance == 590 +=== NFR3 – Privacy & Compliance === 367 367 368 -* Configurable data retention policies 369 -* Ability to redact or pseudonymize personal data when required 370 -* Compliance hooks for jurisdiction-specific rules (e.g. GDPR-like deletion requests) 592 +* Configurable data retention policies 593 +* Ability to redact or pseudonymize personal data when required 594 +* Compliance hooks for jurisdiction-specific rules (e.g. GDPR-like deletion requests) 371 371 372 -== NFR4 – Performance == 596 +=== NFR4 – Performance === 373 373 374 -* POC: typical interactions < 2 s 375 -* Release 1.0: < 300 ms for common read operations after caching 376 -* Degradation strategies under load (e.g. partial federation results, limited history)598 +* POC: typical interactions < 2 s 599 +* Release 1.0: < 300 ms for common read operations after caching 600 +* Degradation strategies under load 377 377 378 -== NFR5 – Scalability == 602 +=== NFR5 – Scalability === 379 379 380 -* POC: **Fullyautomatedtext-to-truth-landscape**pipelineforvalidation.381 -* Beta 0: ~100 external testers on one node382 -* Release 1.0: **2000+ concurrent users** on a reasonably provisioned node 604 +* POC: 50 internal testers on one node 605 +* Beta 0: 100 external testers on one node 606 +* Release 1.0: **2000+ concurrent users** on a reasonably provisioned node 383 383 384 - Suggested technical targets for Release 1.0:608 +Technical targets for Release 1.0: 385 385 386 -* Scalable monolith or early microservice architecture 387 -* Sharded vector database (for semantic search) 388 -* Optional IPFS or other decentralized storage for large art efacts389 -* Horizontal scalability for read capacity 610 +* Scalable monolith or early microservice architecture 611 +* Sharded vector database (for semantic search) 612 +* Optional IPFS or other decentralized storage for large artifacts 613 +* Horizontal scalability for read capacity 390 390 391 -== NFR6 – Interoperability == 615 +=== NFR6 – Interoperability === 392 392 393 -* Open, documented API 394 -* Modular AKEL that can be swapped or extended 395 -* Federation protocols that follow open standards where possible 396 -* Standard model for external integrations (e.g. news platforms, research tools)617 +* Open, documented API 618 +* Modular AKEL that can be swapped or extended 619 +* Federation protocols that follow open standards where possible 620 +* Standard model for external integrations 397 397 398 -== NFR7 – Observability & Operations == 622 +=== NFR7 – Observability & Operations === 399 399 400 -* Metrics for performance, errors, and queue backlogs 401 -* Logs for key flows (claim intake, scenario changes, verdict updates, federation sync) 402 -* Health endpoints for monitoring 624 +* Metrics for performance, errors, and queue backlogs 625 +* Logs for key flows (claim intake, scenario changes, verdict updates, federation sync) 626 +* Health endpoints for monitoring 403 403 404 -== NFR8 – Maintainability == 628 +=== NFR8 – Maintainability === 405 405 406 -* Clear module boundaries (API, core services, AKEL, storage, federation) 407 -* Backward-compatible schema migration strategy where feasible 408 -* Configuration via files / environment variables, not hard-coded 630 +* Clear module boundaries (API, core services, AKEL, storage, federation) 631 +* Backward-compatible schema migration strategy where feasible 632 +* Configuration via files / environment variables, not hard-coded 409 409 410 -== NFR9 – Usability == 634 +=== NFR9 – Usability === 411 411 412 -* UI optimized for **exploring complexity**, not hiding it 413 -* Support for saved views, filters, and user-level preferences 414 -* Progressive disclosure: casual users see summaries, advanced users can dive deep 636 +* UI optimized for **exploring complexity**, not hiding it 637 +* Support for saved views, filters, and user-level preferences 638 +* Progressive disclosure: casual users see summaries, advanced users can dive deep 415 415 416 416 ---- 417 417 418 -= Release Levels = 642 +== Release Levels == 419 419 420 420 === Proof of Concept (POC) === 421 421 422 -* **Status:** Fully Automated "Text to Truth Landscape" 423 -* **Focus:** Validating automated extraction, scenario generation, and verdict computation without human-in-the-loop. 424 -* **Goal:** Demonstrate model capability on raw text input. 646 +* Single node 647 +* Limited user set (50 internal testers) 648 +* Basic claim → scenario → evidence → verdict flow 649 +* Minimal federation (optional) 650 +* AI-generated publication (Mode 2) demonstration 651 +* Quality gates active 425 425 426 426 === Beta 0 === 427 427 428 -* One or few nodes 429 -* External testers (~100) 430 -* Expanded workflows and basic moderation 431 -* Initial federation experiments 655 +* One or few nodes 656 +* External testers (100) 657 +* Expanded workflows and basic moderation 658 +* Initial federation experiments 659 +* Audit sampling implemented 432 432 433 433 === Release 1.0 === 434 434 435 -* 2000+ concurrent users 436 -* Scalable monolith or early microservices 437 -* Sharded vector DB 438 -* IPFS optional 439 -* High automation (AKEL assistance) 440 -* Multi-node federation 663 +* 2000+ concurrent users 664 +* Scalable architecture 665 +* Sharded vector DB 666 +* IPFS optional 667 +* High automation (AKEL assistance) 668 +* Multi-node federation with full sync protocol 669 +* Mature audit system 441 441 671 +---- 672 + 673 + 674 + 675 +== Related Pages == 676 + 677 + 678 + 679 +* [[AKEL (AI Knowledge Extraction Layer)>>FactHarbor.Specification.AI Knowledge Extraction Layer (AKEL).WebHome]] 680 +* [[Automation>>FactHarbor.Specification.Automation.WebHome]] 681 +* [[Workflows>>FactHarbor.Specification.Workflows.WebHome]] 682 +* [[Governance>>FactHarbor.Organisation.Governance]]