Feat/290 291 292 293 sync devcontainer release tests - #430
Open
deborah111haruna wants to merge 4 commits into
Open
deborah111haruna wants to merge 4 commits into
deborah111haruna wants to merge 4 commits into
Conversation
… drift check for view functions - Add scripts/check-view-calls-sync.sh to verify collection matches contract view functions - Add scripts/generate-view-calls-collection.py to automate collection generation - Update examples/view-calls.postman_collection.json with all 37 read-only view functions from intent_settlement/src/lib.rs (added 25 missing ones) - Update examples/view-calls.md documentation with complete function list - Add CI job (view-calls-sync) to .github/workflows/ci.yml to detect future drift - Remove obsolete get_min_bond and get_protocol_params entries from collection This ensures the Postman collection documentation stays in sync with the actual contract interface and prevents documentation drift as new views are added.
…contributor onboarding - Add .devcontainer/devcontainer.json with VS Code/GitHub Codespaces support - Add .devcontainer/Dockerfile based on rust:1.78 image - Preinstall Rust toolchain, wasm32-unknown-unknown, Stellar CLI, cargo-audit, make, just - Configure rust-analyzer with clippy checks and auto-format on save - Pre-fetch cargo dependencies during container setup for faster first build - Update CONTRIBUTING.md with quick-start devcontainer instructions - Support both local Dev Containers and GitHub Codespaces workflows Eliminates manual multi-step toolchain setup and ensures all contributors use the exact pinned Rust 1.78 version used in CI, with one-click setup in VS Code or GitHub Codespaces.
… with checksummed artifacts - Add .github/workflows/release.yml triggered on v* tags - Require all CI checks to pass before building release - Build both intent_settlement and proof_registry release wasm binaries - Compute SHA-256 checksums for each binary in SHASUMS256.txt - Publish GitHub Release with both wasm files and checksums attached - Extract release notes from CHANGELOG.md (version section) - Post verification summary to job output with checksum instructions - Update docs/mainnet-deployment-runbook.md with GitHub Release download option This provides integrators and auditors with: - Canonical, signed-off wasm binaries tied to each GitHub tag - Verifiable SHA-256 checksums for the exact bytes deployed - Reproducible builds using Rust 1.78.0 matching CI - Alternative to manual local builds for deployment verification
…sk_aware_solver_bot.py - Add examples/tests/test_risk_aware_solver_bot.py with comprehensive pytest suite - Cover all 6 decision gates documented in docs/risk-aware-solver-bot.md: 1. Solver eligibility gating 2. Intent state filtering (Open/PartiallyFilled only) 3. Deadline-slack rejection 4. Active-intent-cap enforcement 5. Bond-utilization rejection 6. Minimum-profit filtering - Include boundary cases at each threshold (exactly at limit, just below/above) - Include edge cases (zero values, negative profit, etc.) - Mock Stellar CLI/RPC calls so tests run fully offline and deterministically - Test helper function screen_candidates with various intent state scenarios - Add integration tests combining multiple decision gates - Add examples/tests/__init__.py for test package - Add examples/tests/README.md with testing documentation and coverage instructions - Add CI job (risk-aware-solver-bot-tests) to .github/workflows/ci.yml - Run pytest on every PR that touches examples/risk_aware_solver_bot.py - Report coverage with pytest-cov Total: 30 tests covering the reference solver bot's decision logic with: - Full line coverage of decision-gate functions - Boundary and edge case testing - Integration testing - Deterministic, offline execution via mocking
|
@deborah111haruna Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implement Issues #290, #291, #292, #293
Summary
Four high-complexity features for documentation sync, contributor onboarding, release automation, and test coverage:
#290: Sync Postman collection and add CI drift check for view functions
scripts/check-view-calls-sync.shto verify collection matches contract view functionsscripts/generate-view-calls-collection.pyto auto-generate collection entriesexamples/view-calls.postman_collection.jsonwith all 37 read-only views (added 25 missing)examples/view-calls.mddocumentation with complete function list.github/workflows/ci.ymlto detect and prevent future drift#291: Add devcontainer for reproducible contributor onboarding
.devcontainer/devcontainer.jsonfor VS Code/GitHub Codespaces.devcontainer/Dockerfilewith Rust 1.78, wasm32 target, Stellar CLI, cargo-audit, make, justCONTRIBUTING.mdwith quick-start devcontainer instructions#292: Add tag-triggered release workflow with checksummed artifacts
.github/workflows/release.ymltriggered onv*tagsSHASUMS256.txtfor each binarydocs/mainnet-deployment-runbook.mdwith GitHub Release download option#293: Add pytest suite and CI job for risk_aware_solver_bot.py
examples/tests/test_risk_aware_solver_bot.pywith 30 pytest tests covering 6 decision gatesexamples/tests/README.mdwith testing documentation.github/workflows/ci.ymlrunning pytest suite on every PRTesting
examples/view-calls.postman_collection.jsonagainst the live view-function surface #290:scripts/check-view-calls-sync.shverified collection is in syncexamples/risk_aware_solver_bot.py#293: All 30 pytest tests passing locallyCloses
examples/view-calls.postman_collection.jsonagainst the live view-function surface #290examples/risk_aware_solver_bot.py#293