Skip to content

feat: testnet validation scripts#49

Open
bitnician wants to merge 17 commits intomainfrom
behzad/feat-testnet-validation
Open

feat: testnet validation scripts#49
bitnician wants to merge 17 commits intomainfrom
behzad/feat-testnet-validation

Conversation

@bitnician
Copy link
Copy Markdown

Add comprehensive testnet validation infrastructure and attestor service for IGRA Orchestra. This PR introduces automated validation workflows, Kaspa wallet utilities, and L1 block attestation capabilities.

Key additions:

  • Attestor service for L1→L2 block attestation
  • Automated testnet validation orchestration
  • Kaspa wallet CLI utilities (send, sweep, DAA reader)
  • Enhanced backup/restore workflows
  • Periodic entry transaction testing

Changes

Attestor Service

  • New attestor service that reads Kaspa blocks and stores attestations on L2 smart contracts
  • Docker configuration with health check and metrics endpoints
  • Integration with RPC provider for L2 state updates
  • Optional igra-core-contracts repository support via CLONE_CORE_CONTRACTS flag

Testnet Validation Automation

  • run-testnet-validation.sh: Complete validation orchestrator handling backup restore, service startup, and health verification
  • verify-kaspa-status.sh: Kaspad container and RPC connectivity validator
  • send-entry-periodic.sh: Periodic L1→L2 entry transaction sender with monitoring

Kaspa Wallet Utilities

  • kaspa_wallet_send.sh: Send KAS transactions via wallet-core API
  • kaspa_wallet_sweeper.sh: Sweep mature UTXOs from wallet
  • kaspa_daa_reader.sh: Read DAA score and timestamp from Kaspa node

All wallet utilities are self-contained with embedded Rust code and auto-compilation with caching.

  Add three self-contained shell scripts for Kaspa testnet validation:
  - kaspa_daa_reader.sh: reads DAA score and timestamp from Kaspa node
  - kaspa_wallet_send.sh: sends KAS transactions via wallet-core API
  - kaspa_wallet_sweeper.sh: sweeps mature UTXOs from wallet

  These scripts embed Rust code and auto-compile with caching, providing
  standalone tools for testnet validation workflows.
  Add comprehensive validation orchestration and monitoring scripts:
  - run-testnet-validation.sh: automated testnet validation orchestrator
    that handles backup restore, service startup, and health verification
  - verify-kaspa-status.sh: validates kaspad container and RPC connectivity
  - send-entry-periodic.sh: periodic L1→L2 entry transaction sender with
    balance monitoring and statistics tracking
  Add attestor service to read L1 blocks and store attestations on L2:
  - New attestor service in docker-compose with health/metrics endpoints
  - Dockerfile.attestor for building the attestation service
  - Configuration options for RPC URL, contract address, and credentials
  - Optional igra-core-contracts repository cloning via CLONE_CORE_CONTRACTS flag
  - Integration with setup-repos.sh and pre-built image pulling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant