Skip to content

Implement deadline/expiry enforcement for all time-sensitive operations #520

Description

@Smartdevs17

Context

Time-sensitive operations (flash loans, auctions, proposals) need expiry enforcement to prevent stale execution.

Current Limitation/Problem

Some time-sensitive operations lack deadline enforcement. Stale transactions can be executed at unfavorable times.

Expected Outcome

All time-sensitive contract functions enforce deadlines/expiry with clear error messages on expiry.

Acceptance Criteria

  • Flash loans: execute within 1 block or revert
  • Auctions: bids accepted only during auction period
  • Governance proposals: voting period enforced, execution window enforced
  • Timelock operations: enforce delay and execution window
  • Liquidation: ensure liquidation uses current (not stale) prices
  • Signature-based operations: enforce expiry timestamp
  • Common pattern: reusable deadline modifier/library
  • Gas overhead: < 1000 gas per deadline check
  • Test suite: all deadline scenarios tested

Technical Scope

  • Files: contracts/shared-deadline/, contracts/*/src/operations.rs
  • Impact: Flash loan, auction, governance, liquidation contracts
  • Testing: Time manipulation tests for deadline enforcement

Metadata

Metadata

Assignees

Labels

200-points200 point issueStellar WaveIssues in the Stellar wave programdrips-waveDrips Wave project taskhighHigh priority issue

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions