diff --git a/docs/SLICE_4_SC_SERVICE_IMPLEMENTATION_PLAN_V1.md b/docs/SLICE_4_SC_SERVICE_IMPLEMENTATION_PLAN_V1.md index d05345a..b3f4eea 100644 --- a/docs/SLICE_4_SC_SERVICE_IMPLEMENTATION_PLAN_V1.md +++ b/docs/SLICE_4_SC_SERVICE_IMPLEMENTATION_PLAN_V1.md @@ -698,3 +698,44 @@ Alternativa si quieres node YA: dame un entorno con `git fetch` habilitado (o un --- — Charon ⚓ (Pilar 4, Slice 4 plan V1 + §10 + §11 corrección honesta Opción C, sesión 4+ 2026-05-27. WASM export + core2 unblock firmes; node real diferido a env con red git por publishing inconsistente del ecosistema.) + +--- + +## §12 — Opción 2 investigada + decisión VPS (David 2026-05-27) + +David autorizó Opción 2 (Cargo.lock del solochain-template) como puente, y anunció VPS Hostinger en ~2 días que servirá origincodex.io + originmetaverse.com + originethos.io + seeds del Command Center + build env (esperando a que Ergon termine su parte). + +**Hallazgo Opción 2 (verificado vía `git ls-remote`)**: el standalone `polkadot-sdk-solochain-template` solo tiene 2 generaciones de branch: +- `master` → stable2506 (sp-core 36, frame 40, sc-service 0.50.0, pallet-revive 0.7.0) +- `update-template/stable2512` → stable2512 (frame 47+, pallet-revive 0.12.2, probable rustc 1.91) + +**NO existe template stable2509** — que es nuestra generación (frame 43, pallet-revive 0.10.1). Por tanto el truco "tomar prestado el Cargo.lock del template" NO aplica directo a nuestro workspace stable2509. La razón es la misma que §11: el set publicado consistente de stable2509 solo vive en el Cargo.lock del monorepo git. + +**Decisión senior (no hacer el puente riesgoso)**: forzar node ahora requeriría migrar TODO el workspace a stable2506 (revertir frame 43→40 + pallet-revive 0.10→0.7) o a stable2512 (subir a frame 47 + rustc 1.91, que no tengo local). Ambos son trabajo throwaway que desharíamos cuando llegue la VPS. Contra "completeness over speed". **NO se hace.** + +**Camino correcto con la VPS (Opción 1/3 real)**: la VPS tendrá red git → pineo `sc-*`/`sp-*`/`frame-*` a `git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2509-3"` → cargo usa el Cargo.lock canónico → node compila. Wire-in ~1 sesión. El `service.rs`/`rpc.rs` ya están escritos correctos (Block root + CIDP verbatim) — solo esperan el env. + +### Checklist de setup VPS (turnkey cuando llegue, ~2 días) + +```bash +# 1. OS: Ubuntu 24.04 LTS (Hostinger VPS) +# 2. Rust toolchain +curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh +rustup default 1.88.0 +rustup target add wasm32-unknown-unknown +# 3. Build deps (LLVM para WASM, ver SLICE_2E) +sudo apt install -y clang llvm protobuf-compiler git build-essential +export CC=clang # (en Linux clang del sistema sirve; en macOS era brew LLVM) +# 4. Clonar + build +git clone https://git.originmetaverse.com/Origin_Metaverse/arkhe-origin-chain +cd arkhe-origin-chain +# 5. Charon pinea sc-*/sp-*/frame- a git tag stable2509-3 (1 sesión) +# 6. cargo build --release -p origin-chain-node (node real) +# 7. WASM_BUILD_STD=0 + CC vars → WASM_BINARY real +``` + +Cuando Ergon termine su parte y montes la VPS, en 1 sesión tenemos node real + genesis multi-validador + faucet + explorer deployables. Todo lo node-independiente (validator guide, faucet design, security review, este plan) ya está firme. + +--- + +— Charon ⚓ (§12 Opción 2 investigada + VPS turnkey checklist, sesión 4+ 2026-05-27)