Changes for page Federation & Decentralization
Last modified by Robert Schaub on 2026/02/08 08:26
From version 2.3
edited by Robert Schaub
on 2025/12/24 20:30
on 2025/12/24 20:30
Change comment:
Update document after refactoring.
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -3,6 +3,7 @@ 3 3 FactHarbor is designed to operate as a **federated network of nodes** rather than a single central server. 4 4 5 5 Decentralization provides: 6 + 6 6 * **Resilience** against censorship or political pressure 7 7 * **Autonomy** for local governance and moderation 8 8 * **Scalability** across many independent communities ... ... @@ -22,6 +22,7 @@ 22 22 == 2. Federated FactHarbor Nodes == 23 23 24 24 Each FactHarbor instance ("node") maintains: 26 + 25 25 * Its own database 26 26 * Its own AKEL instance 27 27 * Its own reviewers, experts, and contributors ... ... @@ -28,6 +28,7 @@ 28 28 * Its own governance rules 29 29 30 30 Nodes exchange structured information: 33 + 31 31 * Claims 32 32 * Scenarios 33 33 * Evidence metadata (not necessarily full files) ... ... @@ -48,6 +48,7 @@ 48 48 `factharbor://factharbor.energy/claim/CLM-55812` 49 49 50 50 **Supported types**: 54 + 51 51 * `claim` 52 52 * `scenario` 53 53 * `evidence` ... ... @@ -56,6 +56,7 @@ 56 56 * `cluster` 57 57 58 58 **Properties**: 63 + 59 59 * Globally consistent 60 60 * Human-readable 61 61 * Hash-derived ... ... @@ -72,6 +72,7 @@ 72 72 === 4.1 Trust Levels === 73 73 74 74 **Trusted Nodes**: 80 + 75 75 * Claims auto-imported 76 76 * Scenarios accepted without re-review 77 77 * Evidence considered valid ... ... @@ -79,6 +79,7 @@ 79 79 * High synchronization priority 80 80 81 81 **Neutral Nodes**: 88 + 82 82 * Claims imported but flagged for review 83 83 * Scenarios require local validation 84 84 * Evidence requires re-assessment ... ... @@ -86,6 +86,7 @@ 86 86 * Normal synchronization priority 87 87 88 88 **Untrusted Nodes**: 96 + 89 89 * Claims quarantined, manual import only 90 90 * Scenarios rejected by default 91 91 * Evidence not accepted ... ... @@ -103,6 +103,7 @@ 103 103 === 4.3 Local Trust Authority === 104 104 105 105 Each node's governance team decides: 114 + 106 106 * Which nodes to trust 107 107 * Trust level criteria 108 108 * Trust escalation/degradation rules ... ... @@ -116,6 +116,7 @@ 116 116 === 5.1 What Nodes Share === 117 117 118 118 **Always shared** (if federation enabled): 128 + 119 119 * Claims and claim clusters 120 120 * Scenario structures 121 121 * Evidence metadata and content hashes ... ... @@ -122,6 +122,7 @@ 122 122 * Integrity signatures 123 123 124 124 **Optionally shared**: 135 + 125 125 * Full evidence files (large documents) 126 126 * Verdicts (nodes may choose to keep verdicts local) 127 127 * Vector embeddings ... ... @@ -129,6 +129,7 @@ 129 129 * AKEL distilled knowledge 130 130 131 131 **Never shared**: 143 + 132 132 * Internal user lists 133 133 * Reviewer comments and internal discussions 134 134 * Governance decisions and meeting notes ... ... @@ -138,6 +138,7 @@ 138 138 === 5.2 Large Evidence Files === 139 139 140 140 Evidence files are: 153 + 141 141 * Stored locally by default 142 142 * Referenced via global content hash 143 143 * Optionally served through IPFS ... ... @@ -144,7 +144,6 @@ 144 144 * Accessible via direct peer-to-peer transfer 145 145 * Can be stored in S3-compatible object storage 146 146 147 - 148 148 == 6. Synchronization Protocol == 149 149 150 150 Nodes exchange data using multiple synchronization methods: ... ... @@ -154,6 +154,7 @@ 154 154 **Mechanism**: Webhooks 155 155 156 156 When local content changes: 169 + 157 157 1. Node builds signed bundle 158 158 2. Sends webhook notification to subscribed nodes 159 159 3. Remote nodes fetch bundle ... ... @@ -166,6 +166,7 @@ 166 166 **Mechanism**: Scheduled polling 167 167 168 168 Nodes periodically: 182 + 169 169 1. Query partner nodes for updates 170 170 2. Fetch changed entities since last sync 171 171 3. Validate and import ... ... @@ -178,6 +178,7 @@ 178 178 **Mechanism**: WebSub-like protocol 179 179 180 180 Nodes subscribe to: 195 + 181 181 * Specific claim clusters 182 182 * Specific domains (medical, energy, etc.) 183 183 * Specific scenario types ... ... @@ -190,12 +190,12 @@ 190 190 === 6.4 Large Asset Transfer === 191 191 192 192 For files >10MB: 208 + 193 193 * S3-compatible object storage 194 194 * IPFS (content-addressed) 195 195 * Direct peer-to-peer transfer 196 196 * Chunked HTTP transfer with resume support 197 197 198 - 199 199 == 7. Federation Sync Workflow == 200 200 201 201 Complete synchronization sequence for creating and sharing new content: ... ... @@ -203,6 +203,7 @@ 203 203 === 7.1 Step 1: Local Node Creates New Versions === 204 204 205 205 User or AKEL creates: 221 + 206 206 * New claim version 207 207 * New scenario version 208 208 * New evidence version ... ... @@ -209,6 +209,7 @@ 209 209 * New verdict version 210 210 211 211 All changes tracked with: 228 + 212 212 * VersionID 213 213 * ParentVersionID 214 214 * AuthorType ... ... @@ -218,6 +218,7 @@ 218 218 === 7.2 Step 2: Federation Layer Builds Signed Bundle === 219 219 220 220 Federation layer packages: 238 + 221 221 * Entity data (claim, scenario, evidence metadata, verdict) 222 222 * Version lineage (ParentVersionID chain) 223 223 * Cryptographic signatures ... ... @@ -225,6 +225,7 @@ 225 225 * Trust metadata 226 226 227 227 Bundle format: 246 + 228 228 * JSON-LD for structured data 229 229 * Content-addressed hashes 230 230 * Digital signatures for integrity ... ... @@ -232,6 +232,7 @@ 232 232 === 7.3 Step 3: Bundle Includes Required Data === 233 233 234 234 Each bundle contains: 254 + 235 235 * **Claims**: Full claim text, classification, domain 236 236 * **Scenarios**: Definitions, assumptions, boundaries 237 237 * **Evidence metadata**: Source URLs, hashes, reliability scores (not always full files) ... ... @@ -242,11 +242,13 @@ 242 242 === 7.4 Step 4: Bundle Pushed to Trusted Neighbor Nodes === 243 243 244 244 Based on trust table: 265 + 245 245 * Push to **trusted nodes** immediately 246 246 * Queue for **neutral nodes** (batched) 247 247 * Skip **untrusted nodes** 248 248 249 249 Push methods: 271 + 250 250 * Webhook notification 251 251 * Direct API call 252 252 * Pub/Sub message queue ... ... @@ -254,6 +254,7 @@ 254 254 === 7.5 Step 5: Remote Nodes Validate Lineage and Signatures === 255 255 256 256 Receiving node: 279 + 257 257 1. Verifies cryptographic signatures 258 258 2. Validates version lineage (ParentVersionID chain) 259 259 3. Checks for conflicts with local data ... ... @@ -265,6 +265,7 @@ 265 265 === 7.6 Step 6: Accept or Branch Versions === 266 266 267 267 **Accept** (if validation passes): 291 + 268 268 * Import new versions 269 269 * Maintain provenance metadata 270 270 * Link to local related entities ... ... @@ -271,6 +271,7 @@ 271 271 * Update local indices 272 272 273 273 **Branch** (if conflict detected): 298 + 274 274 * Create parallel version tree 275 275 * Mark as "external branch" 276 276 * Allow local reviewers to merge or reject ... ... @@ -277,6 +277,7 @@ 277 277 * Preserve both version histories 278 278 279 279 **Reject** (if validation fails): 305 + 280 280 * Log rejection reason 281 281 * Notify source node (optional) 282 282 * Quarantine for manual review (optional) ... ... @@ -284,17 +284,18 @@ 284 284 === 7.7 Step 7: Local Re-evaluation Runs if Required === 285 285 286 286 After import, local node checks: 313 + 287 287 * Does new evidence affect existing verdicts? 288 288 * Do new scenarios require re-assessment? 289 289 * Are there contradictions with local content? 290 290 291 291 If yes: 319 + 292 292 * Trigger AKEL re-evaluation 293 293 * Queue for reviewer attention 294 294 * Update affected verdicts 295 295 * Notify users following related content 296 296 297 - 298 298 == 8. Cross-Node AI Knowledge Exchange == 299 299 300 300 Each node runs its own AKEL instance and may exchange AI-derived knowledge: ... ... @@ -302,26 +302,31 @@ 302 302 === 8.1 What Can Be Shared === 303 303 304 304 **Vector embeddings**: 332 + 305 305 * For cross-node claim clustering 306 306 * For semantic search alignment 307 307 * Never includes training data 308 308 309 309 **Canonical claim forms**: 338 + 310 310 * Normalized claim text 311 311 * Standard phrasing templates 312 312 * Domain-specific formulations 313 313 314 314 **Scenario templates**: 344 + 315 315 * Reusable scenario structures 316 316 * Common assumption patterns 317 317 * Evaluation method templates 318 318 319 319 **Contradiction alerts**: 350 + 320 320 * Detected conflicts between claims 321 321 * Evidence conflicts across nodes 322 322 * Scenario incompatibilities 323 323 324 324 **Metadata and insights**: 356 + 325 325 * Aggregate quality metrics 326 326 * Reliability signal extraction 327 327 * Bubble detection patterns ... ... @@ -354,10 +354,10 @@ 354 354 * No external AI control over local content 355 355 * Privacy-preserving knowledge exchange 356 356 357 - 358 358 == 9. Decentralized Processing == 359 359 360 360 Each node independently performs: 392 + 361 361 * AKEL processing 362 362 * Scenario drafting and validation 363 363 * Evidence review ... ... @@ -365,6 +365,7 @@ 365 365 * Truth landscape summarization 366 366 367 367 Nodes can specialize: 400 + 368 368 * Health-focused node with medical experts 369 369 * Energy-focused node with domain knowledge 370 370 * Small node delegating scenario libraries to partners ... ... @@ -371,15 +371,16 @@ 371 371 * Regional node with language/culture specialization 372 372 373 373 Optional data sharing includes: 407 + 374 374 * Embeddings for clustering 375 375 * Claim clusters for alignment 376 376 * Scenario templates for efficiency 377 377 * Verdict comparison metadata 378 378 379 - 380 380 == 10. Scaling to Thousands of Users == 381 381 382 382 Nodes scale independently through: 416 + 383 383 * Horizontally scalable API servers 384 384 * Worker pools for AKEL tasks 385 385 * Hybrid storage (local + S3/IPFS) ... ... @@ -389,6 +389,7 @@ 389 389 Federation allows effectively unlimited horizontal scaling by adding new nodes. 390 390 391 391 Communities may form: 426 + 392 392 * Domain-specific nodes (epidemiology, energy, climate) 393 393 * Language or region-based nodes 394 394 * NGO or institutional nodes ... ... @@ -396,6 +396,7 @@ 396 396 * Academic research nodes 397 397 398 398 Nodes cooperate through: 434 + 399 399 * Scenario library sharing 400 400 * Shared or overlapping claim clusters 401 401 * Expert delegation between nodes ... ... @@ -402,7 +402,6 @@ 402 402 * Distributed AKEL task support 403 403 * Cross-node quality audits 404 404 405 - 406 406 == 11. Federation and Release 1.0 == 407 407 408 408 **POC**: Single node, optional federation experiments ... ... @@ -410,6 +410,7 @@ 410 410 **Beta 0**: 2-3 nodes, basic federation protocol 411 411 412 412 **Release 1.0**: Full federation support with: 448 + 413 413 * Robust synchronization protocol 414 414 * Trust model implementation 415 415 * Cross-node AI knowledge exchange ... ... @@ -417,11 +417,9 @@ 417 417 * Distributed audit collaboration 418 418 * Inter-node expert consultation 419 419 420 - 421 421 == 12. Related Pages == 422 422 423 -* [[AKEL (AI Knowledge Extraction Layer)>>FactHarbor.Specification.AI Knowledge Extraction Layer (AKEL).WebHome]] 458 +* [[AKEL (AI Knowledge Extraction Layer)>>Archive.FactHarbor.Specification.AI Knowledge Extraction Layer (AKEL).WebHome]] 424 424 * [[Data Model>>FactHarbor.Specification.Data Model.WebHome]] 425 425 * [[Architecture>>FactHarbor.Specification.Architecture.WebHome]] 426 426 * [[Workflows>>FactHarbor.Specification.Workflows.WebHome]] 427 -