Files
arkhe-origin-chain/crates/origin-chain-runtime/Cargo.toml
T
davidherranandClaude Opus 4.6 a695f45a2d feat(genesis): Phase 1.7 — Genesis chain_spec BM V2 allocation v0.0.9
Origin Chain runtime canonical ahora tiene 3 genesis presets canonical
materializando BM V2 ratificado David 2026-05-18: development + local_testnet
+ mainnet_genesis. Phase 1 COMPLETE canonical 🎉.

## 3 presets canonical
- development: 1 validator Alice + 100M OGC para dev mode
- local_testnet: Alice+Bob validators + 5 dev accounts × 100M OGC
- mainnet_genesis: 5 Pi 5 validators placeholders + BM V2 1B OGC allocation

## BM V2 allocation canonical materializada
- ECOSYSTEM_ALLOCATION = 400M OGC (40%)
- FOUNDATION_ALLOCATION = 250M OGC (25%)
- PUBLIC_SALE_ALLOCATION = 150M OGC (15%)
- FOUNDING_TEAM_ALLOCATION = 150M OGC (15% — 4yr vesting cliff 12mo)
- EXCHANGE_LIQUIDITY_ALLOCATION = 50M OGC (5%)
- Compile-time assertion canonical: sum MUST equal 1B OGC

## Decisión empírica: drop sp-keyring (version mismatch sp_core stable2512)
Hardcoded Substrate well-known dev account bytes (Alice/Bob/Charlie/Dave/Eve
sr25519 + Alice/Bob Ed25519 GRANDPA). Mismos bytes que sp_keyring retornaría.
Self-contained runtime + version stability + polkadot-js compat preserved.

## Mainnet institutional placeholders canonical
ECO!.../FNDT.../SALE.../TEAM.../LIQD... — David ratifica keys reales
canonical generadas por hardware key ceremony pre-launch Q1 2027.

## 5 Pi 5 validators placeholders canonical
Pattern: 0xCA + 0xFE + index distinguishable canonical en block explorer.
David ratificará Dream House Studios + universidades aliadas Identity Level 3
canonical pre-launch.

## GenesisBuilder API wired
sp_genesis_builder::GenesisBuilder::get_preset() ahora delegates a
genesis_config_presets::get_preset(). preset_names() returns 3 PresetIds.

## Tests +6 nuevos (~63 total workspace)
- bm_v2_allocations_sum_canonical_to_one_billion_ogc
- bm_v2_allocation_ratios_canonical (40/25/15/15/5)
- preset_names_canonical_three_presets
- get_preset_unknown_id_returns_none_canonical
- development_preset_returns_json_canonical (serde roundtrip)
- alice_account_bytes_canonical_substrate (compat sanity)

## Build
- cargo check ~30s cold (genesis presets compile)
- cargo build --release 10.30s warm
- ~63 tests passing total workspace

## Phase 1 COMPLETE canonical 🎉
1.1 ✅ + 1.2 ✅ + 1.3 ✅ + 1.4 ✅ + 1.5 ✅ + 1.6 ✅ + 1.7 ✅
Origin Chain runtime canonical full Substrate composition:
- 7 pallets (System + Timestamp + Balances + TransactionPayment + Aura +
  Grandpa + Session)
- 11 Runtime APIs
- 3 Genesis presets (dev + local + mainnet BM V2)
- Opaque SessionKeys + Executive + RuntimeVersion

Next: Phase 1.6+ split-off origin-chain-node real Substrate service
(sc-service + JSON-RPC + CLI), Phase 2+ custom pallets canonical.

Refs: CHARON_ROADMAP_V1 Phase 1.7, CHN-2 BM V2 allocation ratified David
2026-05-18, SBS-6 ratified DC SUBSTRATE_FOUNDATION_V1

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-20 20:15:09 -05:00

116 lines
3.5 KiB
TOML

[package]
name = "origin-chain-runtime"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
description = "Origin Chain Substrate runtime canonical. Pilar 4: System+Balances+Timestamp+TransactionPayment+Aura+Grandpa pallets integrated (Phase 1.4 v0.0.6 consensus PoA per CHN-1). Roadmap: session+identity+provenance+ink!+bridges+governance progressivos."
[dependencies]
# Origin Chain canonical traits + types
origin-chain-types.workspace = true
# Substrate Primitives canonical (SBS-1 polkadot-stable2512-3)
sp-core.workspace = true
sp-runtime.workspace = true
sp-std.workspace = true
sp-version.workspace = true
sp-api.workspace = true
sp-block-builder.workspace = true
sp-inherents.workspace = true
# Consensus primitives canonical (Phase 1.4 per CHN-1 Aura+GRANDPA)
sp-consensus-aura.workspace = true
sp-consensus-grandpa.workspace = true
# FRAME canonical
frame-system.workspace = true
frame-support.workspace = true
frame-executive.workspace = true
frame-metadata-hash-extension.workspace = true
# FRAME pallets Phase 1.3 (per SBS-4 ratified)
pallet-balances.workspace = true
pallet-timestamp.workspace = true
pallet-transaction-payment.workspace = true
# FRAME pallets Phase 1.4 — Consensus PoA per CHN-1 ratified
pallet-aura.workspace = true
pallet-grandpa.workspace = true
# FRAME pallets Phase 1.5 — Session rotation per CHN-1 4h epochs
pallet-session.workspace = true
# pallet-identity DEFERRED a Phase 2.7 (canonical decision empírica 2026-05-21)
# pallet-identity.workspace = true
# RuntimeAPI canonical (sp_api::impl_runtime_apis! consumers)
sp-offchain.workspace = true
sp-genesis-builder.workspace = true
sp-transaction-pool.workspace = true
sp-session.workspace = true
frame-system-rpc-runtime-api.workspace = true
pallet-transaction-payment-rpc-runtime-api.workspace = true
# Genesis canonical Phase 1.7 — chain_spec BM V2 allocation
# (sp-keyring removed canonical — hardcoded dev account bytes para version stability)
serde_json.workspace = true
# SCALE codec canonical
parity-scale-codec.workspace = true
scale-info.workspace = true
# Logging
log.workspace = true
# Serialization opcional
serde = { workspace = true, optional = true }
[features]
default = ["std"]
std = [
"sp-core/std",
"sp-runtime/std",
"sp-std/std",
"sp-version/std",
"sp-api/std",
"sp-block-builder/std",
"sp-inherents/std",
"sp-consensus-aura/std",
"sp-consensus-grandpa/std",
"frame-system/std",
"frame-support/std",
"frame-executive/std",
"frame-metadata-hash-extension/std",
"pallet-balances/std",
"pallet-timestamp/std",
"pallet-transaction-payment/std",
"pallet-aura/std",
"pallet-grandpa/std",
"pallet-session/std",
"sp-offchain/std",
"sp-genesis-builder/std",
"sp-transaction-pool/std",
"sp-session/std",
"serde_json/std",
"frame-system-rpc-runtime-api/std",
"pallet-transaction-payment-rpc-runtime-api/std",
"parity-scale-codec/std",
"scale-info/std",
"serde",
]
runtime-benchmarks = [
"frame-system/runtime-benchmarks",
"frame-support/runtime-benchmarks",
"pallet-balances/runtime-benchmarks",
"pallet-timestamp/runtime-benchmarks",
"pallet-transaction-payment/runtime-benchmarks",
# pallet-aura 39.0.0 + pallet-grandpa 40.0.0 NO exponen feature
# runtime-benchmarks en stable2512 canonical. Wire-up canonical Phase 1.5+
# cuando pallet_session se integre + benchmark scaffolding land.
"pallet-grandpa/try-runtime",
]