When people tried to do a full-featured filesystem, with a remarkable exception (ZFS) it's either a disappointing unfinished mess (btrfs) or a promising, but a long-term project taking years (bcachefs).
Making a filesystem with strong support of important features is an extremely demanding project.
Lines of code isn't the only important metric. A project with a smaller number of LoC can take a long time to fully test and debug and validate.
45KLOC of C code already sounds really scary to me, although yeah, journaling is really nice to have.
About the only class of scenarious to use BTRFS instead of ZFS is if you want the features, do not need RAID5/6, require support by Linux distributor/kernel developers or for some other (hard to think of) reason you can't use ZFS.
https://arstechnica.com/gadgets/2021/09/examining-btrfs-linu...
What's harder is making them as robust as they need to be for practical daily use. Doing that is a matter of comprehensive testing, though. With filesystems, the hard part is QA, not implementation.