-
Notifications
You must be signed in to change notification settings - Fork 130
Invoice ratings vector limits and abuse prevention #721
Copy link
Copy link
Open
Labels
Stellar WaveIssues in the Stellar wave programIssues in the Stellar wave programinvoiceAuto label for contract issues: invoiceAuto label for contract issues: invoicepriority-mediumAuto label for contract issues: priority-mediumAuto label for contract issues: priority-mediumsmart-contractsAuto label for contract issues: smart-contractsAuto label for contract issues: smart-contractstestingAuto label for contract issues: testingAuto label for contract issues: testingvalidationAuto label for contract issues: validationAuto label for contract issues: validation
Description
Description
Cap ratings count, validate score bounds, and prevent unbounded storage growth.
Requirements and context
- Must be secure, tested, and documented
- Should be efficient and easy to review
- Align with existing Soroban contract patterns in
quicklendx-contracts
Suggested execution
- Fork the repo and create a branch
git checkout -b feature/invoice-ratings-limits- Implement changes
- Write contract:
src/invoice.rs - Write comprehensive tests:
src/test_invoice.rs,src/test_string_limits.rs - Add documentation:
docs/contracts/invoice.md - Include NatSpec-style comments (Rust doc comments on public items)
- Validate security assumptions
Test and commit
- Run tests
- Cover edge cases
- Include test output and security notes
Example commit message
feat: add invoice ratings limits and validation
Guidelines
- Minimum 95 percent test coverage
- Clear documentation
- Timeframe: 96 hours
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Stellar WaveIssues in the Stellar wave programIssues in the Stellar wave programinvoiceAuto label for contract issues: invoiceAuto label for contract issues: invoicepriority-mediumAuto label for contract issues: priority-mediumAuto label for contract issues: priority-mediumsmart-contractsAuto label for contract issues: smart-contractsAuto label for contract issues: smart-contractstestingAuto label for contract issues: testingAuto label for contract issues: testingvalidationAuto label for contract issues: validationAuto label for contract issues: validation