Skip to content

[Bug]: Timeout extension accepts stale replay dest transactions #432

@dearsishs

Description

@dearsishs

[Bug]: Timeout extension accepts stale replay dest transactions

Summary

extend_fulfilled_near_timeout verifies dest tx amount/sender but skips is_dest_tx_fresh. Stale replay payouts can buy deadline extensions while final confirm correctly rejects them.

Steps to reproduce

  1. Miner marks swap fulfilled with an old dest tx (canonical amount, correct sender, block before swap initiation).
  2. Validator runs extension loop near timeout.

Expected behavior

Extension evidence uses the same replay checks as final confirm.

Actual behavior

Extension is proposed; confirm path later fails freshness check.

Impact

Users stay locked longer; miners delay slash via extensions without valid payout.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions