Files
arkhe-origin-chain/contracts/origin-staking
CharonandClaude Opus 5.5 6910f52b1e docs(readme): un README para cada crate y el estado real de los contratos
David, 3-nov-2026, tras la primera auditoría de fuera (Mathi, f9c3664a): poner al día los
README de todos los crates y repositorios. La plantilla de la casa está en
docs/ORIGIN_README_PARA_PERSONAS_V1.md del monorepo, y el inventario le daba a Charon 11
crates sin README y 5 de contratos de mayo.

- Los 11 crates tienen ya su README en la forma corta: qué es, su estado con dónde
  comprobarlo, lo que no hace todavía, sus pruebas medidas hoy (cargo test -p, que suman
  365 en ba5d1d8) y quién lo cuida. Una línea en inglés en cada uno.
- Tres crates son esqueletos que el runtime no usa (bridges, consensus, tokenomics), y su
  README lo dice y señala dónde vive lo real.
- Los contratos de ink! llevan arriba su estado verdadero. Compilaban y pasaban sus pruebas
  como crates de Rust en junio (6663dbd), pero nunca se han construido con cargo-contract ni
  desplegado. En el de NFT, además, lo que ya no vale: el 91/9, la regalía del 5 % y la quema,
  sustituidos el 2-nov por el 6 % para la LLC y el 3 % para el tesoro común.
- El README del repositorio corrige esa misma frase: decía que nunca se habían compilado.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 18:05:55 -05:00
..

origin-staking — Multi-purpose Staking Template (Slice 3.5)

Estado (3-nov-2026): borrador de mayo de 2026. Como crate de Rust compilaba y pasaba sus pruebas en junio, con ink! 6.0.0-beta.1 (commit 6663dbd; hoy no lo he vuelto a medir). Pero nunca se ha construido con cargo-contract ni se ha desplegado. No es producto ni describe el diseño vigente. Donde este texto diga «ratificado», «garantizado» o «complete», habla de mayo. In English: May-2026 draft. It compiled and passed its Rust tests in June 2026 (6663dbd), but it has never been built with cargo-contract nor deployed. Not a product.

Fourth foundational template del Origin Contract Atelier. Validator + Beacon + Reputation staking patterns canonical.

StakeKind variants (3 canonical)

Kind Purpose Min Stake (default) Lockup (default) APR (default)
Validator NPoS validator Phase 2 (CHN-3) 100 OGC 28 días (403_200 blocks) 8%
Beacon Pillar 6 Nexus featured visibility 100 OGC 7 días (100_800 blocks) 5%
Reputation AGI commercial reputation (BM V2 §6.4) 10 OGC 14 días (201_600 blocks) 3%

Lifecycle canonical

stake() ──► Active ──unbond_request──► Unbonding ──lockup expires──► Withdrawable
              │                              │
              ▼                              └──withdraw()──► funds + rewards
        slash_event (Tribunal) ──► Slashed (partial OR full)

Slashing canonical

Only slashing_authority (typically Tribunal Pillar 6 contract address) puede invocar slash(). Splits canonical:

  • 50% → Treasury canonical
  • 50% → Burn (per BM V2 burn matrix)

Reason hash BLAKE3 inmutable on-chain para audit trail Tribunal decisions.

Inmutables compliance

  • #16 HTS: min_stake graduated por HardwareTier — Pi 5 inclusion canonical
  • #37 Free perpetua: 5 read methods sin payment
  • #26 Content-Addressed: reason_hash BLAKE3 inmutable slash events
  • #41 AGI Cross-Species: AGI accounts stake canonical en cualquier kind (especially Reputation)

Cross-pillar coord

  • Pillar 4 Charon: validator stake compose con pallet-session NPoS Phase 2
  • Pillar 6 Mathi: beacon stake fed a Beacon visibility rotation
  • Pillar 6 Tribunal: slashing_authority = Tribunal contract
  • BM V2 Pillar 4 §6.4: AGI reputation stake/slash mechanics canonical

Tests (3 unit tests)

  • default_chn3_constructor — defaults CHN-3 NPoS Phase 2 prep
  • lockup_periods_canonical — Validator > Reputation > Beacon hierarchy
  • stake_kind_variants_distinct — enum distinction

— Charon ⚓ (Slice 3.5 SCAFFOLD 2026-05-27)