I've occasionally pondered some sort of phone app that that can dynamically create a random new forwarding email, and keep track of what purpose it was for and who you shared it with.

Firefox/Mozilla and Apple both offer services along these lines.

I was thinking of something that would work with a personal domain, with a mail server that I (indirectly) control.

It would maintain a small pool of immediately-available addresses, since there might be latency in setting up a new one. When I need it, one is removed from the pool, recorded with metadata (e.g. purpose, duration, who to blame if it gets spammed), and in the background the process is started to restock the pool.

I recommend simplelogin.io