All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Inline Rustdoc comments for every
pub fnin the contract source (#68). .env.examplefiles for backend and frontend packages (#70).- This
CHANGELOG.mdand the release process documentation (#71). docs/faq.mdwith answers to 10+ contributor and maintainer questions (#69).get_org_assignment_capacityandget_global_application_capacityhelper functions.is_org_assignment_limit_reachedandis_global_application_limit_reachedhelper functions.- Express REST API server with helmet, CORS, and morgan middleware (#19).
- Graceful shutdown handling with configurable timeout (#19).
- Stellar Horizon API client service with exponential backoff retry logic (#20).
- Soroban RPC client with transaction submission and contract data querying (#21).
- Structured error handling for all 11 Soroban contract error codes (#21).
- GitHub issues indexing service with incremental sync from GitHub API (#22).
- Scheduled sync job that runs every 15 minutes to keep GitHub issues in sync (#22).
- Admin endpoints for manual GitHub issues sync triggering (#22).
- Revoke-assignment state-transition tests: org count decrement,
is_assignedfalse, re-application after revoke, andAssignmentNotFounderror (#46). - TTL expiry and extension tests for temporary storage keys with measurable ledger assertions (#47).
- Benchmark tests for contract function execution costs with reproducible CI command (#48).
- WASM binary size documentation and release-profile optimization settings in README (#50).
0.1.0 - 2026-06-24
- Initial WorkloadGovernor Soroban smart contract.
- Global application cap: max 15 pending applications per contributor.
- Per-org assignment cap: max 4 active assignments per contributor per organisation.
initialize,register_maintainer, andupgradeadmin functions.apply_for_issueandwithdraw_applicationcontributor functions.assign_issue,complete_assignment, andrevoke_assignmentmaintainer functions.extend_application_ttlpermissionless TTL refresh function.- Read-only query functions:
get_global_application_count,get_org_assignment_count,has_applied,is_assigned. - Temporary storage for applications (wave-bounded TTL ~24 h).
- Persistent storage for admin, maintainers, and assignments.
- Full unit and property-based test suite.
- GitHub Actions CI workflow.
- Docker Compose setup for local development.
- AWS infrastructure (RDS, ECS, CloudWatch, Secrets Manager) Terraform definitions.