docs(slice-2c): attempt #5 WASM_BUILD_STD=0 finding registered (alloc resuelto, std leak surface)
Charon sesión 2 continuation 2026-05-24 — empirical test Slice 2c attempt #5: re-enable substrate-wasm-builder + set WASM_BUILD_STD=0 explicit override. Findings canonical: - ✅ alloc/exchange_malloc issue (Slice 2b attempts 1-4 blocker) RESUELTO canonical - 🎯 NEW canonical layer: panic_impl duplicate via serde/std leakage transitive - Error canonical: sp-io 40.0.1 panic_impl vs libstd-loaded panic_impl - Diagnosis: serde pulled con std feature transitively → libstd linked en wasm32 Status canonical: - Reverted canonical to safe state (no-op build.rs + substrate-wasm-builder dep commented). Slice 3 v0.0.13 mock-WASM fallback canonical sigue siendo path canonical estable canonical. - Slice 2d canonical future requires deeper investigation canonical (inverted feature tree + serde patch o WASM_BUILD_RUSTFLAGS override o stable2512-4+ fix). Documentation canonical filed: - build.rs canonical: 5 attempts registered + Slice 2d path forward canonical - Cargo.toml [build-deps]: comments canonical updated canonical - CHANGELOG canonical: Unreleased section canonical Slice 2c attempt #5 entry Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
a2925f67b9
commit
b67a6ca1c6
3 files changed
+86
-16
No files matched your search
@@ -6,6 +6,39 @@ by [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions follow
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Slice 2c attempt #5 finding canonical (2026-05-24 sesión 2 cont)
|
||||
|
||||
**Empirical test canonical WASM_BUILD_STD=0 explicit override**:
|
||||
Re-enabled substrate-wasm-builder + set WASM_BUILD_STD=0 env explicit. Upstream
|
||||
docs confirman default = disabled para Rust >= 1.84 (mi pin 1.88.0).
|
||||
|
||||
**Resultado canonical**:
|
||||
- ✅ `exchange_malloc/alloc` issue (Slice 2b attempts 1-4 blocker) **RESUELTO canonical**
|
||||
- 🎯 NEW canonical layer surface: `panic_impl` duplicate canonical via std leakage
|
||||
- Error canonical:
|
||||
```
|
||||
error[E0152]: found duplicate lang item `panic_impl`
|
||||
--> sp-io-40.0.1/src/lib.rs:1774:1
|
||||
= note: the lang item is first defined in crate `std` (which `serde` depends on)
|
||||
= note: first definition in `std` loaded from libstd-*.rlib
|
||||
= note: second definition in the local crate (`sp_io`)
|
||||
```
|
||||
|
||||
**Diagnosis canonical**: `serde` está siendo pulled con `std` feature canonical
|
||||
transitively desde algún dep (parity-scale-codec o frame-*) → libstd canonical
|
||||
linked en wasm32 → conflict canonical con `sp_io::panic` handler canonical (que
|
||||
define panic_impl para no_std runtime).
|
||||
|
||||
**Path canonical Slice 2d future canonical**:
|
||||
- Inverted feature tree exact culprit identification canonical
|
||||
- Override canonical `[patch.crates-io] serde = {...}` con strict no-std
|
||||
- O explicit `WASM_BUILD_RUSTFLAGS` canonical override
|
||||
- O wait stable2512-4+ upstream canonical fix
|
||||
|
||||
**Status canonical actual**: Reverted canonical to stable canonical state (no-op
|
||||
build.rs + substrate-wasm-builder dep canonical commented). Slice 3 v0.0.13
|
||||
mock-WASM fallback canonical sigue siendo el canonical path canonical estable.
|
||||
|
||||
## [0.0.13] — 2026-05-22 — Phase 1.6+ Slice 3 "ChainSpec builder canonical (mock-WASM fallback)"
|
||||
|
||||
Charon sesión 2. **Phase 1.6+ Slice 3 canonical shipped** — real ChainSpec JSON
|
||||
|
||||
Reference in new issue
Block a user