Skip to content

Commit 967f0cb

Browse files
Merge pull request #12 from godofthunder101/godofthunder101-patch-1
Godofthunder101 patch 1
2 parents b6bff9e + 8208cd0 commit 967f0cb

5 files changed

Lines changed: 772 additions & 336 deletions

File tree

README.md

Lines changed: 69 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
# CrypSA — Cryptid Server Architecture
22

3-
CrypSA is an event-driven architecture for building persistent digital worlds.
3+
CrypSA defines how systems agree on truth through validated canonical events.
4+
5+
It is an event-driven architecture for building persistent digital worlds.
46

5-
Rather than synchronizing full world state, CrypSA synchronizes **validated canonical events under invariant rules**.
7+
Rather than synchronizing full world state, CrypSA synchronizes validated canonical events under invariant rules.
68

7-
Observers simulate locally. The validator defines what becomes canonical.
9+
All canonical changes pass through the invariant boundary, where system invariants are enforced.
10+
11+
Observers simulate locally. The validator defines what becomes canonical—and therefore what becomes shared reality.
812

913
> Reality is not synchronized — it is agreed upon through validated events.
1014
> The validator defines what becomes canonical.
@@ -25,6 +29,14 @@ If you're new to CrypSA, follow this path:
2529

2630
---
2731

32+
## 📘 How to Navigate This Repo
33+
34+
If you want to understand how to navigate CrypSA based on your goal and role:
35+
36+
👉 docs/How_To_Read_CrypSA.md
37+
38+
---
39+
2840
## ⚙️ System Model (At a Glance)
2941

3042
CrypSA follows a consistent event lifecycle:
@@ -37,14 +49,18 @@ CrypSA follows a consistent event lifecycle:
3749

3850
This defines the boundary between:
3951

40-
* local simulation
41-
* canonical reality
52+
* local simulation (non-authoritative)
53+
* canonical reality (validator-defined)
54+
55+
Canonical event history is an append-only log that defines the shared reality of the system.
56+
57+
All derived state must be consistent with this history.
4258

4359
---
4460

4561
## 🛠 Build CrypSA
4662

47-
Start implementing with the minimal validator:
63+
Start implementing a CrypSA system with the minimal validator:
4864

4965
👉 implementation/minimal_validator/CrypSA_Minimal_Validator_v0.1.md
5066

@@ -54,9 +70,9 @@ Then follow:
5470

5571
---
5672

57-
## 🧠 What CrypSA Is
73+
## 🧠 What CrypSA Is (and Is Not)
5874

59-
CrypSA defines how systems establish canonical truth.
75+
CrypSA defines how systems establish and maintain canonical truth over time through validated events.
6076

6177
It provides a model where:
6278

@@ -66,20 +82,33 @@ It provides a model where:
6682

6783
> Derived canonical state is a projection of canonical event history. It is not the source of truth.
6884
69-
This enables systems that are:
85+
---
7086

71-
* deterministic
72-
* replayable
73-
* resistant to desynchronization
87+
### ✅ CrypSA Is
7488

75-
---
89+
CrypSA is:
90+
91+
* a structured architecture model
92+
* a set of invariants around truth, validation, and canonical event history
93+
* a framework for building replayable, consistent systems
7694

77-
## ❌ What CrypSA Is Not
95+
It defines:
7896

79-
CrypSA does not replace engines or networking stacks.
97+
👉 what must be true for a system to maintain canonical agreement
8098

81-
It is not:
99+
CrypSA is typically integrated alongside existing systems such as game engines, simulation layers, and networking stacks.
82100

101+
Systems built with CrypSA are inherently replayable from canonical event history.
102+
103+
---
104+
105+
### ❌ CrypSA Is NOT
106+
107+
CrypSA is not:
108+
109+
* a fixed networking architecture
110+
* a required client-server topology
111+
* a one-size-fits-all implementation
83112
* a game engine
84113
* a networking library
85114
* a state replication system
@@ -89,17 +118,35 @@ It is not:
89118
90119
---
91120

92-
## 🔒 Core Rules
121+
### 🧭 What CrypSA Defines vs Leaves Open
122+
123+
CrypSA defines:
124+
125+
* how events become canonical
126+
* how truth is established
127+
* how state is derived from canonical event history
93128

94-
The following must always hold:
129+
CrypSA intentionally leaves open:
95130

96-
* Only the validator may modify canonical event history
97-
* All canonical changes must pass validation
98-
* All candidate events must cross the invariant boundary
99-
* Observers may simulate freely, but never define truth
131+
* how systems are structured at runtime
132+
* how networking is implemented
133+
* how reconciliation and prediction are handled
134+
* how systems are shaped to meet product goals
135+
136+
👉 CrypSA defines invariants and structure, not a single implementation.
137+
138+
👉 CrypSA provides a structured design space for making these decisions.
139+
140+
👉 Implementers are expected to choose these based on product requirements.
100141

101142
---
102143

144+
### 📘 Learn More
145+
146+
For a full breakdown of invariants and product-dependent design:
147+
148+
👉 architecture/CrypSA_Invariants_and_Design_Space.md — defines invariants and guides product-level design decisions
149+
103150
## ⚙️ How CrypSA Works
104151

105152
```mermaid

architecture/CrypSA_Invariant_Boundary.md

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,10 @@ The **invariant boundary** is the control and validation interface between:
4747
4848
It defines:
4949

50-
* how inputs are evaluated
51-
* how validation is performed
52-
* what outputs are produced
50+
* how inputs are evaluated
51+
* how validation is performed
52+
* what outputs are produced
53+
* how canonical events are created or rejected
5354

5455
---
5556

@@ -62,6 +63,21 @@ It defines:
6263

6364
---
6465

66+
## Guarantees
67+
68+
The invariant boundary guarantees:
69+
70+
* **No observer authority leakage**
71+
Observers cannot directly affect canonical event history.
72+
73+
* **Deterministic canonicalization**
74+
Given the same candidate event and canonical context, the validator produces the same result.
75+
76+
* **Atomic validation within conflict scope**
77+
Each candidate event is evaluated as a single unit of validation and either fully accepted or rejected.
78+
79+
---
80+
6581
## Input
6682

6783
The invariant boundary receives:
@@ -107,6 +123,9 @@ At the invariant boundary, the validator performs:
107123
* invariant enforcement
108124
* rule evaluation
109125

126+
These stages may be structured differently depending on the implementation,
127+
but must produce consistent results for the same input and context.
128+
110129
The validator must produce the same outcome given the same input and canonical context.
111130

112131
---

0 commit comments

Comments
 (0)