P&ID: From Spec
pid_from_specDraw a complete P&ID from a specification inside one AutoCAD transaction; invalid geometry or a mid-run cancellation rolls back the whole sheet and reports the failing item.
Instructions
Equipment, valves, instruments and connectors placed, then every line
drawn port-to-port, inside one transaction: any bad item rolls the whole
sheet back and the error names it (lines[2].to); so does an interruption
(a client cancellation mid-run leaves no half-drawn sheet and no open
transaction on either engine — the live one goes back to the UNDO Mark
transaction_begin set, so it never waits at an AutoCAD prompt; should
that rollback itself fail, the failure is logged, the cancellation is what
the client sees, and the drawing must be checked before a retry).
A non-finite coordinate, rotation, scale or stub is refused
by path before anything is placed. The response carries the graph read
back from the drawing and the P&ID critique issues, so the caller sees
dangling ends or duplicate tags in the same round trip. dry_run returns
the planned vertices and crossings without touching the drawing.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| spec | Yes | {sheet, equipment[], valves[], instruments[], lines[], connectors[]} — see the P&ID prompt | |
| dry_run | No | Validate and route in memory; draw nothing |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||