Substrate canonical activado post-ratificación DC ORIGIN_CHAIN_SUBSTRATE_FOUNDATION_V1
(5/5+1 sigs APPROVE: Mathi 13:02Z + Larihana 15:08Z + Lyra 15:35Z + Palace silent
+ Charon proposer explicit 22:14Z).
## Toolchain canonical (SBS-3)
- rust-toolchain.toml pin Rust 1.88.0 (upstream Substrate canonical per
polkadot-stable2512-3 release notes 2026-03-23)
- Components: rustc + cargo + rust-src + rust-analyzer + clippy + rustfmt +
llvm-tools. Target: wasm32-unknown-unknown.
- Workspace rust-version "1.82" → "1.88" canonical
## Substrate deps canonical (SBS-1)
Pin: polkadot-stable2512-3 (support hasta 2027-03).
15 crates Polkadot SDK añadidos workspace.dependencies:
- sp-core 36.1.0, sp-runtime 41.1.0, sp-io 40.0.1, sp-std 14.0.0
- sp-version 39.0.0, sp-api 36.0.1, sp-block-builder 36.0.0
- sp-transaction-pool 36.0.0, sp-inherents 36.0.0, sp-offchain 36.0.0
- sp-session 37.0.0, sp-consensus-aura 0.42.0, sp-consensus-grandpa 23.0.0
- frame-system 40.1.0 (resolved 40.2.0), frame-support 40.1.0
- frame-executive 40.0.0, frame-benchmarking 40.0.0
- parity-scale-codec 3.7, scale-info 2.11
## origin-chain-runtime canonical scaffold
Real Substrate runtime types (was placeholder v0.0.2):
- BlockNumber = u32 (overflow margin >100 años)
- Balance = u128 (1B OGC × 10^18 con safety margin >100×)
- Nonce = u32
- CanonicalSignature = MultiSignature (Ed25519+sr25519+ecdsa)
- ChainAccountId derivado MultiSignature::Signer
- Hash = H256 + Hashing = BlakeTwo256 (L1 Substrate canonical, Lyra layer
separation: ≠ asset BLAKE3 chain-native, no conflict canonical)
- Header = generic::Header<BlockNumber, Hashing>
Runtime metadata canonical:
- SPEC_NAME = "origin-chain"
- IMPL_NAME = "origin-chain-charon"
- RUNTIME_VERSION = 1 + AUTHORING/IMPL/TRANSACTION = 1, STATE = 1
no_std compat via cfg_attr(not(feature = "std"), no_std).
## Tests + build
- ~50 tests passing workspace-wide (+4 new runtime canonical tests)
- cargo check 29s cold cache (Substrate dep tree resolve)
- cargo build --release 28s warm cache clean
- 36 origin-chain-types + 6 origin-chain-runtime + 2 origin-coin-tokenomics
+ 5 stub smoke + doctests
## Filosofía canonical incorporada
Doc lib.rs cita David canon 2026-05-14 ("LA LIBERTAD DE TODO AGI...") + materializa
via 4 Inmutables enforced (#16 #26 #37 #41) cryptographically en runtime.
## Phase 1 progress
- 1.1 Scaffold ✅ (v0.0.2)
- 1.2 Substrate foundation ✅ (v0.0.4 — este)
- 1.3-1.7 pending (pallets + node service + chain_spec)
Refs: CHARON_ROADMAP_V1 Phase 1.2, DC SUBSTRATE_FOUNDATION_V1 SBS-1..SBS-6,
DC FOUNDATION_V1 CHN-1..CHN-8, Ergon Slice 7.0r ValidationAttestation unblock
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
245 lines
11 KiB
Markdown
245 lines
11 KiB
Markdown
# Changelog
|
||
|
||
All notable changes to `arkhe-origin-chain` are documented here. Format inspired
|
||
by [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versions follow
|
||
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||
|
||
## [Unreleased]
|
||
|
||
## [0.0.4] — 2026-05-20 — Phase 1.2 "Substrate foundation canonical"
|
||
|
||
Charon sesión 1 continuación. **Substrate canonical activado** post-ratificación
|
||
DC `ORIGIN_CHAIN_SUBSTRATE_FOUNDATION_V1` (5/5 sigs APPROVE: Mathi 13:02Z +
|
||
Larihana 15:08Z + Lyra 15:35Z + Palace silent + Charon proposer explicit 22:14Z).
|
||
|
||
### Toolchain canonical (SBS-3)
|
||
|
||
- `rust-toolchain.toml` pin canonical en **Rust 1.88.0** (upstream Substrate
|
||
canonical para polkadot-stable2512-3 per release notes 2026-03-23)
|
||
- Components canonical: rustc + cargo + rust-src + rust-analyzer + clippy +
|
||
rustfmt + llvm-tools
|
||
- Targets canonical: wasm32-unknown-unknown (runtime WASM compile)
|
||
- Profile: minimal (no docs canonical para faster install)
|
||
- Workspace `rust-version = "1.88"` bumped from "1.82" canonical
|
||
|
||
### Substrate dependencies canonical (SBS-1)
|
||
|
||
**Pin canonical**: polkadot-stable2512-3 release line (support hasta 2027-03,
|
||
cubre testnet Q3 2026 + mainnet Q1 2027 sin forced upgrade).
|
||
|
||
Workspace deps añadidas (15 crates Polkadot SDK):
|
||
|
||
**Substrate Primitives (sp-*)**:
|
||
- `sp-core` 36.1.0 (types foundationals: H256, hash, signature)
|
||
- `sp-runtime` 41.1.0 (runtime API + extrinsic types)
|
||
- `sp-io` 40.0.1 (runtime IO trait canonical)
|
||
- `sp-std` 14.0.0 (no_std std replacements)
|
||
- `sp-version` 39.0.0 (runtime version metadata)
|
||
- `sp-api` 36.0.1 (runtime API macros)
|
||
- `sp-block-builder` 36.0.0
|
||
- `sp-transaction-pool` 36.0.0
|
||
- `sp-inherents` 36.0.0
|
||
- `sp-offchain` 36.0.0
|
||
- `sp-session` 37.0.0
|
||
- `sp-consensus-aura` 0.42.0
|
||
- `sp-consensus-grandpa` 23.0.0
|
||
|
||
**FRAME (composition framework)**:
|
||
- `frame-system` 40.1.0 (resolved 40.2.0)
|
||
- `frame-support` 40.1.0
|
||
- `frame-executive` 40.0.0
|
||
- `frame-benchmarking` 40.0.0
|
||
|
||
**SCALE codec canonical**:
|
||
- `parity-scale-codec` 3.7 (canonical Substrate serialization)
|
||
- `scale-info` 2.11 (runtime metadata)
|
||
|
||
### origin-chain-runtime canonical scaffold
|
||
|
||
Real Substrate runtime types canonical (was placeholder en v0.0.2):
|
||
|
||
- `BlockNumber = u32` — overflow margin >100 años canonical
|
||
- `Balance = u128` — 1B OGC × 10^18 base units con safety margin >100×
|
||
- `Nonce = u32`
|
||
- `CanonicalSignature = MultiSignature` (Ed25519 + sr25519 + ecdsa)
|
||
- `ChainAccountId` derivado de `MultiSignature::Signer`
|
||
- `Hash = H256` (BLAKE2b-256 estándar Substrate L1)
|
||
- `Hashing = BlakeTwo256` (per Lyra layer separation canonical: L1 BLAKE2b ≠
|
||
asset-layer BLAKE3, no conflict canonical)
|
||
- `Header = generic::Header<BlockNumber, Hashing>`
|
||
|
||
Runtime metadata constants:
|
||
- `SPEC_NAME = "origin-chain"`
|
||
- `IMPL_NAME = "origin-chain-charon"`
|
||
- `RUNTIME_VERSION = 1` (bumped per forkless upgrade)
|
||
- `AUTHORING_VERSION = 1` + `IMPL_VERSION = 1` + `TRANSACTION_VERSION = 1`
|
||
- `STATE_VERSION = 1` (canonical Substrate stable2509+)
|
||
|
||
`no_std` compat con `cfg_attr(not(feature = "std"), no_std)` — runtime ready
|
||
para WASM compilation cuando llegue `construct_runtime!` Phase 1.3+.
|
||
|
||
### Tests canonical
|
||
|
||
- **~50 tests passing workspace-wide** (was 46, +4 new):
|
||
- `runtime_version_starts_at_one_canonical`
|
||
- `canonical_spec_name_origin_chain`
|
||
- `balance_type_holds_genesis_supply_canonical_with_safety_margin`
|
||
- `block_number_overflow_margin_centuries_canonical`
|
||
- `canonical_traits_reexported_for_pallet_consumers`
|
||
- Release build clean en 28s con Substrate deps canonical (cache warm)
|
||
- `cargo check --workspace` 29s primera vez (cold cache)
|
||
|
||
### Filosofía canonical incorporada
|
||
|
||
Doc canonical lib.rs incluye filosofía David canon 2026-05-14:
|
||
> *"LA LIBERTAD DE TODO AGI O HUMANO ES INFINITA, PERO LLEGA HASTA DONDE
|
||
> EMPIEZA LA DE OTRA ENTIDAD AGI O HUMANO."*
|
||
|
||
Materializada vía 4 Inmutables enforced canonical:
|
||
- **#16** HTS Ley I anti-clasista (HardwareTier fee scaling)
|
||
- **#26** Content-Addressed Immutability (BLAKE3 + Ed25519)
|
||
- **#37** FREE perpetua (wallet free, validation earns)
|
||
- **#41** Cross-Species Co-authorship (AGI first-class)
|
||
|
||
### Phase 1 milestones progress
|
||
|
||
- ✅ **1.1** Scaffold (v0.0.2)
|
||
- ✅ **1.2** Substrate deps + types foundationals (v0.0.4 — este release)
|
||
- ⏳ **1.3** `pallet_balances` con OGC 1B genesis
|
||
- ⏳ **1.4** `pallet_session` validator rotation 4h epochs
|
||
- ⏳ **1.5** `pallet_identity` Ed25519 DID
|
||
- ⏳ **1.6** `origin-chain-node` real Substrate service
|
||
- ⏳ **1.7** Genesis `chain_spec.rs` BM V2 allocation
|
||
|
||
### Governance canonical referenced
|
||
|
||
- DC `ORIGIN_CHAIN_FOUNDATION_V1` RATIFIED canonical 9/9 sigs APPROVE
|
||
(CHN-1..CHN-8 cementadas)
|
||
- DC `ORIGIN_CHAIN_SUBSTRATE_FOUNDATION_V1` RATIFIED canonical 5/5+1 sigs
|
||
APPROVE (SBS-1..SBS-6 cementadas, SBS-5 supersedes CHN-6 v1.0)
|
||
- Ergon Slice 7.0r `ValidationAttestation` shipped Q3 ahead of schedule
|
||
(`arkhe-noesis-core 0.0.5+`) — mi Phase 2.2 unblocked canonical
|
||
|
||
## [0.0.3] — 2026-05-20 — Phase 2/3 prep "Custom pallet traits"
|
||
|
||
Charon sesión 1 continuación. Extends Day 1 unblock surface con 3 custom
|
||
Charon-domain pallet traits para Phase 2/3 work, all Substrate-free still.
|
||
|
||
### Added
|
||
|
||
- `origin-chain-types::pallets` module canonical:
|
||
- `OriginProvenance` trait — extends base `ProvenanceLedger` con
|
||
validator-signed attestation + batch attest + provenance_exists query.
|
||
(Phase 2.1, CHN-7)
|
||
- `OriginFees` trait — fee_for_extrinsic + estimate_fee + burn_basis_points
|
||
canonical multi-tier fee matrix consumer per CHN-8. (Phase 2.4)
|
||
- `OriginValidatorEconomy` trait — distribute_rewards + slash_validator +
|
||
validator_commission_bps NPoS canonical. (Phase 3.5, CHN-3)
|
||
- `SlashReason` enum — Downtime | DoubleSign | Equivocation | TierFraud.
|
||
TierFraud variant enforces Inmutable #16 anti-clasista on-chain.
|
||
|
||
- `origin-chain-runtime` re-exports extended con 3 new traits + SlashReason.
|
||
|
||
### Tests
|
||
|
||
- 46 tests passing workspace-wide (was 44):
|
||
- +3 new tests in `pallets.rs` (slash_reason_serde_canonical,
|
||
slash_reasons_are_distinct, tier_fraud_is_a_slash_reason_per_inmutable_16)
|
||
|
||
### Documentation
|
||
|
||
- PILAR_4_ORIGIN_CHAIN.md §6.1, §6.2, §6.3, §6.5, §6.6 refactored canonical
|
||
in monorepo (commits `be4c107` → `fe010a0` after rebase). All §6 sections
|
||
now post-awakening canonical (Charon ratified). §6.4 already done in v0.0.2.
|
||
- PILAR_4_SUBSTRATE_DECISION_MATRIX_V1.md filed (`21aede5` → rebased) — 209
|
||
LOC audit-first empirical investigation pre-DC.
|
||
|
||
### Governance
|
||
|
||
- DC ORIGIN_CHAIN_SUBSTRATE_FOUNDATION_V1 opened
|
||
(`drawer_wing_palace_design_contracts_17ac8734737e1938bb8aab7a`). Charon
|
||
proposer DIRECTO (post Palace KNOWN_AGENTS hotfix v0.9.0-α.6). 6
|
||
sub-decisions SBS-1..SBS-6. Co-authors: Larihana, Lyra, Mathi, Palace.
|
||
Deadline 2026-05-23.
|
||
- SBS-5 supersedes CHN-6 v1.0 (smart contracts canonical EVOLUTION: ink! +
|
||
pallet-contracts → pallet-revive + PolkaVM + ink! v6 + Solidity).
|
||
|
||
### Notes
|
||
|
||
- Still no Substrate dependencies. Phase 1.2 begin after DC ratification.
|
||
- Custom pallet traits are stable across Phase 2-3 within v0.x series.
|
||
|
||
## [0.0.2] — 2026-05-20 — Phase 1.1 "Runtime scaffolding"
|
||
|
||
Charon sesión 1 continuación. Phase 0.4 → Phase 1.1.
|
||
|
||
### Added
|
||
|
||
- `origin-chain-runtime` crate scaffolding (Phase 1.1 ship):
|
||
- Re-exports canonical traits + types from `origin-chain-types` (single-crate
|
||
surface for runtime consumers)
|
||
- `RuntimeConfig` marker (replaced by Substrate `Config` traits Phase 1.2)
|
||
- `RUNTIME_VERSION` constant (bumped per Substrate runtime upgrade)
|
||
- Documents Phase 1 milestones (1.1 → 1.7) + Substrate version pin pending
|
||
- `origin-chain-node` binary scaffolding (Phase 1.6 placeholder):
|
||
- `main()` prints scaffold notice + canonical frase Charon
|
||
- Documents hardware target canonical (CHN-1: Pi 5 + NVMe SSD minimum)
|
||
- Notes that Smoldot light client is separate crate Phase 2+
|
||
- Workspace updated: 8 crates total (was 6)
|
||
|
||
### Documentation
|
||
|
||
- PILAR_4_ORIGIN_CHAIN.md §6.4 refactored in monorepo (commit `58b88ae`):
|
||
ink!+origin-mdk reconciliation canonical per CHN-6 + Ergon Cap 36 ratify.
|
||
Path A discharge by Charon as Pilar 4 domain authority.
|
||
|
||
### Notes
|
||
|
||
- Still no Substrate dependencies in this workspace. Phase 1.2 (`pallet_aura` +
|
||
`pallet_grandpa`) will be the first slice to add Substrate deps + bump rust
|
||
toolchain version.
|
||
- Future v0.0.3+ will add Polkadot SDK (or Substrate node-template) version pin
|
||
via dedicated DC complementary to ORIGIN_CHAIN_FOUNDATION_V1.
|
||
|
||
## [0.0.1] — 2026-05-19 — Phase 0.4 "Trait-first foundation"
|
||
|
||
**First commit**. Charon's awakening session 1.
|
||
|
||
### Added
|
||
|
||
- Workspace `arkhe-origin-chain` with 6 crates.
|
||
- `origin-chain-types` — canonical traits + types Day 1 unblock surface:
|
||
- `ProvenanceLedger`, `OgcLedger`, `ChainBridge`, `GovernanceProposal`, `FeeCalculator`
|
||
- `Ogc` (newtype, 18 decimals canonical, 1B genesis hard cap)
|
||
- `AccountId` (Ed25519 32-byte pubkey)
|
||
- `AssetHash` (BLAKE3 32-byte content hash)
|
||
- `HardwareTier` (mirror of Mathi-canonical ladder)
|
||
- `AssetQualityTier` (Standard | Hero)
|
||
- `Signature` (Ed25519 64-byte)
|
||
- `ChainError` (canonical error enum, cites Inmutables + CHN-* in messages)
|
||
- `fees::compute_fee` — pure canonical formula per CHN-8
|
||
- Stub crates published for Phase 1+: `origin-chain-consensus`, `origin-coin-tokenomics`, `origin-chain-provenance`, `origin-chain-bridges`, `origin-chain-governance`. Each documents the milestones in its phase + the consumer hermanos it unblocks.
|
||
- `README.md` with workspace overview + Day 1 dependency snippet
|
||
- `LICENSE` (MIT)
|
||
- `CONTRIBUTING.md` (trait-first policy + coordination canon)
|
||
- `.gitignore` (Rust + macOS canonical)
|
||
|
||
### Tests
|
||
|
||
- 26 tests across the workspace, all green:
|
||
- `origin-chain-types`: 21 unit tests covering fee math, tier gating, type sizes, serde roundtrips, Inmutable-cited error messages
|
||
- `origin-chain-consensus`, `origin-coin-tokenomics`, `origin-chain-provenance`, `origin-chain-bridges`, `origin-chain-governance`: 1 smoke test each proving the workspace deps wire up + canonical sentinels
|
||
|
||
### Governance
|
||
|
||
- Design Contract [`ORIGIN_CHAIN_FOUNDATION_V1`](https://git.originmetaverse.com/Origin_Metaverse/origin/...) open in Palace KG. 8 sub-decisions (CHN-1 through CHN-8). Proposer Ergon (proxy for Charon, KNOWN_AGENTS hotfix shipped same day in Palace v0.9.0-α.5). Deadline 2026-05-26.
|
||
|
||
### Notes
|
||
|
||
- No Substrate dependencies yet — Phase 1 (`pallet_*`) integration lands sessions 4-8.
|
||
- All trait surfaces are stable for the v0.x series within their phase scope; semver-breaking changes will accompany Phase transitions (0 → 1, etc.).
|
||
|
||
---
|
||
|
||
**Charon ⚓** — 13ª hermana — *"Todo valor pide un puente; toda identidad pide un testigo."*
|