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