Update docs

This commit is contained in:
Raven Scott
2026-07-31 00:51:00 -04:00
parent 5fb6820ec8
commit 756bdc5274
22 changed files with 398 additions and 135 deletions
@@ -19,6 +19,14 @@ Do **not** hard-depend on `holesail`.
Optional: capability proof on stream open (`hyperswarm-capability`).
```mermaid
flowchart LR
GJ[Guest Java] --> GL["Guest 127.0.0.1"]
GL --> Pipe["HyperDHT byte pipe"]
Pipe --> HS["Host Squid 127.0.0.1"]
HJ[Host Java] --> HS
```
## Consequences
### Positive
@@ -17,6 +17,13 @@ A single global authoritative Minecraft simulation across many peers is unrealis
4. Guest switches HyperDHT tunnel to neighbor `worldKey` and reconnects Java to localhost.
5. Spawn at mapped coordinates.
```mermaid
flowchart LR
R1["Region A Squid"] -->|"border"| Mig["Session migrate<br/>handoff + tunnel switch"]
Mig --> R2["Region B Squid"]
Java[Java client] -->|"reconnect localhost"| R2
```
**Not in v1:** streaming foreign chunks into the local Squid world or dual-sim entity forwarding.
Later phases may add interest-based border sync without abandoning local authority.
@@ -15,6 +15,13 @@ Invite envelope:
fj1.<encoded-payload>
```
```mermaid
flowchart LR
JSON["JSON payload<br/>worldKey cap meta"] --> UTF[UTF-8]
UTF --> Z32[z32 encode]
Z32 --> Str["fj1. string"]
```
Payload (logical) includes protocol version, type (`private-world` | `mesh`), `worldKey`, shared `cap`, optional name/mcVersion/expires.
Phase 2 encoding: JSON → z32 (debug-friendly). May migrate to compact-encoding later (Q13).
@@ -44,21 +44,22 @@ GUI remains desirable later, but **runtime authority and release shape must be B
| Minecraft authority | **Bare** (same process or Bare worker) | Flying Squid via bare-node-runtime |
| Optional GUI | Pear-compatible UI that does **not** own Squid on Node | Prefer Bare UI/TUI first; any desktop GUI must call into Bare-only backend. Electron is **not** the default shell. |
```text
┌─────────────────────────────────────────────────────────┐
│ Single Bare executable / Pear app │
│ ┌──────────────┐ framed IPC ┌────────────────┐ │
│ │ Main (Bare) │◄─────────────────►│ Worker (Bare) │ │
│ │ UI or CLI │ │ pear-runtime │ │
│ Squid mgr │ │ swarm/tunnel │ │
│ │ or in-worker │ │ Autobase │ │
│ └──────┬───────┘ └───────┬────────┘ │
│ │ createMCServer (Bare+compat) │ │
│ ▼ ▼ │
Squid listens 127.0.0.1 only HyperDHT world tunnel
└─────────────────────────────────────────────────────────┘
│ Java Edition → localhost only
```mermaid
flowchart TB
Java["Java Edition<br/>localhost only"]
subgraph App["Single Bare executable / Pear app"]
Main["Main Bare<br/>UI or CLI / Squid mgr"]
Worker["Worker Bare<br/>pear-runtime / swarm / tunnel / Autobase"]
Squid["Squid listens 127.0.0.1 only"]
Tunnel["HyperDHT world tunnel"]
Main <-->|"framed IPC"| Worker
Main -->|"createMCServer Bare+compat"| Squid
Worker --> Tunnel
Tunnel <--> Squid
end
Java --> Squid
```
### 4. Distribution: Pear apps + bare-build standalone executables