If the provider cannot find the menu document then the error is thrown back to KnpMenu ChainProvider and the next provider is tried.
When all providers fail you get a rather upaque message:
The menu "pages" is not defined.
PhpcrMenuProvider::has
needs to return false
if the document does not exist, but currently it will return false
if f.e. the document does exist but does not implement the NodeInterface
.
It could be taken for granted that if the user has defined the menu base path to be /cms/menu
then if a document exists at /cmf/menu/foo
then they intended that foo
was the menu root.