So I've realized the root of my problems in trying to use a home folder on ZFS in the past - the file system is kinda slow to mount, and I tried to log on when the home folder wasn't available. For some reason, in some way, this seemed to corrupt the user data, and things got permanently weird afterward.
So... I'm wondering if it's at all possible to either force all automounted volumes (including the zfs pool) to mount before showing the logon promtp, or at least show some indication of whether it's mounted or not... The time it takes can be really random, from almost immediate to two minutes after logon (based on experiences with a home folder on HFS+ and a Documents folder symlinked to ZFS...)
I'm sure this is something a lot of people have run into before...