testAddressBookScope hardcoded ".config/ObsidianDragon" for its pre-scoping addressbook.json, but AddressBook::load() reads the per-variant config dir (Lite -> ObsidianDragonLite/). In a --lite build the write and read diverged, so load() found nothing, size()==0, and the following entries()[0] read out of bounds -> SIGSEGV, taking the whole suite down. Write to dragonx::util::Platform::getConfigDir() (the same path load() uses, resolved under the test's temp HOME) and guard the entries()[0] access so a non-aborting EXPECT can never SIGSEGV the suite. Verified: ctest now passes 100% in BOTH the full-node and --lite builds. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
280 KiB
280 KiB