Skip to content

Fix oracle freshness, partial liquidity, proposal pagination, and expired exits - #714

Merged
nonsobethel0-dev merged 1 commit into
Parashield-Protocol:mainfrom
SirAlketa:parashield-fixes-673-676
Oct 20, 2026
Merged

nonsobethel0-dev merged 1 commit into
Parashield-Protocol:mainfrom
SirAlketa:parashield-fixes-673-676

Conversation

@SirAlketa

Copy link
Copy Markdown
Contributor

Summary

Fixes four bugs and one performance issue in the core Parashield contracts.

Changes

  • OracleVerifier (contracts/oracle-verifier/src/lib.rs): verify_trigger now enforces both MaxTimestampAge and TimestampFutureBuffer when filtering eligible data points, preventing stale or future-dated oracle readings from influencing claim payouts.

  • ClaimsProcessor (contracts/claims-processor/src/lib.rs): Payout path now handles the case where pool liquidity is below the claim amount — falls back to a partial payout rather than panicking, with helper check_pool_liquidity.

  • GovernanceDAO (contracts/governance-dao/src/lib.rs): New list_proposals(offset, limit) function (max 50 per call) provides paginated access to proposals, avoiding instruction limit exceeded errors as the proposal count grows.

  • RiskPool (contracts/risk-pool/src/lib.rs): sweep_expired_exits now auto-expires stale exit requests whose age exceeds ExitRequestTtl (default 90 days), clearing the queue entry and unblocking future withdrawals.

Closes #673
Closes #674
Closes #675
Closes #676

…-Protocol#675, Parashield-Protocol#676: oracle freshness, partial liquidity, proposal pagination, expired exits

- OracleVerifier: Enforce MaxTimestampAge + TimestampFutureBuffer in verify_trigger (Parashield-Protocol#673)
- ClaimsProcessor: Handle partial pool liquidity gracefully instead of panicking (Parashield-Protocol#674)
- GovernanceDAO: Add paginated list_proposals to prevent instruction limit exceeded (Parashield-Protocol#675)
- RiskPool: Auto-expire stale exit requests via TTL cleanup in sweep_expired_exits (Parashield-Protocol#676)

Closes Parashield-Protocol#673
Closes Parashield-Protocol#674
Closes Parashield-Protocol#675
Closes Parashield-Protocol#676
@drips-wave

drips-wave Bot commented Oct 20, 2026

Copy link
Copy Markdown

@SirAlketa 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! 🚀

Learn more about application limits

@nonsobethel0-dev
nonsobethel0-dev merged commit a72ac91 into Parashield-Protocol:main Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants