Skip to main content
Koppar is built so that a model’s mistake cannot reach a fab. Every stage has a deterministic check behind it, and the last one decides whether fab files exist.

On the schematic

A design review reads the passing circuit and can send it back with blocking findings.

On the board

The release gate

Fab files are built only when both of these hold:
  1. Zero DRC errors from KiCad, with the fab’s rules.
  2. Nothing unconnected in KiCad’s ratsnest.
A board that fails the gate is still yours. The KiCad project, the board and the DRC report are downloadable, the report names every open net and every violation, and the chat agent can diagnose it and run again. What you do not get is a gerbers.zip for a board that would come back wrong.
“Mostly routed” is the most expensive kind of board, because the error surfaces after the fab order. Koppar reports it as a failed board, not as a result.

The same checks for agents

An agent driving Koppar over MCP, the CLI or REST gets the same gates. submit_circuit runs the schematic checks and returns blocking findings. get_fab_status says whether the board has earned its fab files and, if not, why.