Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VELAR · Contracts

Contratos inteligentes Soroban para bonos políticos en Stellar

Stellar Soroban SDK Rust CI

App · Spec · Docs


Visión general

Cada bono político puede desplegarse como contrato Soroban VelarBond: metadata, dueño y estado viven on-chain. La app Velar orquesta mint Classic Asset + deploy Soroban + escrow Trustless Work.

Modo Cuándo
Classic Asset only Dev sin SOROBAN_VELAR_BOND_WASM_HASH
Classic + Soroban Prod / demo con WASM desplegado

Contratos

Crate Ruta Descripción
VelarBond contracts/velar-bond/ Bono individual: owner, status, metadata, TSE admin

API · VelarBond

Función Autorización Efecto
initialize(tse, args) TSE Crea bono con metadata completa
transfer(to) Dueño Transfiere propiedad
freeze() / unfreeze() TSE Congela / descongela
set_in_escrow() / set_active() Dueño Marketplace / retiro
set_document_hash(hash) TSE Ancla SHA-256 del PDF
details() Lectura pública Metadata completa
current_owner() Lectura pública Address dueño
status() Lectura pública Active · InEscrow · Frozen · Sold · Cancelled
tse() Lectura pública Address TSE

Eventos

issued · transfer · frozen · unfrozen · inescrow · active

Errores (repr u32)

Código Significado
1 Ya inicializado
2 No inicializado
3 No es el dueño
4 No es el TSE
5 Estado inválido
6 Bono congelado
7 Mismo dueño

Desarrollo local

# Toolchain (ver rust-toolchain.toml)
rustup target add wasm32-unknown-unknown

# Tests unitarios Soroban
cargo test

# Build WASM release
cargo build --release --target wasm32-unknown-unknown

# Artefacto:
# target/wasm32-unknown-unknown/release/velar_bond.wasm

Despliegue testnet

Guía paso a paso: docs/DEPLOY.md

Resumen:

# Instalar Stellar CLI
cargo install --locked stellar-cli --features opt

# Desplegar e invocar initialize (ver DEPLOY.md)
stellar contract deploy --wasm target/wasm32-unknown-unknown/release/velar_bond.wasm --network testnet

En Velar API, configurar:

SOROBAN_VELAR_BOND_WASM_HASH=<hash del WASM desplegado>
SOROBAN_TSE_ADDRESS=G...

Seguridad

  • docs/SECURITY.md — modelo de amenazas y auditoría pendiente
  • No usar en mainnet sin revisión externa del contrato y multisig TSE.

Relación con el spec

Estados Soroban ↔ Postgres: velar-spec · states


Licencia

MIT

About

Contratos inteligentes Soroban de VELAR sobre Stellar

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages