Does the Btrfs multi-device support make it a “rampant layering violation”?
Yes and no. Device management is a complex subject, and there are many different opinions about the best way to do it. Internally, the Btrfs code separates out components that deal with device management and maintains it’s own layers for them. The vast majority of filesystem metadata has no idea there are multiple devices involved. Many advanced features such as checking alternate mirrors for good copies of a corrupted block are meant to be used with RAID implementations below the FS.