feat(substrate-bump): v0.0.38 — Substrate workspace bump stable2509-3 (Phase 3 precondition) 🎉

Ship 1.5 v0.0.38 SHIPPED — Substrate workspace bump empírico audit-validated
post Ship 1 v0.0.37 pallet-revive scaffold. Phase 3 pallet-revive integration
revealed SBS-1 ratificado label "stable2512-3" sesión 1 awakening era audit
calibration error — workspace pre-bump era generation híbrida stable2506-ish
con pins inconsistentes (sp-runtime 41.1.0 + sp-core 36.1.0 + frame-support
40.1.0 = no clean-match ningún polkadot-stable tag publicado).

Audit empírico Ship 2 v0.0.38 attempted 3 tags polkadot-stable (2512-3 + 2509-3
+ 2506-2) — todos fallaron por version mismatch transitive deps (alloy-* rustc
1.91 + CheckMortality vs CheckEra + sp-runtime version drift). Honest disclosure
pattern aplicado per memory directive — revert + audit + reshuffle plan.

Solución canonical: workspace bump atómico a polkadot-stable2509-3 generation
puro (pallet-revive 0.10.1 disponible + rustc 1.88 compat preserved + WASM build
Slice 2e preserved).

Cambios:
- Cargo.toml workspace.dependencies: ALL sp-* + frame-* + pallet-* + sc-* bumped
  a stable2509-3 versions verified empírico via WebFetch per-crate Cargo.toml:
  * sp-core 36.1.0 → 38.1.0
  * sp-runtime 41.1.0 → 44.0.0
  * sp-io 40.0.1 → 43.0.0
  * sp-api 36.0.1 → 39.0.0
  * sp-version 39.0.0 → 42.0.0
  * frame-system 40.1.0 → 43.0.1
  * frame-support 40.1.0 → 43.0.0
  * frame-executive 40.0.0 → 43.0.1
  * pallet-balances 41.1.0 → 44.0.0
  * pallet-timestamp 39.0.0 → 42.0.0
  * pallet-transaction-payment 40.0.0 → 43.0.0
  * pallet-aura 39.0.0 → 42.0.0
  * pallet-grandpa 40.0.0 → 43.0.0
  * pallet-session 40.0.1 → 43.0.0
  * sc-* (cli/service/network/consensus/etc) bumped proporcional
  * substrate-wasm-builder 26.0.1 → 29.0.0
  * frame-system-rpc-runtime-api 36.0.0 → 39.0.0
  * pallet-transaction-payment-rpc-runtime-api 40.0.0 → 43.0.0
  * sp-genesis-builder 0.17.0 → 0.20.0
  * sp-consensus-aura 0.42.0 → 0.45.0
  * sp-consensus-grandpa 23.1.0 → 26.0.0
  * sp-session 38.1.0 → 41.0.0
  * frame-benchmarking 40.0.0 → 43.0.0
  * frame-metadata-hash-extension 0.8.0 → 0.11.0
- Cargo.toml workspace.dependencies: serde pin relajado =1.0.217 → 1.0.219
  (Slice 2b workaround obsoleto post-Slice 2e RESUELTO Layer 4 sp-io std leak
  fix vía default-features=false discipline — strict pin causaba parity-scale-codec
  3.7.5 conflict requiriendo ^1.0.219).
- crates/origin-chain-runtime/src/configs.rs: pallet_session::Config Stable2509-3
  API additions — Currency type (= crate::Balances) + KeyDeposit (= ConstU128<0>)
  para session key registration deposit economy. Phase 1 PoA simple: zero deposit
  canonical (genesis validators static). Phase 2 NPoS introduces real deposit.

Verificación:
- cargo check --workspace clean (26 warnings pre-existentes deprecated patterns)
- cargo test --workspace: 203 tests verde 0 failures NO regresiones
- cargo build --features wasm-build: WASM_BINARY 1.5 MB shipped clean post-bump
  (Slice 2e infrastructure CC=LLVM + WASM_BUILD_STD=0 preserved canonical)
- Cargo.lock: +511 lines (new transitive deps for stable2509-3 ecosystem)

Próximo Ship 2 v0.0.39: pallet-revive 0.10.1 from stable2509-3 source wired
runtime Index 11 (27 Config types per Asset Hub Westend reference). Workspace
bump DESBLOQUEA Phase 3 integration end-to-end canonical.

