It's not a bug, its about understanding the codebase in a way that makes sense. The xCash codebase is organized like spaghetti code with a mishmash of different solutions that were coded for problems, ESPECIALLY in regards to the database. There is 2 separate databases to track currency value when really there should be only 1. One uses BerklyDB the other LevelDB, 2 separate hash table database engines. BerklyDB was the original, and LevelDB was supposed to better faster, but had problems on Mac with corruption etc... So the programmers who did this initially half finished the conversion of the code for BerklyDB and left the other half LevelDB, leaving a huge mess to clean up.
So doing it the way I proposed will be less prone to errors and more secure long term. Hope this clears some things up.
Note::
My solution is going to use an SQL table, which is slower if the ledger kept growing... HOWEVER... since I plan to have a limited ledger it will wind up being faster overall long-term and easier to maintain and understand. Probably will use SQLite.
Good plan. We are with ya bud.