> ## Documentation Index
> Fetch the complete documentation index at: https://docs.firstresonance.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Start a run

> Create a run by binding a procedure to a part inventory, configure pre-run options, and assign it to an operator or work center.

Starting a run moves a build from planned to actively producing, binding a procedure to a part inventory and an assignment. For how ION models those pieces, see the [Overview](/build-hardware/runs-and-execution/overview). This page covers creating a run from each of the common entry points.

## Prerequisites

* A released procedure for the target part.
* For an attach run, an existing part inventory record for the unit (created automatically when the part is staged from receiving, kitting, or a parent run). For a build run, ION creates the inventory on completion.
* Permission to create runs in your organization.

## Where to start a run

| You're starting from…     | Use this entry point                                                                    |
| ------------------------- | --------------------------------------------------------------------------------------- |
| The Runs page             | **Create Run** button in the header, or the **Create Run** shortcut card                |
| The procedure             | **Create Run** button on the procedure page (the procedure is pre-filled in the wizard) |
| A schedule (planned work) | The timeline view: see [Schedule a run](/build-hardware/runs-and-execution/scheduling)  |

Each path opens the same **New Run** wizard and lands at the same end state: a run record in `Todo`, ready for an operator to pick up.

## The New Run wizard

The wizard walks top to bottom through five steps: **Source**, **Part**, **Identify**, **Details**, and **Review**. The stepper at the top tracks your position, and you can click a step to jump to it.

### 1. Source

Choose where the run's output inventory comes from:

* **Build a new item**: the run creates a new part that becomes inventory on completion.
* **Use an item already in inventory**: attach existing stock instead of creating new. This is the path for a kit or sub-assembly already on the floor.

### 2. Part

Pick the **Part** this run produces. Optionally pick a **Procedure** (released procedures only), or leave it blank to add one later. When you open the wizard from a procedure page, the procedure is already selected here.

ION instantiates run steps from the procedure's steps automatically. Each procedure step becomes a `RunStep` in `todo` state, in the same order, with the same fields and validations.

### 3. Identify

How each unit is pinned down. In **Build a new item** mode, choose how completed units are tracked:

* **Serialized**: one unit per serial number.
* **Lot-tracked**: units grouped under a lot number, with a quantity.
* **Quantity only**: a count, with no serial or lot.

ION pre-selects the tracking type the part is configured for. For serial and lot numbers you can enter a value or check **Auto-generated** to have ION assign one.

In **Use an item already in inventory** mode, this step instead asks you to pick the existing **Inventory item** to attach.

### 4. Details

Name the run and set who's responsible:

* **Run name**: enter a name, or check **Auto-generated**.
* **Due date** (optional).
* **Export controlled** toggle.
* **Assigned to** (optional): a user or team.
* Any organization-defined custom attributes.

### 5. Review

Each run you've authored appears as a row. From here you can **Edit** a run, set a number of **Copies** and **Duplicate** it, or remove it. Use **Add another run** to author more in the same session. To batch the runs together, check **Batch runs** and name the batch.

Click **Create run** (or **Create N runs** / **Create batched run**) to create everything in the list.

## Pre-run configuration

A few options are worth setting at run-creation time rather than mid-run:

### Run batch

Steps in batched runs propagate sign-offs and redlines together. For more information, see [Manage run batches](/build-hardware/runs-and-execution/run-batches). You can add a run to a batch later, but batching at creation avoids divergence between batched and unbatched siblings.

### Assignment

Setting **Assigned to** (a user or team) on the Details step makes the run discoverable on their own work view. If you don't assign it, the run lives in the org's "unassigned" pool until someone picks it up.

### Run name

The auto-generated name encodes the run and target part. If your org tracks builds by a different identifier, such as a customer PO, lot, or build number, enter your own **Run name** on the Details step. It's the first thing operators see in any list view.

<Warning>
  The procedure revision is locked at run-create time. If you revise the procedure mid-run, in-flight runs continue running the version they were created with, and new runs pick up the new revision.
</Warning>

## Troubleshooting

**"No procedures available for this part"**: the part has no procedures associated. Either link the procedure to the part in the procedure record, or open the wizard from the procedure page so the procedure is pre-filled.

**"Part inventory is not in a state that allows a new run"**: when attaching an existing inventory item, the unit is `consumed`, `installed`, or `scrapped`. You can't start a build run on inventory that's already been used. Check the inventory's state on the inventory page.

**"Procedure has unreleased steps"**: the procedure isn't in `released` state, or some of its steps aren't approved. Release the procedure first, then start the run.

## Programmatic creation

For integrations that schedule runs from an external system (MES, ERP, custom dispatcher), see [Common Queries → Create a Run](/api-reference/common-queries/create-run).

## Related

* [Run and run step states](/build-hardware/runs-and-execution/overview#states)
* [Execute a run step](/build-hardware/runs-and-execution/step-execution)
* [Manage run batches](/build-hardware/runs-and-execution/run-batches)
* [Procedures](/build-hardware/procedures)
* [Common Queries → Create a Run](/api-reference/common-queries/create-run)
