They're forced to because otherwise you couldn't use your suspend-based DAO methods. Since SQLDelight always exposes the ability to execute synchronously we don't have that problem. Also have you looked at the insane hacks that they do in order to support this?