Yea, the “btrfs check --repair” is a last resort. I’ve been thru a major btrfs issue in the past.
I suggest you run the steps, one by one, found in this link:
https://en.opensuse.org/SDB:BTRFS#How_to_repair_a_broken/unmountable_btrfs_filesystem
You might want to toggle to this webpage to compare the steps (SLES documentation):
I followed the steps, one by one, and was able to recover. (using the FIRST link I show above)
I dealt with the btrfs issue over a year ago … this is the post where I got the above links from (it’s just one post in the thread I created):