After playing with it some more, I'm finding that this actually works better in arc than in wart. In wart perhaps I should require parenthesizing it differently:
(iflet x ((...) :satisfies f)
'branch1)
Otherwise it interacts poorly with paren-insertion. Things like this with multiple branches:
iflet x 2+3 :satisfies even?
x+1
3+4 :satisfies even?
x+2