@pmienk, you make a good point. However, as you note, during my test development I am able to pass arguments to index, a public function, such that an block that is not yet validated is added to the confirmed index.
The test passes on Ubuntu and Mac because ndebug is enabled by default. It was only with Ubuntu, clang, dynamic config on Travis that the test failed because that config had ndebug disabled.
Now I am using --disable-ndebug for all my development work.
I understand that maybe it is the responsibilty of data_base to not pass such bad arguments.
Just wanted to raise this, because the out of box build scripts enable ndebug, as one expects. Also, in case there's some more context and history to this that will improve my understanding.