Speculation - this may be related to the kernel config which has CONFIG_DEFAULT_HOSTNAME="archlinux" for arch kernels and i use a different name (saplinux)
In either case, in the boot logs the hostame shown before the pivot root is that default as compiled into thekernel - but after the switch root the actual hostname for the server is used.
Since raid uses the real hostname (cat /proc/mdstat for example shows the real hostname on the raid server) - that since the hostnames doesn't match. Before the switchroot the raid is assembled but at md127 instead of md0 - after the pivot root all hell breaks loose as there is no md0 only md127.
Clearly dracut must be used for raid - so whats the right way to do this?