Currently we check inside expand() that there are at least 10,000 nodes/edges available. That's because sometimes we need a lot of resources for cascading depth updates. The check should be performed somewhere outside expand(), because expand() itself doesn't need many nodes.
Once an opening is solved, there should be an ability to expand winning nodes all the way to victory. By default, the book stops at nodes provable with a short PN search.