How do I control a REV Vault from a smart contract? I just reviewed RevVault.rho, and the only functionality I can see for moving REV around is the transfer method. Code can choose what address to send to and how much, but that's all.
In particular, I don't see a way for a contract to perform services on receipt of REV.
background: invited me to take a look at the REV Vault stuff from an ocap perspective. The getIdentity stuff looks an awful lot like ethereum's msg.sender or unix's process owner, which makes me suspect the system has confused deputy vulnerabilities. But so far, we only have a ledger system for sending stuff between accounts represented by key pairs. So there are no confused deputy vulnerabilities, but only in the way that a computer that's turned off is secure: I don't see any way to do smart contracts at all.