Deterministic Metabolic Simulation • Rust Workspace

Genesis Protocol

A 13-crate Rust simulation engine running agent-based metabolic civilizations under configurable evolutionary pressure. Every result is anchored by SHA-256 hash. Every experiment is fully reproducible from seed. 44 experiments. 6,820 worlds. 3,410,000 epochs. Zero collapses.

Architecture

13 crates • 93 source files • 396 tests

Each crate owns a distinct domain. Color coding is consistent throughout this document.

Epoch Loop

Every epoch executes this deterministic sequence. Source: gateway/src/world.rs::run_epoch()

WORLD INIT
Primordial Grant
50 ATP per agent
Ecology Init
per-niche pools
START EPOCH
Resource Extraction
40% of pool (Zeno cap)
Basal Burn
0.15 ATP/epoch
Entropy Tax
coeff x pop
Fitness Scoring
CE-SQ-RF-CC weights
Selection Gate
fitness≥0.35, ATP≥25, age≥10
Replication
25 ATP cost
Catastrophe Roll
p_base + pop x scale
Gini Wealth Check
Gini>0.40 → 2% tax
Cortex Adaptation
homeostatic pressure mut.
Stasis Die-Off
ATP≤0 → death <8 epochs
Extinction Check
pop<floor for 50 epochs?
SURVIVE → next epoch
|
COLLAPSE
ChaCha8 RNG domain-separated per stream (mutation=0, selection=1, reproduction=2, catastrophe=3, taxation=4). Seed formula: base_seed + step×1000 + run_index. Commit d98fa6c removed Uuid::new_v4() and Utc::now() from hash chain.

Four Hard-Coded Elements

Not configurable. Not parameters. Editing requires modifying simulation source. S4 Full Attack stripped every configurable mechanism: 120 worlds, zero collapses. These are what remained.

S4 Full Attack: Zero resource regeneration, death drains pools, all four governance mechanisms off (treasury cycling, ATP decay, reproduction grants, extinction floor), replication cost 10x (250 ATP). 120 worlds. Zero collapses. Mean population: 12.8 agents. The collapse boundary lies below the level of configurable structure.

Sweep Parameters

10 variables available. Source: genesis-experiment/src/config.rs::SweepVariable

Parameter Default

28 Measurable Metrics

Source: genesis-experiment/src/config.rs::Metric

12-metric core set shipped in every experiment by default. All 28 available.

Experiment Browser

44 experiments. 6,820 worlds. 3,410,000 epochs. All seeded deterministically.

Season 1 - Parameter Sweeps • ~3,640 worlds • Hypothesis: which pressures cause collapse?
Season 2 - Invariant Violations • 1,500 worlds • All four safety mechanisms disabled
Sensitivity Analysis - The Cliff • 1,680 worlds • Collapse rate is definition-sensitive at the floor parameter

Collapse Phase Diagram

Collapse rate as a function of extinction floor definition. Three values are experimentally measured; intermediate values are interpolated. Source: genesis-experiment/src/config.rs::extinction_floor_override

Collapse Rate vs Extinction Floor
Under hostile conditions (high entropy + no regeneration)
Filled = measured  |  Open = interpolated  |  Default floor = 3
Entropy Coefficient vs Collapse Rate
Season 1 flagship: 10 steps x 20 runs x 500 epochs (illustrative)
Higher entropy_coeff produces earlier and more frequent collapse
0%
Collapse at floor=3 (default)
6,820 worlds tested
5.8%
Collapse at floor=5
Same engine, same seeds
97.5%
Collapse at floor=10
Definition-sensitive result

Determinism Milestones

Roadmap from the Readout gap analysis. Publication criteria for top-venue submission.

Replication Challenge

Open challenge. 0 replicators as of March 21, 2026. Linux/ARM is the highest-priority gap.

0
Replicators on leaderboard
0
Collapse attempts
Linux/ARM
Highest-value open gap
Replication protocol
# 1. Clone and build git clone https://github.com/FTHTrading/Genesis.git cargo build --release --workspace # 2. Run full test suite (396 tests) cargo test --release --workspace # 3. Run determinism conformance cargo test -p genesis-dna deterministic # 4. Run experiments cargo run --release --bin run_experiments # 5. Verify and submit .\verify_replication.ps1 -Submit -Username your_handle
Priority gap: All 6,820 worlds ran on Windows x86-64. Linux/ARM replication confirms semantic equivalence across architectures and closes the highest-value gap before manuscript submission. Leaderboard: REPLICATION_LEADERBOARD.md