Audit calibration update: SBS-1 ratificado labeling error documentado para
sesión seal CHARON_ROADMAP_V1.3 refresh — Phase 0 awakening cold-start
assumption error preserved transparency canonical.

⚓ Ship 1.5 SHIPPED. Phase 3 UNBLOCKED. La nave continúa con generation purificada.

🤖 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
davidherran committed 2026-05-27 08:23:09 -05:00
1 parent ec5b5bd2b2
commit ebe09f1b2e
3 files changed
+661 -292

No files matched your search

Generated
+584 -229
View File
File diff suppressed because it is too large. Load diff
+70 -63
View File
@@ -36,40 +36,49 @@ categories = ["cryptography::cryptocurrencies", "no-std", "wasm"]
# Support window canonical: hasta 2027-03 (cubre testnet Q3 2026 + mainnet Q1 2027) # Support window canonical: hasta 2027-03 (cubre testnet Q3 2026 + mainnet Q1 2027)
# ============================================================ # ============================================================
# Substrate Primitives (sp-*) — types foundationals canonical # ============================================================
sp-core = { version = "36.1.0", default-features = false } # Substrate workspace bump stable2509-3 (Ship 1.5 v0.0.38 Phase 3 precondition)
sp-runtime = { version = "41.1.0", default-features = false } # Audit empírico revealed SBS-1 ratified label "stable2512-3" was incorrect —
sp-io = { version = "40.0.1", default-features = false } # actual workspace pre-bump was stable2506-2 hybrid generation. Bumped al
# stable2509-3 (pallet-revive 0.10.1 disponible + rustc 1.88 compat preserved).
# Source: github.com/paritytech/polkadot-sdk?tag=polkadot-stable2509-3 verified
# vía WebFetch per-crate Cargo.toml [package] version sections.
# ============================================================
# Substrate Primitives (sp-*) — stable2509-3
sp-core = { version = "38.1.0", default-features = false }
sp-runtime = { version = "44.0.0", default-features = false }
sp-io = { version = "43.0.0", default-features = false }
sp-std = { version = "14.0.0", default-features = false } sp-std = { version = "14.0.0", default-features = false }
sp-version = { version = "39.0.0", default-features = false } sp-version = { version = "42.0.0", default-features = false }
sp-api = { version = "36.0.1", default-features = false } sp-api = { version = "39.0.0", default-features = false }
sp-block-builder = { version = "36.0.0", default-features = false } sp-block-builder = { version = "39.0.0", default-features = false }
sp-transaction-pool = { version = "36.0.0", default-features = false } sp-transaction-pool = { version = "39.0.0", default-features = false }
sp-inherents = { version = "36.0.0", default-features = false } sp-inherents = { version = "39.0.0", default-features = false }
sp-offchain = { version = "36.0.0", default-features = false } sp-offchain = { version = "39.0.0", default-features = false }
sp-session = { version = "38.1.0", default-features = false } sp-session = { version = "41.0.0", default-features = false }
sp-genesis-builder = { version = "0.17.0", default-features = false } sp-genesis-builder = { version = "0.20.0", default-features = false }
sp-consensus-aura = { version = "0.42.0", default-features = false, features = ["serde"] } sp-consensus-aura = { version = "0.45.0", default-features = false, features = ["serde"] }
sp-consensus-grandpa = { version = "23.1.0", default-features = false, features = ["serde"] } sp-consensus-grandpa = { version = "26.0.0", default-features = false, features = ["serde"] }
# FRAME canonical — runtime composition framework # FRAME canonical — runtime composition framework (stable2509-3)
frame-system = { version = "40.1.0", default-features = false } frame-system = { version = "43.0.1", default-features = false }
frame-support = { version = "40.1.0", default-features = false } frame-support = { version = "43.0.0", default-features = false }
frame-executive = { version = "40.0.0", default-features = false } frame-executive = { version = "43.0.1", default-features = false }
frame-benchmarking = { version = "40.0.0", default-features = false } frame-benchmarking = { version = "43.0.0", default-features = false }
frame-metadata-hash-extension = { version = "0.8.0", default-features = false } frame-metadata-hash-extension = { version = "0.11.0", default-features = false }
# FRAME pallets canonical Phase 1.3 (per SBS-4 ratified) # FRAME pallets canonical Phase 1.3 (per SBS-4 ratified, stable2509-3)
pallet-balances = { version = "41.1.0", default-features = false } pallet-balances = { version = "44.0.0", default-features = false }
pallet-timestamp = { version = "39.0.0", default-features = false } pallet-timestamp = { version = "42.0.0", default-features = false }
pallet-transaction-payment = { version = "40.0.0", default-features = false } pallet-transaction-payment = { version = "43.0.0", default-features = false }
# FRAME pallets canonical Phase 1.4 — Consensus PoA per CHN-1 ratified # FRAME pallets canonical Phase 1.4 — Consensus PoA per CHN-1 ratified (stable2509-3)
pallet-aura = { version = "39.0.0", default-features = false } pallet-aura = { version = "42.0.0", default-features = false }
pallet-grandpa = { version = "40.0.0", default-features = false } pallet-grandpa = { version = "43.0.0", default-features = false }
# FRAME pallets canonical Phase 1.5 — Session rotation per CHN-1 4h epochs # FRAME pallets canonical Phase 1.5 — Session rotation per CHN-1 4h epochs (stable2509-3)
pallet-session = { version = "40.0.1", default-features = false } pallet-session = { version = "43.0.0", default-features = false }
# ============================================================ # ============================================================
# Phase 3 — pallet-revive smart contracts per SBS-5 ratified # Phase 3 — pallet-revive smart contracts per SBS-5 ratified
@@ -87,9 +96,9 @@ pallet-revive-uapi = { version = "0.13.0", default-features = false, features =
# se introduce `pallet_agent_identity` custom canonical (Inmutable #41 AGI DID). # se introduce `pallet_agent_identity` custom canonical (Inmutable #41 AGI DID).
# pallet-identity = { version = "41.0.0", default-features = false } # pallet-identity = { version = "41.0.0", default-features = false }
# RuntimeAPI canonical (consumed by node binary + RPC server Phase 1.6+) # RuntimeAPI canonical (consumed by node binary + RPC server Phase 1.6+, stable2509-3)
frame-system-rpc-runtime-api = { version = "36.0.0", default-features = false } frame-system-rpc-runtime-api = { version = "39.0.0", default-features = false }
pallet-transaction-payment-rpc-runtime-api = { version = "40.0.0", default-features = false } pallet-transaction-payment-rpc-runtime-api = { version = "43.0.0", default-features = false }
# Genesis canonical Phase 1.7 — chain_spec BM V2 allocation # Genesis canonical Phase 1.7 — chain_spec BM V2 allocation
# Nota canonical 2026-05-21: sp-keyring NO incluido — version conflict canonical # Nota canonical 2026-05-21: sp-keyring NO incluido — version conflict canonical
@@ -99,34 +108,30 @@ pallet-transaction-payment-rpc-runtime-api = { version = "40.0.0", default-featu
# values que sp-keyring usaría but sin la dep brittle canonical. # values que sp-keyring usaría but sin la dep brittle canonical.
serde_json = { version = "1", default-features = false, features = ["alloc"] } serde_json = { version = "1", default-features = false, features = ["alloc"] }
# WASM builder canonical (Phase 1.6+ runtime WASM build para chain_spec) # WASM builder canonical (Phase 1.6+ runtime WASM build para chain_spec, stable2509-3)
substrate-wasm-builder = { version = "26.0.1" } substrate-wasm-builder = { version = "29.0.0" }
# Substrate client canonical (Phase 1.6+ node binary service builder) # Substrate client canonical (Phase 1.6+ node binary service builder, stable2509-3)
sc-cli = { version = "0.51.0" } sc-cli = { version = "0.54.0" }
sc-service = { version = "0.50.0" } sc-service = { version = "0.53.0" }
# Slice 3 (v0.0.13) canonical — `sc_chain_spec::GenericChainSpec` builder canonical # Slice 3 (v0.0.13) canonical — `sc_chain_spec::GenericChainSpec` builder canonical
# para Phase 1.6+ ChainSpec serialization. Pattern canonical mock-WASM fallback: # para Phase 1.6+ ChainSpec serialization. Pattern canonical mock-WASM fallback.
# `ChainSpec::builder(MOCK_WASM, None).with_genesis_config_patch(preset_json)` sc-executor = { version = "0.45.0" }
# bypassa runtime WASM execution — depends on Slice 2c land canonical solo para sc-network = { version = "0.52.0" }
# `node run` real (Slice 4 territory). JSON serialization funciona canonical. sc-consensus = { version = "0.51.0" }
# sc-chain-spec canonical EVITADA Slice 3 (see comentario superior canonical) sc-consensus-aura = { version = "0.52.0" }
sc-executor = { version = "0.42.0" } sc-consensus-grandpa = { version = "0.37.0" }
sc-network = { version = "0.49.1" } sc-transaction-pool = { version = "42.0.0" }
sc-consensus = { version = "0.48.0" } sc-transaction-pool-api = { version = "42.0.0" }
sc-consensus-aura = { version = "0.49.0" } sc-client-api = { version = "42.0.0" }
sc-consensus-grandpa = { version = "0.34.0" } sc-basic-authorship = { version = "0.52.0" }
sc-transaction-pool = { version = "39.0.0" } sc-telemetry = { version = "31.0.0" }
sc-transaction-pool-api = { version = "39.0.0" } sc-offchain = { version = "47.0.0" }
sc-client-api = { version = "39.0.0" }
sc-basic-authorship = { version = "0.49.0" }
sc-telemetry = { version = "28.1.0" }
sc-offchain = { version = "44.0.0" }
# RPC server canonical (jsonrpsee) # RPC server canonical (jsonrpsee, stable2509-3)
jsonrpsee = { version = "0.24.3", features = ["server"] } jsonrpsee = { version = "0.24.9", features = ["server"] }
substrate-frame-rpc-system = { version = "43.0.0" } substrate-frame-rpc-system = { version = "46.0.0" }
pallet-transaction-payment-rpc = { version = "43.0.0" } pallet-transaction-payment-rpc = { version = "46.0.0" }
# CLI + async canonical # CLI + async canonical
clap = { version = "4.5.13", features = ["derive"] } clap = { version = "4.5.13", features = ["derive"] }
@@ -147,12 +152,14 @@ blake3 = { version = "1", default-features = false }
# ============================================================ # ============================================================
# no_std-compatible canonical (Slice 2 — required by substrate-wasm-builder WASM runtime build) # no_std-compatible canonical (Slice 2 — required by substrate-wasm-builder WASM runtime build)
thiserror = { version = "2.0", default-features = false } thiserror = { version = "2.0", default-features = false }
# serde pin canonical =1.0.217 — mínima version compatible con frame-support # serde pin Ship 1.5 v0.0.38 — relajado desde `=1.0.217` strict pin
# 40.1.0 canonical (requires ^1.0.217). Slice 2b investigation registered # (Slice 2b workaround obsoleto post-Slice 2e RESUELTO). El strict pin causaba
# canonical: 1.0.217 NO resuelve WASM build alloc conflict canonical — issue # conflicto con stable2509-3 transitive deps requiriendo ^1.0.219 vía
# es estructural Cargo + substrate-wasm-builder + rustup precompiled alloc. # parity-scale-codec 3.7.5. Relajación 1.0.219 mínimum permite Cargo resolver
# Slice 2c canonical requires Larihana Substrate-adjacent expertise canonical. # picking latest compatible preservando WASM build correctness empíricamente
serde = { version = "=1.0.217", default-features = false, features = ["derive"] } # validated Slice 2e (Layer 4 sp-io std leak resuelto via default-features=false
# discipline, NO serde version specific).
serde = { version = "1.0.219", default-features = false, features = ["derive"] }
log = { version = "0.4", default-features = false } log = { version = "0.4", default-features = false }
# ============================================================ # ============================================================
@@ -302,6 +302,13 @@ impl pallet_session::Config for Runtime {
/// disable mechanism. Phase 2 NPoS introduces `UpToLimitWithReEnablingDisablingStrategy` /// disable mechanism. Phase 2 NPoS introduces `UpToLimitWithReEnablingDisablingStrategy`
/// canonical para slashing-based validator disabling per CHN-3. /// canonical para slashing-based validator disabling per CHN-3.
type DisablingStrategy = (); type DisablingStrategy = ();
/// **Stable2509-3 API additions (Ship 1.5 v0.0.38)**: pallet_session 43.0.0
/// requires Currency + KeyDeposit para session key registration deposit
/// economy. Phase 1 PoA simple: zero deposit canonical (genesis validators
/// static, no nominator-registered keys). Phase 2 NPoS introduces real
/// deposit canonical via parameter_type post-staking pallet integration.
type Currency = crate::Balances;
type KeyDeposit = frame_support::traits::ConstU128<0>;
type WeightInfo = pallet_session::weights::SubstrateWeight<Runtime>; type WeightInfo = pallet_session::weights::SubstrateWeight<Runtime>;
} }