From 440135293e64d246c0423b7b1d5ccd1e1d334823 Mon Sep 17 00:00:00 2001 From: DavidHerran Date: Fri, 12 Jun 2026 09:04:04 -0500 Subject: [PATCH] =?UTF-8?q?chore(npos):=20FIX-6=20Stage=202b=20kickoff=20?= =?UTF-8?q?=E2=80=94=20DC=20ORIGIN=5FCHAIN=5FNPOS=5FV1=20+=20deps=20stable?= =?UTF-8?q?2509=20verificadas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Arranque de Stage 2b (transición de consenso PoA→NPoS). DC abierto (ORIGIN_CHAIN_NPOS_V1, 11 sub-decisiones) con las 3 decisiones de fundador de David ratificadas 2026-06-12: - NPoS-5 INFRA DORMIDA: construir toda la maquinaria pallet_staking + EraPayout + genesis + tests LISTA pero dormida (invulnerables=genesis + ForceEra::ForceNone), la cadena corre PoA-equivalente, la emisión SÍ migra a EraPayout (resuelve la doble-emisión). Activación de elección-por-stake = governance flag post los 5 criterios empíricos de CHN-1. Respeta el gating. - NPoS-6 MaxValidatorSet 150 (techo CHN-1). - NPoS-7 VPS/Foundation validan; Pi5/Jetson = light client soberano (ADR-0072 §11 C.3) — disuelve la tensión min_bond/slash-por-mala-conexión. Catálogo de deps verificado audit-before-claims (resuelven contra frame-support 43.0.2): pallet-staking 43.0.0 + frame-election-provider-support 43.0.0 + sp-staking 41.0.0. (multi-block 0.4.0 YANKED; multi-phase + bags-list entran al ACTIVAR la elección post-gates, no en la infra dormida.) Declaradas en el workspace catalog; se wirean al runtime con el Config en la sesión dedicada (cambio de consenso + migración fungible::hold merecen contexto fresco). Co-Authored-By: Claude Fable 5 --- Cargo.toml | 13 +++++++++++++ crates/origin-chain-runtime/Cargo.toml | 4 ++++ 2 files changed, 17 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index 10444c9..459220c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -101,6 +101,19 @@ pallet-session = { version = "43.0.0", default-features = false } # de mainnet. Sudo key interim = Foundation multisig humano (stable2509-3). pallet-sudo = { version = "43.0.0", default-features = false } +# ============================================================ +# FRAME Phase 2 NPoS — FIX-6 Stage 2b (DC ORIGIN_CHAIN_NPOS_V1, stable2509-3) +# ============================================================ +# INFRA DORMIDA (David ratificó NPoS-5 2026-06-12): set fijo vía invulnerables + +# ForceEra::ForceNone hasta los 5 criterios empíricos de Phase 2 (CHN-1). La +# emisión SÍ migra a EraPayout (resuelve la doble-emisión). Subset mínimo: +# onchain::OnChainExecution como (Genesis)ElectionProvider + un VoterList trivial +# — multi-phase + bags-list (NPoS-1/2) entran cuando se ACTIVE la elección +# post-gates. Versiones verificadas audit-before-claims contra frame-support 43.0.2. +pallet-staking = { version = "43.0.0", default-features = false } +frame-election-provider-support = { version = "43.0.0", default-features = false } +sp-staking = { version = "41.0.0", default-features = false } + # ============================================================ # Phase 3 — pallet-revive smart contracts per SBS-5 ratified # (supersedes CHN-6 v1.0 → CHN-6 v2.0 PolkaVM + ink! v6 + Solidity) diff --git a/crates/origin-chain-runtime/Cargo.toml b/crates/origin-chain-runtime/Cargo.toml index 248fead..108114d 100644 --- a/crates/origin-chain-runtime/Cargo.toml +++ b/crates/origin-chain-runtime/Cargo.toml @@ -44,6 +44,10 @@ pallet-session.workspace = true # (Root origin para dispatchables admin — sunset → governance real pre-mainnet) pallet-sudo.workspace = true +# FIX-6 Stage 2b NPoS (DC ORIGIN_CHAIN_NPOS_V1) — deps en workspace catalog +# (versiones verificadas contra stable2509-3). Se wirean aquí + std cuando se +# cablee el Config de pallet_staking (sesión dedicada, cambio de consenso). + # Charon custom pallets Phase 2.x (per DCs) # Phase 2.1 v0.0.15: pallet-origin-provenance scaffold canonical wired origin-chain-provenance.workspace = true