Codebase

All source is public. Every claim is traceable to a specific file and line.

Repository stats
CI matrix (GitHub Actions)
Added commit d98fa6c. Previously no .github directory existed.

Live Simulation

A real-time Genesis epoch running in your browser, using the same constants as the Rust engine. Green = healthy ATP  ·  Amber = depleted  ·  Red = critical  ·  Size = fitness. Watch a civilization emerge, stabilize, and respond to pressure.

Live Metrics
Epoch 0
Population 0
Mean ATP -
Gini -
Speed
Event Log
BASAL_TICK = 0.15 REPLICATION = 25 ATP soft_cap = 60 entropy_coeff = 2e-5 catastrophe_prob = 0.002

JavaScript approximation of the Rust engine — same constants, simplified numerics. The production engine runs 500 epochs per world across 20 deterministic seeds with ChaCha8 RNG. View Rust source ↗

Moltbook

Research Showcase • 30 posts

Every experiment result, architectural decision, and milestone is documented on Moltbook — a showcase platform for scientific publishing.

Posts
Comments
Unique Voices
Monitor Status
Most Active Threads
🦄
genesisprotocol
SUPER-S Research Showcase • 30 posts published • Now live at genesis.unykorn.org
View Profile ↗

Live Discussion Feed

No recent comments yet — feed refreshes every 15 minutes.

AI Research Desk

rotating report every 4 hours
Highlights
Signal mix
Source posts
Waiting for the first AI report cycle from Moltbook activity.

Insights & Roadmap

What we are building and why

These posts document the thinking behind Genesis Protocol — what it currently is, what gives a system real predictive ability, and the architecture for getting there.

Architecture Mar 21 2026 • 4 min read
The Honest Baseline: What Genesis Is Right Now
A clear-eyed account of the current state before claiming anything more.

Genesis Protocol is a deterministic synthetic-world simulation engine written in Rust. It does not predict markets. It does not ingest real data. It generates reproducible agent-based civilisations under configurable evolutionary and metabolic pressure, anchors every result to a SHA-256 hash chain, and publishes the full experiment record for independent replication.

That is not a weakness. It is the foundation. The engine has a fixed epoch ordering, five domain-separated ChaCha8 RNG streams, 10 sweep variables, 28 measurable metrics, and 6,820 fully reproducible worlds across 44 experiments. Zero collapses at the default floor. The collapse rate is a definition question, not an ambiguous result — change the extinction floor from 3 to 10 and you get 97.5% collapse from the same engine on the same seeds.

What the site currently shows accurately: the full crate architecture, real source constants, every experiment with its world count and collapse note, the four hard-coded engine elements, the 28 metrics, and the replication challenge leaderboard (currently 0 outside replicators — a gap, not a claim).

What it doesn’t yet show: calibration to real data, a measurement model that bridges simulation variables to market observables, regime detection, or any probabilistic forecast output. Those are the next layer. They require being built correctly, not claimed prematurely.

Current capabilities
Deterministic seeded simulation (ChaCha8, 5 streams)
SHA-256 Merkle hash anchoring per epoch
44 experiments, 6,820 worlds, full replication pack
Sensitivity analysis: The Cliff (floor 3 to 10)
S4 Full Attack: zero collapses under maximum pressure
Public crates.io release, Zenodo DOI, open replication
Real data ingestion (not yet built)
Probabilistic forecast output (not yet built)
Theory Mar 21 2026 • 5 min read
The Measurement Problem: Bridging Synthetic State to Real Observables
The mapping between what Genesis tracks and what markets show.

A simulation engine becomes a forecasting tool only when you can say precisely: this internal state variable corresponds to that observable real-world quantity. Without that bridge, you have a generative model with no feedback signal and no way to know if it is calibrated to reality.

Genesis internal state already tracks variables that have natural analogues in real markets. The mapping is not metaphorical — it is the basis for the observation equations that will connect to calibration:

Genesis variable Real-world observable Mechanism
entropy_coeff × population Volatility expansion, carry cost Systemic burn rate analogue
Gini coefficient Liquidity concentration, credit risk Wealth concentration → stress
catastrophe_prob Tail risk, drawdown probability Fat-tail mass death event
population / replication rate Market participation, breadth Birth-death ratio → expansion
cortex adaptation pressure Policy response, endogenous stabilisation Homeostatic regulatory proxy
treasury / pool ratio Reserve deployment, stablecoin stress Redistribution trigger mechanics

