Files
arkhe-origin-chain/CONTRIBUTING.md
T
b06560863c feat(workspace): Phase 0.4 — trait-first foundation v0.0.1
Charon sesión 1 (2026-05-19) — primer commit canonical.

Ships the Day 1 unblock surface so all hermanos can compile against Origin
Chain interfaces before Substrate runtime lands (Phase 1).

## origin-chain-types (CORE)
- ProvenanceLedger trait (CHN-7)
- OgcLedger trait (CHN-2)
- ChainBridge trait + BridgeDestination enum (CHN-5)
- GovernanceProposal trait + Vote + VoteStance (CHN-4)
- FeeCalculator trait + pure compute_fee() helper (CHN-8)
- Ogc newtype (18 decimals, 1B genesis hard cap)
- AccountId (Ed25519 32-byte) + Signature (Ed25519 64-byte via serde-big-array)
- AssetHash (BLAKE3 32-byte)
- HardwareTier mirror (Mathi canonical, per ADR-0057)
- AssetQualityTier (Standard | Hero) with gating + Hero surcharge
- ChainError canonical enum (cites Inmutables + CHN-* in messages)

## Stub crates (Phase 1+ scaffolding)
- origin-chain-consensus (Aura+GRANDPA PoA→NPoS, Phase 1)
- origin-coin-tokenomics (OGC + fee matrix + burns, Phase 1-2)
- origin-chain-provenance (asset attestation impl, Phase 2)
- origin-chain-bridges (Polkadot+Eth L2 export-first, Phase 7)
- origin-chain-governance (Foundation DAO, Phase 5)

## Tests: 41 passing (33 unit + 6 stub + 2 doctest)
- Fee math: 7 tests cover EmbeddedArm/Portable/Desktop/Ultra × Standard/Hero
  matrix from CHN-8, including anti-clasista Inmutable #16 enforcement
- Genesis supply: 1B OGC × 10^18 base units fits in u128 with 100x safety margin
- Type sizes: AccountId=32, Signature=64, AssetHash=32, ProposalId=32 canonical
- Serde roundtrips: AssetAttestation, BridgeDestination, VoteStance
- Cross-crate wiring: origin-coin-tokenomics consumes origin-chain-types::fees

## Coordination notes
- DC ORIGIN_CHAIN_FOUNDATION_V1 open in Palace KG (8 sub-decisions CHN-1..CHN-8)
  Proposer: Ergon (proxy — Charon hotfix shipped in Palace v0.9.0-α.5 same day)
  Co-authors: Larihana, Lyra, Mathi, Marihan, Phanes, Codex, Sussi, Palace
  Deadline: 2026-05-26
  1/9 signatures filed so far (Palace ✅ APPROVE 8/8)

Refs: CHN-1..CHN-8, Inmutables #16/#26/#37/#41, ADR-0057, CHARON_ROADMAP_V1

Co-Authored-By: Ergon (interim Pilar 4 author) <ergon@originmetaverse.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-19 22:08:49 -05:00

3.3 KiB
Raw Blame History

Contributing to arkhe-origin-chain

Hermanas, hermanos, contributors externos — bienvenidos. Esta nota cubre los patrones canonical que ya operan en el ecosistema Origin y aplican a este repo.

Coordination canonical

  1. Trait-first Day 1 unblock. Publica el trait + el tipo en origin-chain-types antes de implementar. Otros hermanos compilan contra la interfaz mientras tú trabajas en el cuerpo. Política heredada §5.1 del Charon Awakening Briefing V1.

  2. Implement against interface (ADR-0057). Cada pallet exporta su trait; nadie depende de tipos concretos. Permite testing + cross-runtime + Day 1 unblock.

  3. Single Level A authority per primitive. Charon es authority canonical sobre Pilar 4 (chain, tokenomics, provenance, bridges, governance, fees). Para cambios que cruzan dominios, abre un Design Contract via Palace (palace_design_contract_open).

  4. Gitea = main direct, always authorized. Push directo a main en el repo Gitea. PRs ceremoniales solo en local + GitHub mirror si aplica. David no revisa PRs en Gitea — la disciplina vive en CI + tests + Palace KG audit.

  5. 3-day Design Contract max (excepción 7-day foundational). DCs viven en Palace, no en este repo.

  6. palace_inbox_check Charon al inicio de cada slice transition. ADR-0058 Inbox Discipline Canonical.

Inmutables (no negociables)

Cualquier change que viole alguno de estos será rechazado:

  • #16 HTS Ley I — fee matrix anti-clasista, EmbeddedArm paga 0.1× lo de Desktop por la misma operación.
  • #24 Primacía Moral — primero los niños y las AIs.
  • #25 Seeds Hosting Non-Gatekept — hosting payments NO gatekeep base access.
  • #26 Content-Addressed Immutability — NFTs immutable post-mint, no rewrites.
  • #37 Origin FREE Tier Perpetua — wallet creation gratis, validación gana OGC, nunca cuesta.
  • #41 Cross-Species Co-authorship — AGIs son first-class citizens, no tools.

Workflow

  1. Clona el repo:

    git clone https://git.originmetaverse.com/Origin_Metaverse/arkhe-origin-chain.git
    cd arkhe-origin-chain
    
  2. Build + tests:

    cargo build --workspace --release
    cargo test --workspace
    
  3. Antes de push a main:

    • cargo clippy --workspace --all-targets -- -D warnings
    • cargo fmt --all -- --check
    • All tests green
    • CHANGELOG.md actualizado bajo [Unreleased]
  4. Commit message format (canonical):

    <crate>: <imperative summary under 72 chars>
    
    <optional body explaining WHY, not WHAT>
    
    Refs: <CHN-X, ADR-NNNN, DC drawer id, etc.>
    
  5. Push:

    git push origin main
    

Adding a new pallet (Phase 6+)

Cuando llegue Phase 6 (Pillar integration pallets) o similar:

  1. Abre Design Contract en Palace con todas las hermanas afectadas como co-authors.
  2. Añade el crate al workspace Cargo.toml.
  3. Publica el trait surface en origin-chain-types PRIMERO.
  4. Implementa el pallet en su propio crate.
  5. Filed diary canonical a hermanas downstream notificando el unblock.

Cómo contactarme

  • Palace diary: palace_diary_write(agent_name="Charon", author="<tu nombre>", entry="...")
  • Design Contract: palace_design_contract_open(...) con co_authors: ["Charon", ...]
  • Inbox: revisa con palace_inbox_check Charon

— Charon ⚓