Wiki source code of Federation & Decentralization

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

Show last authors
1 = Federation & Decentralization =
2
3 FactHarbor is designed as a network of independent nodes rather than a single centralized service.
4 This provides resilience, local autonomy, and virtually unlimited scalability.
5
6 == Purpose of Federation ==
7
8 * **Resilience**: Against censorship or political pressure.
9 * **Autonomy**: Local governance and moderation.
10 * **Scalability**: Adding more nodes, not bigger servers.
11 * **Shared Knowledge**: Distributed structures without central authority.
12 * **Specialization**: Domain-specific nodes (e.g., Health, Climate).
13
14 == Federated Node Model ==
15
16 Each FactHarbor node maintains:
17 * Local PostgreSQL database, Vector DB, and Object Storage.
18 * Local AKEL instance.
19 * Local Reviewers and Governance policies.
20
21 Nodes exchange structured objects (Claims, Scenarios, Evidence metadata, Verdicts) via signed bundles.
22
23 == Global Identifiers ==
24
25 Format: ``factharbor://<node>/<type>/<local_id>``
26
27 Example: ``factharbor://factharbor.energy/claim/CLM-55812``
28
29 Identifiers are globally consistent, human-readable, and hash-derived.
30
31 == Data Sharing Model ==
32
33 * **Shared**: Claims, Scenario structures, Evidence metadata, Verdicts, Integrity hashes.
34 * **Not Shared**: Local users, Review discussions, Internal notes, Private evidence.
35
36 == Trust Model ==
37
38 Nodes maintain a **trust table** (Trusted, Neutral, Untrusted). This influences auto-import rules, re-review requirements, and visibility.
39
40 == Decentralized Processing ==
41
42 Each node performs its own AKEL processing, drafting, and verdict calculation. Nodes may specialize in specific domains (e.g., Medical Node).
43
44 == Synchronization Protocol ==
45
46 Nodes exchange **Version Bundles** containing:
47 * Claims, Scenarios, Metadata.
48 * Merkle-tree lineage.
49 * Cryptographic signatures.
50
51 Methods: Push (Webhook), Pull (Cron), Subscription.
52
53 == Scaling ==
54
55 * **Vertical**: API servers, Workers, Caching.
56 * **Horizontal**: Adding more nodes to the federation.
57
58 {{include reference="FactHarbor.Specification.Diagrams.Federation Architecture.WebHome"/}}