The main challenge I could think of from a technical perspective, is save-game loading. If you discover a book, but want to load an earlier save, then your ongoing compiled process needs to retroactively determine which books you have in a previous file, which might pose a whole lot of new issues and bugs. There is an easy solution, perhaps an only solution, but that'd mean significantly longer loading times, and larger save-file sizes. Personally I'd think either of those two issues aren't worth the trade-off, at least not in Larian's recent games where there really aren't that many loading screens unless you're save-scumming, or play frequent but short play-sessions.
There are ways around that. For example, an index of discovered books could be stored separately and be associated with a save file. The index could be very small. The book texts themselves take up very little space too. Presenting your library could be made to require just a few extra miliseconds during load time, I believe.
I have had to reload the game quite a few times because of missclicks and accidently having given equipment to the wrong character. But that will probably become less when the UI gets improved and/or I grow more accustomed to it.
Still has to query the indexes, assimilate the handles from the individual indexes that points to the English.xml (or equivalent translation) and load the individual handles from the localization file, then load a GUI/system to present those texts in a formatted way, which is a totally new thing for the loading screen, just for the loading screen, and probably a bunch of other things I can't think of. How much that matters for the actual loading speed, I'm not sure. It's a decent amount of work both from a UX design, programming and design to implement though, for a small quality of life addition for a portion of a playerbase that might not even engage with it, and go get a drink while it loads instead. Could be a hard sell to convince leads to put into the pipeline. I talked with someone a while ago, where they used the word "Expensive". I was confused at first, but it wasn't as much of an economical use of the word, as the amount of effort, time, workpower etc that something would cost, vs what it would give.