> ## 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.

# Assign installation requirements

> Add installation-requirement steps that tie build requirements to procedure steps with traceability.

<Info>
  Installation requirements are in beta. Review the best practices on this page
  before you use them.
</Info>

You assign required installations at each step in a procedure. A run step can't close until all of its required installations are complete, the same way it can't close while a required field is empty.

## Assign installs to a step

Open the procedure's **Steps** tab, select a step in the step queue, then open the **Assigned Parts** section in the right rail. This is where you assign installation requirements to the selected step.

<Note>
  Parts can only be assigned to steps on build-type procedures. On other
  procedure types, the Assigned Parts section is unavailable.
</Note>

The Assigned Parts section has two parts. The top shows the installation requirements assigned to the step currently selected in the procedure step queue. Below it, a part selector and **mBOM** version picker let you choose which associated part's [mBOM](/build-hardware/bills-of-materials/manufacturing-bom) version you assign from, followed by that mBOM's items.

To add an assigned install to the step shown in the procedure window, click the **+** button next to the mBOM item.

<Note>
  The quantity you assign is the minimum installation quantity required to
  complete a run step.
</Note>

Installation requirements assigned to a step appear in the upper half of the panel. You can partially assign an mBOM item to a step. Each assigned part reads as `Assigned`, the quantity assigned to the step, a slash, the total mBOM quantity, then `each` (for example, `Assigned 2/5 each`). While the procedure is editable, the assigned quantity is an editable field you can adjust directly.

<Note>
  You can only create a run against the latest released mBOM version, or against
  the latest draft if none are released. Release mBOMs as needed before you use
  them in runs.
</Note>

You can release a procedure for a released mBOM while you draft a future version of the same mBOM.

Once you fully assign an mBOM item, it is shaded green on the mBOM panel. Turn on the **Hide assigned** toggle to remove fully assigned mBOM items from the view for a more streamlined assignment process. With **Hide assigned** off (the default), every mBOM item stays visible, with fully assigned ones shaded green.

### Substitutes

The crossing arrows highlight [substitutes](/build-hardware/bills-of-materials/substitutes) on the mBOM, showing which other parts are listed as substitutes.

### Reference designators

As with the minimum quantity to close a step, you can assign [reference designators](/build-hardware/bills-of-materials/reference-designators) that are required to close a step.

## Install inventory on a run step

You can install inventory from the run step itself, the same way you install inventory on the aBOM.

[Watch the walkthrough](https://www.loom.com/share/7cf2a7d524784c839dfd1216555d1027?sid=5b2e3079-2b8a-4f4a-a4f2-8b88ffd9ebe2)

You can't complete a step until all run step build requirements have their minimum quantities and reference designators satisfied. The inventory list includes any available substitutes. To require mBOM parts to be assigned to steps before a procedure can be released, see [Enforce mBOM parts assigned to steps](/administration/production-settings/enforce-mbom-parts-assigned-to-steps).

## Permissions

To create, update, and delete installation requirements on procedures, grant yourself a role with `StepPartRequirement` permissions.

## How ION handles mBOM changes

Your mBOM can change after you release a procedure. For more on changing build requirements, see [Editing build requirements](/build-hardware/bills-of-materials/editing-build-requirements). The following changes don't require a procedure revision:

* **Removing a part** removes the associated installation requirements from associated procedures, so you can remove parts without revising the procedure.
* **Updating the part number on an existing mBOM requirement** updates all installation requirements in associated procedures automatically with the new part number.
* **Updating the name of a reference designator** updates all installation requirements in associated procedures automatically with the new reference designator where it is called out.
* **Adding substitutes** shows the new substitutes on all installation requirements.

The following changes require a procedure revision:

* **Adding a part** has no effect on associated procedures.
* **Updating the quantity of an mBOM requirement**: you can't reduce the quantity below what is assigned to a procedure. To reduce it, create a new procedure, then up-version the mBOM. You can increase the quantity with no effect on associated procedures.

<Note>
  In every case, there is no effect on existing runs and aBOMs at the time of the
  change.
</Note>

## Best practices

* **Installs don't propagate across batches.** Each batch ensures traceability for every run within it. Because you select the specific inventory you install, ION restricts installs to individual runs to keep inventory tracking accurate.
* **Assign installation requirements on standard steps only when a procedure calls them out.** Each procedure is unique to a set of parts and mBOM versions, so you can assign installation requirements on a procedure that calls out a released standard step. You can't add installation requirements on a standard step that is in draft or any other state.
* **Train technicians on installation requirements.** The installation requirements on a step are a minimum. If technicians install through the aBOM manually, ION asks them to install again to meet the minimum required to complete the step. If you aren't confident your procedures will stay stable, set the minimum installation quantity to zero and list the needed quantity in the step content, so you can make changes as needed.
* **Build requirements on run steps can't be redlined.** To allow run steps to complete without required installs, enable `Allow run steps to complete without required install` in your [run enforcement settings](/administration/production-settings/configure-run-enforcement).

### As-required, continuous-usage, and consumable parts

Associate a build requirement to a step only when it will always be installed.

When a part is always used during a step but the exact quantity varies, add it as a **0-quantity build requirement** on that step. This prompts technicians to record the actual usage without forcing a fixed amount. For example, if you always apply epoxy but the amount differs each time, add epoxy to the mBOM and associate it to the step with a 0 quantity.

When a part is not always installed, don't attach it to a step. Instead, you can:

* Keep it in the mBOM without a step association.
* Add the build requirement to the aBOM during the run when needed.

For example, if a shim is only occasionally required to level a plate, leave it unassociated in the mBOM and add it to the aBOM only on runs where it is required.

If a run is blocked because a required install was assigned incorrectly, you can temporarily allow steps to complete without it:

1. Have an admin enable **Allow run steps to complete without required install** in the [run enforcement settings](/administration/production-settings/configure-run-enforcement).
2. Update your procedure and build-requirement associations following the best practices in this section to prevent future disruptions.
