Skip to content

Improve Stellar mainnet deployment workflow#1

Open
zsheng823 wants to merge 5 commits intomainfrom
telegram-bot-60
Open

Improve Stellar mainnet deployment workflow#1
zsheng823 wants to merge 5 commits intomainfrom
telegram-bot-60

Conversation

@zsheng823
Copy link
Owner

Summary

Improve the Stellar mainnet deployment workflow with better error handling, testing, and verification.

Changes

  • Add environment protection for production
  • Reorder workflow triggers (manual dispatch first)
  • Add pull_request trigger for closed PRs
  • Install and verify Soroban CLI before deployment
  • Add tests before build step
  • Improve deployment command with --contract flag
  • Enhanced verification steps
  • Better error notification messages

Related Issue

Addresses Issue sorosave-protocol#26: Add deployment to Stellar mainnet workflow

章胜 added 5 commits February 24, 2026 19:48
- Implement Telegram bot using Grammy framework
- Add /subscribe, /unsubscribe, /status commands
- Add NotificationService for sending event notifications
- Add comprehensive documentation and setup guide
- Support notifications for:
  - New contributions
  - Payout distributions
  - Round started events

Closes sorosave-protocol#60
## Summary

Add comprehensive integration test suite for SoroSave SDK.

## Changes

### Added Files
-  - Integration tests covering:
  - Savings group lifecycle (create, get, list)
  - Contribution management (add, get, list)
  - Payout distribution
  - Round management (start, get, list)
  - Event subscription (contributions, payouts, round started)
-  - Test suite documentation
-  - Updated with test dependencies (@vitest, jest, etc.)

### Test Framework

- **Unit Tests**: Jest
- **Integration Tests**: Vitest
- **Coverage**: Vitest coverage
- **Test Watch Mode**: Supported

### Test Environment

**Prerequisites**:
- Local Soroban instance running
- Contracts deployed to testnet
- Environment variables set (RPC URL, contract address)

**Test Categories:**

1. **Contract Deployment Tests**
   - Test contract deployment to test environment
   - Verify contract initialization

2. **SDK Core Functionality Tests**
   - Test savings group creation
   - Test contribution management
   - Test payout distribution
   - Test round management

3. **Event Listener Tests**
   - Test event subscription for contributions
   - Test event subscription for payouts
   - Test event subscription for round started events

4. **Integration Tests**
   - End-to-end tests for complete group lifecycle
   - Test concurrent operations
   - Test error handling

## Acceptance Criteria

- [x] Create integration test suite
- [x] Add comprehensive test coverage
- [x] Test core SDK features
- [x] Test event subscriptions
- [x] Document test environment setup
- [x] Provide test running instructions

## Testing

Run integration tests:
````
npm test
```

Run specific test suite:
````
npm run test:integration
```

Run with coverage:
````
npm run test:coverage
```

## Future Work

This PR adds foundation for testing. Follow-up PRs can:
- Add more edge case tests
- Add performance tests
- Add contract interaction tests
- Add CI/CD integration for tests

Closes sorosave-protocol#9
- Add environment protection for production
- Reorder workflow triggers (manual dispatch first)
- Add pull_request trigger
- Install and verify Soroban CLI before deployment
- Add tests before build
- Improve deployment command with --contract flag
- Enhanced verification steps
- Better error notification
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