Wiki source code of Versioning Architecture
Version 3.3 by Robert Schaub on 2025/12/16 20:27
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | **Versioning Architecture** | ||
| 2 | |||
| 3 | This diagram shows how each entity type maintains its version history with parent-child relationships. | ||
| 4 | |||
| 5 | == Versioning Architecture Explanation == | ||
| 6 | |||
| 7 | **Version Chains**: | ||
| 8 | * Each entity type (Claim, Scenario, Evidence, Verdict) maintains independent version history | ||
| 9 | * **ParentVersionID** creates directed acyclic graph (DAG) of changes | ||
| 10 | * Arrow direction: Old version → New version (evolution over time) | ||
| 11 | |||
| 12 | **Version Metadata** (stored with every version): | ||
| 13 | * **VersionID**: Unique identifier for this specific version | ||
| 14 | * **ParentVersionID**: Links to previous version (null for v1) | ||
| 15 | * **AuthorType**: Human, AI, or ExternalNode | ||
| 16 | * **Timestamp**: Creation datetime (UTC) | ||
| 17 | * **JustificationText**: Brief explanation of changes | ||
| 18 | |||
| 19 | **Entity Relationships** (dotted lines): | ||
| 20 | * Claims **have** Scenarios: One claim can have multiple scenario interpretations | ||
| 21 | * Scenarios **use** Evidence: Each scenario version references specific evidence versions | ||
| 22 | * Scenarios **produce** Verdicts: Each scenario version gets verdict based on evidence | ||
| 23 | |||
| 24 | **Branching Support**: | ||
| 25 | * In federated environments, versions can branch: | ||
| 26 | - Node A: Version 1 → Version 2a | ||
| 27 | - Node B: Version 1 → Version 2b (parallel branch) | ||
| 28 | * Both branches preserved for conflict resolution | ||
| 29 | |||
| 30 | **Immutability**: | ||
| 31 | * Versions never deleted, only superseded | ||
| 32 | * Historical versions remain accessible | ||
| 33 | * Complete audit trail for all changes | ||
| 34 | |||
| 35 | {{include reference="Test.FactHarborV09.Specification.Diagrams.Versioning Architecture_Mermaid.WebHome"}} |