design_compose_netlist
Apply multiple schematic authoring operations to a design plan in one call, threading each result into the next and validating once to build a complete board efficiently.
Instructions
Apply many authoring operations to a plan in ONE call.
The bulk form of the authoring primitives -- the same reason you prefer a batch Altium tool over looping the singular one. Instead of one round-trip per part/block/bus, pass an ordered list and this threads the plan through all of them, then validates once. Each operation sees the previous one's result, so a part added early is available to a bus wired later. Build a whole board in a single call.
Args:
plan_json: the DesignPlan as a JSON string or dict.
operations: ordered list of op dicts, each with an "op" key:
* ``{"op": "add_part", "refdes", "lib_ref", "connections",
...}`` -- plus any optional add-part field (``value``,
``footprint``, ``lib_path``, ``power_nets``,
``ground_nets``, ``net_roles``, ...).
* ``{"op": "add_block", "block", "params"}`` -- see
``design_list_circuit_blocks`` for each block's params.
* ``{"op": "connect_bus", "endpoints", "net_names"?,
"net_prefix"?, "start_index"?}``.Returns:
{ok, plan, added: {refdes, nets, extended_nets}, notes, validation} for the FINAL plan -- same shape as the single-op
tools. On a bad operation, {ok: False, errors: [...]} where
the message names the failing operation's index.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| plan_json | Yes | ||
| operations | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||