Problem: The orphanage divides a global limit between peers holding orphan transactions. With enough peers, integer division gives each peer an allowance of zero. Adding another orphan then triggers an assertion and aborts the node. The default connection limit is 200, so this requires an unusually high connection count.
Fix: Use a minimum per-peer allowance of one and keep peers at that minimum eligible when choosing what to remove. This lets the orphanage return to the global limit. Add coverage for three peers sharing a limit of two.