security_review/genesis_plan.json
2885 bytes
{
"allocation_boundary": {
"allocation_file_status": "not_approved",
"candidate_private_keys_allowed": false,
"devnet_wallet_balances_auto_migrate": false,
"public_distribution_status": "not_approved",
"supply_cap": "1000000000",
"supply_cap_units": 1000000000000000,
"treasury_address": "SPACE-TREASURY",
"treasury_governance_status": "not_approved"
},
"chain_id": "spacecash-devnet-1",
"id": "spacecash-devnet-genesis-plan-v1",
"mainnet_gaps": [
"approved allocation file",
"allocation reviewer signoff",
"public distribution plan",
"treasury governance or multisig setup",
"final mainnet chain id and address version",
"legal/compliance approval"
],
"manual_gate": {
"id": "production_deployment_runbook_complete",
"reason": "A fresh reviewed genesis allocation, deployment archive, and rollback procedure are required before launch.",
"status": "not_complete"
},
"migration_policy": {
"devnet_claim_tokens": "legacy claim-token compatibility is not accepted for mainnet allocation",
"devnet_orders": "historical product-order records are evidence only and do not create mainnet balances",
"legacy_unsigned_spends": "must not appear in a mainnet candidate",
"operator_action": "create a fresh reviewed candidate instead of editing historical devnet rows"
},
"mode": "local signed devnet",
"plan_hash": "55D62969DFEE8460989A8A36D59F37D78CFB8BAF48DE44BF7B991FE61DFEEC27",
"required_mainnet_inputs": [
"reviewed allocation file with address, amount, label, and basis",
"allocation total exactly equals approved supply cap",
"public distribution and treasury governance approval",
"wallet address version and recovery policy approval",
"legal/compliance approval for token/payment use",
"release manifest source hash and bundle checksums"
],
"review_checks": [
"candidate ledger automated readiness has no blockers",
"release bundle SHA256SUMS verifies",
"monetary_policy.json hash matches protocol config",
"wallet_policy.json hash matches protocol config",
"allocation file totals match supply cap",
"manual gates are signed off before any mainnet claim"
],
"scope": "Defines the current reviewed boundary between historical devnet state, clean candidates, and any future mainnet genesis. It is not a mainnet allocation approval.",
"source_of_truth": {
"current_devnet_db": "spacecash_devnet.sqlite3 is historical local devnet state only",
"devnet_history_carried_to_mainnet": false,
"mainnet_genesis_source": "fresh reviewed genesis allocation file, not a mutation of historical devnet state",
"release_candidate_db": "tools/spacecash_candidate.py builds a fresh signed-only candidate ledger for automated gate proof"
},
"version": 1
}