abidb in --check mode runs a loop of abicompat invocations, between the target binary and each possible implementation of each shared library it needs. This does not detect cases where an undefined symbol from the binary is resolved in some but not all versions of the shared library pool. That is, we don't track whether all its undefined symbols are in fact resolved. This is especially bad if a symbol is defined by some but not all versions of a shared library. This may be assisted by abicompat -u and manually tracking defined symbols from various combinations of the candidate shared libraries. Maybe it could be detected during --submit time (since other candidate solibs for a new one are enumerable at that time).