GaiaFTCL Fusion Mac Cell — Wiki
The sovereign M⁸ plasma control substrate
FortressAI Research Institute | Norwich, Connecticut
Patents: USPTO 19/460,960 | USPTO 19/096,071 — © 2026 Richard Gillespie
Updated: 2026-05-07 · Status: CALORIE — 156/156 tests · 18/18 in-app checks · 11/11 language games validated
---
Table of Contents
1. What This Is
2. Architecture
5. Mac App
8. Glossary
Related pages: Mac-Cell-Guide · Sovereign-M8-Qualification · Language-Games · Language-Game-Narrator · Franklin-Consciousness-MQ · vQbitPrimitive-ABI · Directive-Architecture · MCP-Cell-Server
---
1. What This Is
GaiaFTCL is a sovereign macOS application — Franklin.app — that operates an eight-dimensional manifold (M⁸ = S⁴ × C⁴) for constitutionally-governed fusion plasma measurement. It runs entirely in pure Swift 6.2 on Apple Silicon, ships as a single ad-hoc-signed DMG, and is qualified to GAMP 5.
The app is not a dashboard. It is a measurement substrate. Every operator interaction is a projection move validated by VQbitUIValidator before any state is committed. Every committed move produces a ClosureReceipt with a SHA-256 seal. Every receipt persists to SwiftData. No state mutation bypasses the FranklinDriver.propose() sovereign gate.
Three processes, one NATS bus, no external dependencies:
Franklin.app
├── Franklin — SwiftUI macOS app, RealityKit S4 projection
│ ├── FranklinDriver — sovereign gate: propose(_:origin:)
│ ├── FranklinSceneView — RealityKit USD scene viewer
│ └── SwiftNATSServer — embedded NATS on 127.0.0.1:4222
│
├── VQbitVM — child process: sovereign measurement engine
│ ├── S4DeltaWire → ManifoldTensorStore → C4ProjectionWire pipeline
│ ├── VQbitMeasurementGate — Bell/CHSH gates, constitutional invariants
│ └── Publishes: gaiaftcl.vm.ready · gaiaftcl.vm.heartbeat (30s)
│
└── FranklinConsciousnessService — child process: C4 projection + audit
├── FranklinConsciousnessActor — C4 projection loop, self-review
├── GRDB substrate — SQLite v1→v11 migrations
└── Publishes: gaiaftcl.franklin.consciousness.state
Hardware requirement: Apple Silicon (arm64). No Intel path, no AMD path. Unified memory architecture is load-bearing — RealityKit entity updates from C4ProjectionSystem go directly to the GPU without a staging buffer.
---
2. Architecture
2.1 The Sovereign Gate
Every S4/C4 mutation routes through a single method. Nothing bypasses it.
// Sources/GaiaFTCLApp/FranklinDriver.swift
@MainActor
public func propose(_ move: UIProjectionMove,
origin: ValidationOrigin,
modelContext: ModelContext? = nil) async -> UIValidationResult
VQbitUIValidator runs four gates in sequence:
1. Bounds gate — all 8 dimensions ∈ [0, 1]
2. Entropy gate — ΔE = current.health − proposed.health ≤ 0 (health must improve or hold)
3. Terminal gate — proposed state must not be .refused or .blocked
4. Mooring gate — primID must not be the zero UUID
On .closed(receipt): state is committed, ClosureReceiptRecord inserted into SwiftData, activeTone updated from domain.
On .refused(code, reason): SHA-256-sealed refused receipt persisted, activeTone shifts to .diagnostic. No state mutation.
2.2 NATS Subject Catalogue
| Subject | Direction | Payload | Purpose |
|---|---|---|---|
gaiaftcl.substrate.s4.delta |
VQbitVM → FCS | S4DeltaWire (53 B) | S4 dimension update |
gaiaftcl.substrate.c4projection |
FCS → App | C4ProjectionWire (53 B) | C4 constitutional state |
gaiaftcl.vm.ready |
VQbitVM → App | — | Stack ready signal |
gaiaftcl.vm.heartbeat |
VQbitVM → App | timestamp | 30s keepalive; marks all 9 cells live |
gaiaftcl.franklin.consciousness.state |
FCS → App | JSON | Consciousness state update |
2.3 Persistence
| Store | Location | What lives here |
|---|---|---|
| SwiftData | ~/Library/Application Support/default.store |
ClosureReceiptRecord — all game receipts |
| GRDB | substrate.sqlite (inside app sandbox) |
C4MemoryStore — genesis record, consciousness events |
| Evidence | ~/Library/Application Support/GaiaFTCL/qualification/ |
IQ/OQ/PQ JSON receipts |
2.4 The Sovereign Mesh
| Region | Cell IDs | Quorum role |
|---|---|---|
| HEL (Helsinki) | hel-01..hel-05 | Primary |
| NBG (Nuremberg) | nbg-01..nbg-04 | Secondary |
Quorum threshold: ≥5/9 cells. In standalone sovereign mode (single DMG), VQbitVM's gaiaftcl.vm.heartbeat marks all 9 cells live at first tick (~30s). Current mode: sovereign_single (0/5 remote peers). Quorum passes via OQ-004 Path B (standalone) until peers are live.
---
3. UUM-8D Framework
3.1 The Eight-Dimensional State Space
M⁸ = S⁴ × C⁴
S⁴ — Structural (Projection Space). What the system currently believes about the physical state.
| Dimension | Symbol | Fusion mapping | Range |
|---|---|---|---|
| s1 | Structural | plasma current (Ip) | [0, 1] |
| s2 | Temporal | toroidal field (Bt) | [0, 1] |
| s3 | Spatial | electron density (ne) | [0, 1] |
| s4 | Observable | cell coverage / rendered | [0, 1] |
C⁴ — Constitutional (Obligation Space). What the system is obligated to do.
| Dimension | Symbol | Meaning | Range |
|---|---|---|---|
| c1 | Trust | epistemic authority | [0, 1] |
| c2 | Identity | prim identity integrity | [0, 1] |
| c3 | Closure | gate closure state | [0, 1] |
| c4 | Consequence | action consequence weight | [0, 1] |
Constitutional health = mean(c1, c2, c3, c4).
3.2 Terminal States
| Health range | Terminal state | Meaning |
|---|---|---|
| ≥ 0.65 | CALORIE |
Value produced — numerically closed |
| 0.35 – 0.65 | CURE |
Converging — deficit healing |
| < 0.35 | BLOCKED |
Structural failure — measurement below floor |
| Explicit refusal | REFUSED |
Constitutional violation — no value emitted |
3.3 The vQbit Primitive
// Sources/GaiaFTCLCore/VQbitPrimitive.swift
public struct VQbitPrimitive: Sendable, Codable {
public var s1_structural: Float32
public var s2_temporal: Float32
public var s3_spatial: Float32
public var s4_observable: Float32
public var c1_trust: Float32
public var c2_identity: Float32
public var c3_closure: Float32
public var c4_consequence: Float32
public var primID: UUID
public var domain: String // FUSION / HEALTH / QUANTUM / etc.
public var timestampUTC: String
}
Wire formats (frozen by IQ-007):
| Format | Size | Subject |
|---|---|---|
S4DeltaWire |
53 bytes | gaiaftcl.substrate.s4.delta |
C4ProjectionWire |
53 bytes | gaiaftcl.substrate.c4projection |
Any wire size change requires a full GAMP 5 re-qualification.
3.4 Epistemic Tags
| Tag | Meaning |
|---|---|
| M | Measured — direct sensor reading, highest authority |
| T | Tested — validated simulation or lab test |
| I | Inferred — computed from measured data |
| A | Assumed — prior knowledge, lowest authority |
Tags are immutable for the lifetime of a measurement. A M-tagged value cannot be downgraded.
---
4. Fusion Domain
4.1 The Nine Canonical Plant Kinds
The nine fusion plant kinds define the physical parameter space. They are domain contexts for language game projections, not rendered UI entities.
| ID | Kind | Plasma current (Ip) | Magnetic field (Bt) | Density (ne) |
|---|---|---|---|---|
| 1 | Tokamak | 0.5–15 MA | 1.0–8.0 T | 10¹⁹–10²⁰ m⁻³ |
| 2 | Stellarator | 0.00–0.05 MA | 1.5–3.5 T | 10¹⁹–10²⁰ m⁻³ |
| 3 | Inertial Confinement | 0.00 MA | 0.00 T | 10³⁰–10³² m⁻³ |
| 4 | Spherical Tokamak | 0.1–3.0 MA | 0.5–2.5 T | 5×10¹⁹–5×10²⁰ m⁻³ |
| 5 | Reversed Field Pinch | 0.1–4.0 MA | 0.1–0.5 T | 10¹⁹–10²¹ m⁻³ |
| 6 | Spheromak | 0.1–1.5 MA | 0.1–1.0 T | 10¹⁹–10²¹ m⁻³ |
| 7 | Z-Pinch | 0.5–20 MA | ~0 T | 10²¹–10²³ m⁻³ |
| 8 | Mirror Machine | 0.01–0.5 MA | 0.5–10.0 T | 10¹⁸–10²⁰ m⁻³ |
| 9 | Magnetized Target | 0.01–0.5 MA | 0.05–1.0 T | 10²³–10²⁶ m⁻³ |
4.2 Fusion Domain — Language Game Mapping
The FUSION-001 language game maps the four S4 dimensions to fusion plasma:
| S4 | Fusion parameter | Units |
|---|---|---|
| s1 | Plasma current (Ip) | normalized MA |
| s2 | Toroidal field (Bt) | normalized T |
| s3 | Electron density (ne) | normalized m⁻³ |
| s4 | Cell coverage / observable | [0, 1] |
CALORIE on FUSION-001 requires constitutional health ≥ 0.82 with plasma confined.
4.3 Constitutional Rules for Fusion Telemetry
- No NaN, No Infinity. Any NaN or Inf in Ip, Bt, or ne is unconditional REFUSED. The cell does not warn. It halts.
- No negative telemetry. Ip, Bt, and ne must all be ≥ 0.0.
- Stellarator Ip cap. Ip ≤ 0.05 MA. Higher values indicate a configuration error.
- Epistemic tags are immutable. Set at measurement time, cannot change during a run.
---
5. Mac App
5.1 App Architecture
Franklin.app is a pure SwiftUI macOS application targeting macOS 26.0+ (arm64). The three-layer structure:
FranklinDriver (@Observable)
└─ Sovereign gate for all S4/C4 mutations
└─ NATS client (SwiftNATSServer embedded)
└─ SovereignStackLauncher (VQbitVM + FCS process management)
FranklinSceneView (RealityKit)
└─ FranklinSceneDirector — USD scene catalog
└─ C4ProjectionSystem — render tick updates from bridge
└─ C4ManifoldRuntimeBridge — only written via propose()
DomainStageView (SwiftUI nav bar)
└─ 11 language games (5 nav buttons: FUSION, HEALTH, QUANTUM menu, CHAT, HUD)
└─ LanguageGameMultiTurnView — per-turn validation + receipt persistence
5.2 The RealityKit S4 Layer
Every domain has a USD scene in FranklinSceneDirector.catalog. USD file locations:
| USD file | Purpose |
|---|---|
Sources/GaiaFTCL/Resources/Franklin.usda |
Franklin avatar + master anchor |
Sources/GaiaFTCL/Resources/VQbitUIProtocol.usda |
Portal prims (PortalChat, PortalManifold) |
USD hierarchy contract:
def Xform "<FileName>" (kind="group") ← defaultPrim
def Xform "<SCOPE_NAME>" (kind="group") ← must match catalog entry
def Xform "CatalogAnchor" ← M⁸ origin for portals
C4ProjectionSystem.update() runs every render tick, reads C4ManifoldRuntimeBridge, and updates entity components. The bridge is only written via FranklinDriver.propose().
Current USD portal states (2026-05-07):
| Prim | State | Closure condition |
|---|---|---|
| Franklin avatar | vqbit:rigState = "CURE" |
Deliver FranklinFigure-rigged.usdz to ~/Library/Application Support/GaiaFTCL/assets/ |
| PortalChat | vqbit:attachmentState = "CURE" |
macOS CURE is correct; full CALORIE requires visionOS 2.0 |
| PortalManifold | vqbit:attachmentState = "CURE" |
Same |
5.3 Franklin Consciousness Layer
FranklinConsciousnessActor runs inside FranklinConsciousnessService (child process). It maintains a C4 projection loop, self-review cycle, and inner monologue. All activity is journaled to GRDB (substrate.sqlite). The awakening ceremony runs on first launch and produces a GENESIS record.
Apple Intelligence (FoundationModels) is used for Franklin's chat responses in FRANKLIN-CHAT-001. Entitlement: com.apple.developer.foundation-models.inference.
5.4 Navigation
The main window nav bar (DomainStageView) is structured as five nav entries:
| Button | Type | Contents |
|---|---|---|
| FUSION | Single | FUSION-001 |
| HEALTH | Single | HEALTH-001 |
| QUANTUM | Menu | PROOF · CIRCUIT · VQE · LINALG · SIM · BOSONIC · QEC |
| CHAT | Single | FRANKLIN-CHAT-001 |
| HUD | Single | MANIFOLD-HUD-001 |
5.5 Franklin Constitutional State (2026-05-07)
| Dimension | Value | CALORIE threshold |
|---|---|---|
| c1 (trust) | 0.15 | ≥ 0.82 |
| c2 (identity) | 0.42 | ≥ 0.82 |
| c3 (closure) | 0.41 | ≤ 0.10 |
| c4 (consequence) | 0.40 | ≥ 0.82 |
| Constitutional health | 0.35 | ≥ 0.65 |
| Terminal state | BLOCKED | CALORIE |
Franklin is BLOCKED because C4 values are below threshold. Lift path: replay language games with s1–s4 ≥ 0.85 (requires slider fix) → VQbitVM measures S4 deltas → C4 improves → CALORIE.
5.6 Build
cd cells/xcode
# Build + test
swift build && swift test
# Sovereign DMG (118M, ad-hoc signed arm64)
zsh scripts/build_dmg.sh
# Verify CALORIE
zsh scripts/verify_calorie.sh
Build output: dist/GaiaFTCL-1.0.0.dmg. dist/ is gitignored.
Franklin.app/Contents/MacOS/Franklin is CFBundleExecutable. Build product is GaiaFTCLApp — build_dmg.sh renames it.
---
6. Language Games
Language games are the primary operator interface for submitting S4 projections. Full specification: [[Language-Games]].
| Game | Turns | CALORIE threshold | Status (2026-05-07) |
|---|---|---|---|
| FUSION-001 | 7 | health ≥ 0.82 | CURE |
| HEALTH-001 | 7 | all ≥ 0.80 | CURE |
| QUANTUM-PROOF-001 | 7 | s_mean ≥ 0.85 probe | CURE |
| QC-CIRCUIT-001 | 6 | gate fidelity ≥ 0.85 | CURE |
| QC-VARIATIONAL-001 | 6 | signal ≥ 0.80 | CURE |
| QC-LINALG-001 | 6 | geometry ≥ 0.70 | CURE |
| QC-SIMULATION-001 | 6 | converging ≥ 0.82 | CURE |
| QC-BOSONIC-001 | 6 | stable ≥ 0.88 | CURE |
| QC-ERRORCORR-001 | 6 | error rate ≥ 0.75 | CURE |
| FRANKLIN-CHAT-001 | 7 | defaults meet threshold | CALORIE |
| MANIFOLD-HUD-001 | 5 | all params in bounds | CURE |
Why 10/11 CURE: AppleScript set value of slider does not drive SwiftUI Slider bindings. Submitted s1–s4 stayed at defaults (~0.500). Fix next session: coordinate-based drag on slider track.
---
7. Constitutional Constraints
7.1 Invariant Set
These rules are hard-coded. No configuration, user action, or external signal overrides them.
1. No NaN, No Infinity. NaN/Inf in any S4 dimension → unconditional REFUSED.
2. No negative telemetry. All S4 values ≥ 0.0.
3. All S4/C4 values ∈ [0, 1]. Values outside this range are rejected at the bounds gate.
4. Entropy gate enforced. health_proposed ≥ health_current — system health must not decrease from any validated move.
5. Epistemic tags are immutable. Set at measurement time, cannot be downgraded.
6. Wire sizes frozen. S4DeltaWire.byteCount == 53 and C4ProjectionWire.byteCount == 53 enforced by IQ-007.
7. One authoritative Franklin.usda. Exactly one copy in Sources/GaiaFTCL/Resources/. Duplicates are rejected by check-no-duplicate-franklin-usda.sh.
8. FranklinSceneDirector.catalog scope must match USDA. scope string must exactly equal the def Xform name in the USD file.
9. Quantum algorithm count invariant. quantumAlgorithmCount() == 19. Enforced by IQ-006 and OQ-007.
10. All S4/C4 mutations route through propose(). No direct bridge write. Enforced by UngatedPathClosureTests.swift.
7.2 Change Control
Any change to the following requires a full GAMP 5 re-qualification cycle (IQ → OQ → PQ → new receipts):
S4DeltaWire.byteCountorC4ProjectionWire.byteCountVQbitPrimitivefield layoutFranklinDriver.propose()signature or validation logicSovereignQualificationRunnercheck set
---
8. Glossary
| Term | Definition |
|---|---|
| CALORIE | Terminal state: value produced. Constitutional health ≥ 0.65. |
| CURE | Terminal state: converging. Health 0.35–0.65. |
| BLOCKED | Terminal state: structural failure. Health < 0.35. |
| REFUSED | Terminal state: constitutional violation. Hard refusal with SHA-256-sealed reason. |
| C⁴ | Constitutional dimensions (c1–c4). Obligation space of the M⁸ manifold. |
| S⁴ | Structural dimensions (s1–s4). Projection space of the M⁸ manifold. |
| M⁸ | Eight-dimensional manifold: M⁸ = S⁴ × C⁴. |
| vQbit | Virtual quantum bit — one measurement primitive on M⁸. See [[vQbitPrimitive-ABI]]. |
| S4DeltaWire | 53-byte frozen wire format for S4 dimension updates over NATS. |
| C4ProjectionWire | 53-byte frozen wire format for C4 constitutional state over NATS. |
| FranklinDriver | @Observable sovereign gate. All state mutations route through propose(). |
| VQbitVM | Child process: sovereign measurement engine, Bell/CHSH gates, NATS publisher. |
| FCS | FranklinConsciousnessService — child process: C4 projection loop, GRDB audit. |
| IQ | Installation Qualification — 7 in-app checks, bundle integrity. |
| OQ | Operational Qualification — 7 in-app checks, live stack correctness. |
| PQ | Performance Qualification — 4 in-app checks, timing and determinism. |
| MQ | Module Qualification — GAMP5 build-time constitutional proofs. |
| ClosureReceipt | SHA-256-sealed audit record for every validated game turn. Persists to SwiftData. |
| GAMP 5 | Good Automated Manufacturing Practice v5 — the qualification framework. |
| SwiftNATSServer | Embedded NATS broker at 127.0.0.1:4222, no external NATS server required. |
| NATS | Messaging bus. Subjects prefixed gaiaftcl.*. |
| USD | Universal Scene Description. RealityKit scenes authored in .usda format. |
| Sovereign single | Mesh mode when no remote peers are live. OQ-004 passes via standalone path. |
0c7ca6eadf1999731355edd76cd15cf135165d2859cad52d7eaac14991afae09.
This page serves with a substrate-honest pending-signature notice until the operator's Franklin signer cosigns it.