22:35:04 finally... finished the last planned enote scanning unit test after over half a year of work and 8k lines of tests (managed to find at least one small edge case bug in enote scanning code or the mock ledger in almost every single one of these suckers) https://github.com/UkoeHB/monero/blob/seraphis_lib/tests/unit_tests/seraphis_enote_scanning.cpp reorgs are a major PITA 22:37:43 My conclusion is you MUST avoid or at least minimize writing consensus-critical algorithms with many or multiplicative edge cases. It is simply too hard to tease out every edge case in complicated code, especially anything involving asynchronous processes.