Problem

When components overlap or there’s insufficient routing space, the autorouter fails with cryptic error messages like:

AutoroutingPipelineSolver error: Error: Unexpected numItems value: 0.

This provides no actionable information to developers about what went wrong or how to fix it.

Solution

Enhanced error handling in CapacityMeshAutorouter to detect common failure scenarios and provide clear, actionable error messages:

Before:

Error: Unexpected numItems value: 0.

After:

Error: Autorouting failed: No valid routing space available. This often occurs when components are overlapping or when there are insufficient obstacles for routing. Please check component placement and ensure components are not overlapping.

Changes

Enhanced error handling in runCycleAndQueueNextCycle() method for async autorouting Enhanced error handling in solveSync() method for synchronous autorouting Detects specific error patterns and provides helpful guidance Maintains backward compatibility - no breaking changes

Solves #763 /claim #763

Claim

Total prize pool $15
Total paid $0
Status Pending
Submitted May 30, 2025
Last updated May 30, 2025

Contributors

AA

Aayush Khopade

@Apocalypse96

100%

Sponsors

TS

tscircuit

@tscircuit

$15