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

# Create and manage Maintenance Plans

> Preview a preventive schedule, manage future intent, and backfill selected missed work.

Maintenance Plan actions are available to admins. Prepare an active Work Order Template and the assets the plan will maintain before you begin.

## Create a plan

1. Open **Maintenance Plans**.
2. Select **New Maintenance Plan**.
3. Enter the **Plan name**.
4. Choose one **Work Order Template**.
5. Add between 1 and 100 **Assets**.
6. Configure **Recurrence**: Daily, Weekly, Monthly, or Yearly.
7. Set the **First nominal date and time** and **Plan timezone**. Use an IANA timezone such as `America/Chicago`.
8. Set a positive **Planning horizon** no longer than one year.
9. Enter a **Reason** for creating the plan.
10. Select **Preview schedule**.
11. Review **Projected work orders**, **Horizon ends**, and the previewed occurrences for each asset.
12. Select **Create Plan**.

The preview is part of the save contract. Changing the template, assets, recurrence, anchor, timezone, or horizon requires a fresh preview.

## Edit future intent

1. Open the plan and select **Edit**.
2. Change the plan definition.
3. Enter a Reason.
4. Select **Preview schedule**.
5. Review **Edit impact** for Future rows superseded, Same schedule, Timing changes, New occurrences, and Removed occurrences.
6. Select **Save Plan**.

Saving writes a new version and supersedes the current future Planned rows. Existing generated work orders and history keep their original snapshots. This boundary lets you adjust the future cadence without rewriting completed or in-flight records.

Use **Duplicate** to create a separate plan from the exact current definition. In the duplicate form, only the new name and reason can change; edit the new plan after creation when it needs a different scope or cadence.

## Pause, resume, archive, and restore

Every lifecycle action requires a Reason.

* **Pause** stops future generation and keeps existing generated work and history.
* **Resume** reactivates the plan at the next future occurrence after the current time and its last planned due date. It does not replay the gap.
* **Archive** removes the plan from the active catalog and moves its preserved history to Maintenance Plan recovery in Settings.
* **Restore** returns an archived plan to Active at its next future occurrence, after Canary validates its stored template, assets, and procedure dependencies.

Disabling Maintenance Plans, or disabling Procedures for a plan whose snapshot includes one, closes the generation boundary for affected plans. Recovery remains available to admins as read-only history. Re-enabling resumes eligible plans from the next future occurrence.

## Backfill missed work

Backfill is the explicit path for creating selected historical occurrences after a pause, archive, module boundary, or operational gap.

1. Open an Active or Paused plan and select **Backfill missed work**.
2. Choose **From** and **To** dates. Canary interprets them in the Plan timezone.
3. Select **Preview backfill**.
4. Review the asset, nominal date, resolved time, and plan version for each candidate.
5. Select only the occurrences you intend to create.
6. Enter a Reason.
7. Select **Create selected work**.

The lookback can reach up to 90 days. The window must fit within the plan's current horizon, and one confirmation can add at most 500 occurrences. Canary excludes occurrences that already have a live record and requires a new preview if the plan or candidate set changes before confirmation.

An archived plan must be restored before backfill.

## Skip one planned occurrence

In **Occurrence history**, choose an occurrence that is still Planned and select **Skip**. Add a Reason and confirm **Skip Occurrence**. The occurrence remains in history as Skipped and never produces a work order.

## Review history and health

The plan detail shows **Next due**, **Current version**, **Generation health**, **Last run**, and its assets. Use:

* **Occurrence history** for the state and generated work order of each asset occurrence.
* **Version history** for the definition snapshot behind each period of future intent.