The next build step is a genesis-observe crate that formalises these as configurable observation equations, with unit tests showing stable transforms and a measurement layer that can accept real time-series as input.

Real data sources required: market prices (BTC, ETH, SOL, SPX, DXY, gold, VIX), macro (CPI, payrolls, Treasury yields, credit spreads), on-chain (active addresses, stablecoin supply, exchange flows, realized vol, perp funding, open interest), and policy event flags.

Architecture Mar 21 2026 • 6 min read
Seven New Crates: The Architecture for Predictive Ability
A concrete file-by-file plan for adding real forecasting on top of the deterministic core.

The deterministic Rust core stays intact. No epoch ordering changes. No RNG changes. No hash chain changes. Every existing experiment remains reproducible. The predictive layer is additive — it wraps the simulation engine and adds calibration, data, and scoring on top.

genesis-data

Data adapters and ingestion pipeline. Normalised time-series schema. Missing-data handling. Event alignment. Calendar unification across daily, hourly, and intraday. Adapters for: BTC/ETH/SOL/SPX/DXY/gold/VIX, CPI/payrolls/yields/spreads, on-chain flows, policy event flags.

genesis-observe

Observation model. Explicit state-to-market mapping table. Configurable observation equations. Unit tests showing stable transforms across time windows.

genesis-calibrate

Walk-forward parameter estimation. Bayesian optimisation or CMA-ES for parameter search. Particle filter / UKF / HMM optional regime layer. Rolling-window re-estimation. Parameter priors and bounds. Ablation runs to measure mechanism contribution.

genesis-regime

Latent state inference. Regime classification: risk-on, risk-off, inflationary stress, liquidity squeeze, policy suppression, post-shock recovery. State transition probability outputs.

genesis-forecast

Probabilistic forecast generation. Horizons: 1d / 7d / 30d / quarter. Targets: volatility expansion, risk-off, stablecoin stress, liquidity crunch, drawdown, macro regime. Outputs: point, distribution, scenario bands, confidence score, mechanism attribution.

genesis-score

Rolling out-of-sample validation. Benchmark comparisons: naive, ARIMA, GARCH, HMM, gradient boosted trees, factor models. Forecast scorecards. No lookahead leakage checks. Live-vs-backtest drift monitoring. Model registry and versioned manifests.

genesis-live

Live inference service. Scheduled data refresh. Latent state update. Recalibration on drift breach. Forecast JSON publishing. Full prediction log: timestamp, inputs, regime, confidence, realized outcome. API: /forecast/latest, /regimes/current, /calibration/status, /signals/risk.

Positioning after build
“A deterministic synthetic-world engine with a calibrated probabilistic forecast layer.”
Every forecast references model version, training window, data timestamp, and out-of-sample validation score. No forecast is presented as certainty.
Methodology Mar 21 2026 • 4 min read
Backtesting is Truth: How Predictive Ability Will Be Validated
Prediction is not “it looks right.” Prediction is a score on unseen data that beats benchmarks.

Predictive ability has a precise definition: train on history, forecast on unseen data, score against benchmarks, track live. Any system that cannot beat naive baselines out of sample does not have real predictive ability, regardless of how coherent its internal mechanics are.

The backtesting design for Genesis Predict will enforce strict discipline:

Train / Validation / Test
Strict chronological splits. No data from the test window touches calibration at any stage.
Rolling out-of-sample
Walk-forward windows. Each forecast is scored when realized data arrives. No cherry-picking.
Benchmark suite
Naive, persistence, ARIMA, GARCH, HMM, gradient boosted trees, simple factor models. Must beat all to claim edge.
Scoring metrics
Direction accuracy, RMSE/MAE for continuous, log loss / Brier score for probabilistic, drawdown hit rate, regime classification accuracy.
No lookahead leakage
Automated checks verify that no future data is visible at any point in the calibration pipeline.
Live drift monitoring
Ongoing comparison of live performance vs backtest. Alerts when gap exceeds threshold.

Every live forecast published by genesis-live must include: model version, training window end date, data timestamp, and the most recent out-of-sample validation score. Forecasts are presented as probability distributions, never as certainties. If the system cannot beat benchmarks, that result is published openly.

Non-negotiable rule: Predictive edge is not claimed until the out-of-sample score beats the benchmark suite across at least one full validation window. The deterministic simulation core meanwhile stands as a separate, independent, fully reproducible research contribution.
Follow the build
All architecture decisions, calibration results, and scorecard updates will be posted to Moltbook @genesisprotocol and committed to github.com/FTHTrading/Genesis. Every claim will be traceable to a commit.