# Reviews and Checkpoints

Two ways to keep an eye on a run before it spends more. A **review checkpoint** holds the run before a step until you approve it, so you can check and edit what came before. An **automatic review** has a reviewer model check each finished item (the article, every image, the narration, the thumbnail, every short) and flag it, or make it again, when it fails.

**Where to find it:** Play → **Reviews** row → **Change**, which opens the **Review** side panel. **Review the whole setup** in the right rail and `Ctrl+Enter` open the same panel. After the run starts: the project page → **Checkpoints**, and Edit project → **Reviews**.

## The Review side panel

The panel holds, from top to bottom:

1. Any setup errors. Press one to jump to the field.
2. **Review checkpoints**.
3. **Automatic reviews**.
4. The whole setup in words, with **Read the resolved prompt** (or **Read the supplied article and resolved prompts**), which shows each prompt exactly as it will be sent.

The estimate and the Play key stay in the right rail. Opening the panel also asks the server to check the setup, since it knows rules the browser cannot see. **Refresh review** in the right rail does the same and recalculates the estimate now, instead of waiting for you to pause typing. Use it after changing a prompt in the Library.

The Reviews row summary says what is set, for example `1 checkpoint · 2 automatic reviews`, or `No checkpoints · no automatic reviews`.

## Review checkpoints

A checkpoint holds the run before a step so you can check and edit what came before it. Steps that do not depend on it carry on. You approve each checkpoint on the project page to continue.

| Checkpoint | Holds | Available when |
| --- | --- | --- |
| **Before Audio** | The narration and what depends on it | Narration Source is **Generate** |
| **Before Images** | The images and what depends on them | Images Source is **Generate** |
| **Before Video / export** | The render and the exports | The video is on, or narration is on |

A step must be generated to have a checkpoint. A greyed checkbox says why: "Choose Generate for Images to add this checkpoint", or "Enable Video or Audio to review before export." A ticked checkpoint whose step you later turn off says "This step is unavailable. Remove its checkpoint or enable the step."

Default: no checkpoints.

### Add a checkpoint on Play

1. Open the **Reviews** row (or press **Review the whole setup**).
2. Under **Review checkpoints**, tick **Before Audio**, **Before Images** or **Before Video / export**.
3. Press **Refresh review** to see, per video, which steps each checkpoint also holds ("Run 1 · Before Images", "Also holds: Video / export.").
4. Start the run.

Starting the run does not approve the checkpoints. The run stops at each one until you approve it on the project page.

### Continue a run held at a checkpoint

When the run reaches a checkpoint, the held step waits and the project's next action says so.

1. Open the project. The right rail's next action names what runs after approval, for example **Approve and make the images**, **Approve and record the narration** or **Approve and render the video**.
2. Check and edit what came before: read the article, listen to the narration, look at the images. See [Editing a Project](Editing-a-Project).
3. Press the next action, or open **Checkpoints** in the project's side list (it shows how many are held) and press **Approve Images checkpoint** (or the stage you are at).

The checkpoint then says "Checkpoint approved. Work will run when its dependencies are ready." Each checkpoint card shows its state:

| Message | Meaning |
| --- | --- |
| "Images is held for your review. Its dependent work waits for this approval; independent work can continue." | Waiting for you. The project reads **Waiting for your review**. |
| "Inputs changed. Review the current revision before approving." | You edited something the held step uses. Check the new version before approving. |
| "Authorized for this revision. Work can run when dependencies are ready and the project is resumed." | Approved; it runs when it can. |
| "Checkpoint satisfied. Its reviewed work is complete." | Done. |

If the project is paused, the panel says "The project is paused. Continue the run before approving held work." Pausing always applies on top of checkpoints.

A checkpoint is approved once. If it was already approved (by you in another tab, or by an [agent](Agents-MCP)), approving again changes nothing and says so.

### Change checkpoints after the run started

On the project page → **Checkpoints** → **Checkpoint choices**:

1. Tick a step that has not started to add a checkpoint, or untick one to remove it. Work already admitted for an unticked step carries on when ready.
2. Press **Save checkpoints**.

