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

# Workflow lifecycle

> Workflow modes, statuses, and how they change over time.

## Modes

Each workflow runs in one of two modes, chosen at creation time:

**Deterministic** - Lark's AI writes a test script based on your description. The script runs the same steps on each invocation. If your product changes, Lark repairs the script to match. Best for repeatable regression tests.

**AI-driven** - Lark's AI performs the test from scratch on each run, deciding how to reach the goal you described. No stored script. Best for exploratory tests and complex flows where the exact path may vary.

## Workflow statuses

A workflow moves through these statuses as Lark generates, runs, and maintains it:

| Status                  | Meaning                                                                                                   |
| ----------------------- | --------------------------------------------------------------------------------------------------------- |
| `pending_generation`    | A deterministic workflow has been created and is queued for script generation.                            |
| `generating`            | Lark is building the test script.                                                                         |
| `generation_successful` | Script generation finished. The workflow is ready to run.                                                 |
| `generation_failed`     | Lark could not produce a working script. Edit the description and retry.                                  |
| `active`                | The workflow is ready to run on invocation or schedule.                                                   |
| `pending_summary`       | A deterministic execution failed and is queued for [summarization](#summarization).                       |
| `summarizing`           | Lark is classifying the failure to decide whether to repair.                                              |
| `needs_repair`          | A deterministic workflow's script broke and needs a fix. See [repairs](/repairs-and-regeneration#repair). |
| `repairing`             | Lark is fixing the test script.                                                                           |
| `repair_successful`     | The repair finished. The workflow is ready to run again.                                                  |
| `repair_failed`         | The repair did not succeed. This likely indicates a bug in your product or environment.                   |
| `archived`              | The workflow is hidden and cannot run. Unarchive it to restore it.                                        |

## Summarization

When a deterministic workflow's execution fails, Lark runs a summarization step before deciding what to do next. Summarization classifies the failure as one of:

| Category     | Meaning                                                                                      | Next step                                                              |
| ------------ | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| `test_issue` | The script is out of date with your product. Renamed elements, changed flows, missing steps. | Workflow moves to `needs_repair`. Auto-repair fires if enabled.        |
| `app_issue`  | The script ran fine and surfaced a real bug in your product.                                 | Workflow stays `active`. No repair runs. Slack and Linear alerts fire. |

This split keeps repairs targeted (only when the script is the problem) and stops alert noise from script drift. AI-driven workflows skip summarization. They have no stored script to be at fault.
