thank you for the PR! I think I'm gonna pass on it for now.
One slightly annoying thing to work around is that tokio::fs isn't really a magic ticket here. Those file system writes are still synchronous, just on another pool, which is theoretically nice but adds a lot of complexity. The directory walk itself is still synchronous, for example, and that's probably more costly.
Since this is a potential correctness issue I'd prefer to keep the code simple and reliable for now. If we can point to some tangible slowdowns in materialization I'd be happy to reconsider a bigger rework!