Only generated steps can have one. If the project was edited elsewhere in the meantime, press **Reload checkpoint choices** and make your change again.

## Automatic reviews

A reviewer checks each finished item and saves its verdict and reasons on the project page. The reviewer is a model Slopify asks (each review is a text-model call, counted in usage and in the estimate), or an agent you connected (free; see [The External agent reviewer](#the-external-agent-reviewer)).

| Option | What it does | Default / range |
| --- | --- | --- |
| **Who reviews** | **Model**: Slopify asks the reviewer model below, one paid call per item. **External agent (MCP)**: an agent connected in Settings → Connections → Agents (MCP) answers each review instead, at no API cost. | Model |
| **Reviewer** | Who runs the review model (greyed for **External agent (MCP)**). Picture reviews (images, the thumbnail and shorts) need Claude Code or Codex, which can look at images; other providers review text only. | None |
| **Reviewer model** | The model that judges each item. A stronger model catches more but costs more per review. It can differ from the model that wrote the text. | None |
| **Redos per item** | How many times **Flag and redo** makes a failed item again before it keeps the last one and flags it. Each redo costs the item again plus one more review. | 2; 0 to 5 |

Then, for each stage (**Article**, **Promise check (before narration)**, **Images**, **Narration**, **Thumbnail**, **Shorts**), pick a mode and a prompt:

| Mode | What happens to a failed item |
| --- | --- |
| **Off** (default) | No review. |
| **Flag only** | The item is marked failed, with the reasons, and the run carries on. |
| **Flag and redo** | The item is made again and reviewed again, up to **Redos per item**. After that it is kept and flagged. It never loops. |

The prompt next to each mode is **Built-in** or a **Review** prompt from the Library (see [Prompts](Prompts)). It is greyed while the mode is Off. A stage the run makes nothing for is greyed too; a stage set to review but with nothing to review says "This stage makes nothing to review in this run."

### What each review checks

| Stage | The built-in reviewer checks |
| --- | --- |
| **Article** | The article prompt's rules (length, structure, tone), no invented lore, no repeated sections. The research notes are included. |
| **Promise check (before narration)** | That the opening keeps what the title and thumbnail promise. See [The promise check](#the-promise-check). |
| **Images** | Malformed hands or bodies, stray text or letters, that it matches its brief, and that it matches the establishing image when one is on. |
| **Narration** | Nothing missing or garbled compared with the text: the reviewer reads what the word timing heard and the stretches it could not hear. |
| **Thumbnail** | Readable at phone size, clear subject. |
| **Shorts** | The short's images at phone size: clear subject, no stray text, fits the title. |

### The promise check

One cheap text call before the paid narration. The reviewer reads the video's title, the thumbnail brief (when the thumbnail is drawn from a prompt), the opening as the voice will say it (about the first 30 seconds: 75 words at 150 words a minute) and the whole article.

- **Passes** when the opening starts delivering what the title and thumbnail promise and gives a reason to keep watching.
- **Fails** on a slow preamble, a greeting or channel housekeeping (subscribe, welcome back) before the subject, an opening about something else, or a promise the article never keeps. The reasons name the sentence that should come first.
- **Flag and redo** writes the article again and checks the new one. The narration, the pictures and everything else that reads the article wait for the answer, so nothing paid is made from an opening that failed.
- It needs an article written by a model: with **Article** set to Provide the row is greyed and says why.
- It uses the reviewer model above and adds one text-model call to the estimate. Default: Off.

### Set up automatic reviews

1. Open the **Reviews** row.
2. Pick the **Reviewer** and **Reviewer model**. For image, thumbnail or shorts reviews, pick Claude Code or Codex. With another reviewer, the panel says "Picture reviews need Claude Code or Codex as the reviewer: Slopify can't show pictures to this one." and the run cannot start.
3. Optional: set **Redos per item** (empty means 2).
4. For each stage you want checked, pick **Flag only** or **Flag and redo**, and optionally a Review prompt.
5. Check the estimate: each review adds one text-model call. Redos are not in the estimate; each costs what the item cost, at most the redos allowed.

### The External agent reviewer

With **Who reviews** set to **External agent (MCP)**, no model is called: each review waits for an agent connected to Slopify to answer it (see [Agents (MCP)](Agents-MCP)). Every stage can use it, picture stages included, since the agent is shown the pictures. It adds nothing to the estimate.

- While a review waits, what depends on the item waits, as with any review. If nothing else holds the run, the project reads **Waiting for the agent** (header, Projects, Home's Running now, the calendar). It is not in **Needs you**, sends no "Waiting for you" notice and has no **Continue the run**: it goes on by itself.
- The agent answers **pass** or **fail**. A fail needs at least one reason, at most 10, each up to 500 characters. The answer then follows the stage's mode like a model's verdict: **Flag only** flags it, **Flag and redo** makes it again up to **Redos per item**.
- The first answer saved wins. A second answer to the same review is refused ("This review was already answered").
- **No answer in 2 hours:** the review passes by itself. Its badge reads **Passed without review**, the work goes on and a notification says "Passed without review: no agent answered in 2 h". The deadline is saved, so it survives a restart. A paused project's review still passes at its deadline, but nothing runs until you continue the run.
- **Canceled runs:** canceling stops the run's waiting reviews, and they never pass. Taking the step up again asks again, with a fresh two hours.

### Reviews on the project page

Beside the article (with the promise check's verdict under the article review's), the narration, the thumbnail and each short, and on each image tile, the verdict shows as **Review passed**, **Flagged by review**, **Waiting to be made again**, **Being made again**, **Redone after review** or **Accepted by you**, with the reasons. With the External agent reviewer, or when an agent acted on it, it reads **Passed by agent**, **Flagged by agent**, **Redone after agent review**, **Accepted by agent**, **Made again by agent**, or **Passed without review** when no agent answered in time. For a failed item nobody has acted on:

- **Overrule** accepts it as it is.
- **Redo** makes it again (a new version of the project, then the item and what depends on it are rebuilt), and it is reviewed again.

A flagged item takes one decision. If it was already decided (by an agent, for example), pressing **Overrule** or **Redo** changes nothing and says how it was decided.

Both buttons wait while other work on the project is running, with one exception: while a **Flag and redo** review's automatic redo is still waiting to start (**Waiting to be made again**), **Overrule** stays available and calls the redo off. The item is accepted as it is, the badge turns to **Accepted by you**, and the work waiting on it goes ahead. Once the redo has started, Overrule is greyed: "Slopify is already making this item again; wait for the new version".

When an automatic review flags an item and keeps it (its redos ran out, or the stage is on **Flag only**), Slopify sends a **Review needs a decision** notification (see [Notifications](Notifications)), and the project shows in the Calendar's **Needs you** with **Open to review** (see [Calendar](Calendar#needs-you)). When an agent's review flagged it, the notification ends in **· by agent**. Everything that uses a reviewed item waits for its review, in the same way a checkpoint holds work. Reviewing the same output with the same reviewer and prompt again reuses the earlier verdict.

## Checkpoints or reviews?

| You want to | Use |
| --- | --- |
| Read the article yourself before paying for the narration | **Before Audio** checkpoint |
| Look at the images before the render | **Before Images** is too early; use **Before Video / export** |
| Catch broken hands or stray text without watching every run | **Images** review, **Flag and redo** |
| Run unattended on a schedule and fix things later | Reviews on **Flag only**, no checkpoints |
| Have reviews done without paying a reviewer model | **External agent (MCP)** with an hourly agent routine; see [Agents (MCP)](Agents-MCP) |

## Tips

- Checkpoints and reviews are saved with a template, so every video started from it gets them. See [Templates](Templates).
- Keep **Redos per item** low for images: five redos is already six paid images for one slot.
- You can change reviews later in Edit project → **Reviews**. See [Editing a Project](Editing-a-Project).

## Related pages

- [Play Overview](Play-Overview)
- [Project Page](Project-Page)
- [Editing a Project](Editing-a-Project)
- [Recovery and Retries](Recovery-and-Retries)
- [Prompts](Prompts)
- [AI CLIs](AI-CLIs)
- [Agents (MCP)](Agents-MCP)
- [Costs and Run Cost](Costs-and-Run-Cost)
