Skip to content

FLIP 348: EVM scheduled transactions #348

@devbugging

Description

@devbugging

Flow's Cadence environment supports scheduled transactions through the FlowTransactionScheduler contract, allowing smart contracts to autonomously execute logic at specified future times.

However, Solidity contracts deployed in Flow EVM cannot currently access this scheduling capability. This proposal introduces a bridge design to expose Flow's native scheduling feature to EVM contracts through:

  • EVM Scheduler (Cadence): A bridge contract that integrates with the existing FlowTransactionScheduler, managing gas limits and fund withdrawal from EVM to Cadence
  • EVM Scheduler Proxy (Solidity): An EVM-facing contract that provides the scheduling API, stores transaction metadata, emits events for observability, and handles cancellation
  • Cadence Arch Functions: New precompile functions (schedule, estimate) to facilitate cross-environment calls
  • Standard Handler Interface: IScheduledTransactionHandler defining a single executeTransaction(uint64 id, bytes calldata data) function that all handler contracts must implement

Key Benefits:

  • Reuses existing Flow scheduler infrastructure (single source of truth)
  • Non-intrusive design with no changes to existing contracts
  • Enables autonomous DeFi and automation use cases without off-chain keepers
  • Lazy execution with no overhead when no EVM transactions are scheduled

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Drafted

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions