> For AI agents: the complete documentation index is available at https://mfeflow.github.io/mfeflow/llms.txt, the full documentation bundle is available at https://mfeflow.github.io/mfeflow/llms-full.txt.

# Error codes

Every error the CLI prints has a code like MFEFLOW_E102, a cause, a fix and a link to a page. This page lists them all. The first digit is the area, and it sets the exit code. Messages that start with MFE\_ come from the browser runtime. Those are covered in [Troubleshooting](https://mfeflow.github.io/mfeflow/guide/troubleshooting.md).

## Project and config (E1xx, exit code 3)

| Code                                                     | Meaning                                                                            |
| -------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| [E101](https://mfeflow.github.io/mfeflow/errors/E101.md) | A shared singleton is missing from the shared list                                 |
| [E102](https://mfeflow.github.io/mfeflow/errors/E102.md) | No mfeflow\.json found                                                             |
| [E103](https://mfeflow.github.io/mfeflow/errors/E103.md) | mfeflow\.json is not valid JSON                                                    |
| [E104](https://mfeflow.github.io/mfeflow/errors/E104.md) | mfeflow\.json does not match its schema                                            |
| [E105](https://mfeflow.github.io/mfeflow/errors/E105.md) | A path points outside the project                                                  |
| [E106](https://mfeflow.github.io/mfeflow/errors/E106.md) | A file could not be read or written                                                |
| [E107](https://mfeflow.github.io/mfeflow/errors/E107.md) | A command-line option is missing or not valid                                      |
| [E108](https://mfeflow.github.io/mfeflow/errors/E108.md) | The target folder is not empty                                                     |
| [E109](https://mfeflow.github.io/mfeflow/errors/E109.md) | The preset could not be used                                                       |
| [E110](https://mfeflow.github.io/mfeflow/errors/E110.md) | --local does not point at a built mfeflow checkout                                 |
| [E111](https://mfeflow.github.io/mfeflow/errors/E111.md) | A workspace package has no version                                                 |
| [E112](https://mfeflow.github.io/mfeflow/errors/E112.md) | An app in mfeflow\.json is not on disk                                             |
| [E113](https://mfeflow.github.io/mfeflow/errors/E113.md) | mfeflow\.app.json is missing or invalid                                            |
| [E114](https://mfeflow.github.io/mfeflow/errors/E114.md) | A registry entry is missing or invalid                                             |
| [E115](https://mfeflow.github.io/mfeflow/errors/E115.md) | Two apps use the same port                                                         |
| [E116](https://mfeflow.github.io/mfeflow/errors/E116.md) | Two remotes claim routes that overlap, or an app file disagrees with mfeflow\.json |
| [E117](https://mfeflow.github.io/mfeflow/errors/E117.md) | A copied file changed since mfeflow wrote it                                       |
| [E118](https://mfeflow.github.io/mfeflow/errors/E118.md) | .env.example does not match the keys in env.ts                                     |
| [E119](https://mfeflow.github.io/mfeflow/errors/E119.md) | A runtime-config file does not match the runtime-config schema                     |
| [E120](https://mfeflow.github.io/mfeflow/errors/E120.md) | A PUBLIC\_ variable would be baked into the bundle                                 |
| [E121](https://mfeflow.github.io/mfeflow/errors/E121.md) | A server env key is not listed in turbo.json                                       |
| [E122](https://mfeflow.github.io/mfeflow/errors/E122.md) | An app has both mfeflow\.app.json and the old mfe.json                             |
| [E123](https://mfeflow.github.io/mfeflow/errors/E123.md) | This folder already has an mfeflow\.json                                           |
| [E124](https://mfeflow.github.io/mfeflow/errors/E124.md) | adopt found nothing it can set up                                                  |

## Features (E2xx, exit code 4)

| Code                                                     | Meaning                                                             |
| -------------------------------------------------------- | ------------------------------------------------------------------- |
| [E201](https://mfeflow.github.io/mfeflow/errors/E201.md) | Feature not found                                                   |
| [E202](https://mfeflow.github.io/mfeflow/errors/E202.md) | feature.json is invalid                                             |
| [E203](https://mfeflow.github.io/mfeflow/errors/E203.md) | A third-party feature uses something third-party features may not   |
| [E204](https://mfeflow.github.io/mfeflow/errors/E204.md) | Unknown transform op                                                |
| [E205](https://mfeflow.github.io/mfeflow/errors/E205.md) | Feature conflicts with an installed feature                         |
| [E206](https://mfeflow.github.io/mfeflow/errors/E206.md) | Feature needs another feature first                                 |
| [E207](https://mfeflow.github.io/mfeflow/errors/E207.md) | The feature wants to create or change something that already exists |
| [E208](https://mfeflow.github.io/mfeflow/errors/E208.md) | A file the feature edits is missing or not shaped as expected       |
| [E209](https://mfeflow.github.io/mfeflow/errors/E209.md) | A template could not be rendered                                    |
| [E210](https://mfeflow.github.io/mfeflow/errors/E210.md) | Registry namespace is not configured                                |
| [E211](https://mfeflow.github.io/mfeflow/errors/E211.md) | Files changed since the plan was made                               |
| [E212](https://mfeflow.github.io/mfeflow/errors/E212.md) | Applying the plan failed                                            |
| [E213](https://mfeflow.github.io/mfeflow/errors/E213.md) | Installing dependencies failed                                      |
| [E214](https://mfeflow.github.io/mfeflow/errors/E214.md) | A feature option is invalid                                         |
| [E215](https://mfeflow.github.io/mfeflow/errors/E215.md) | The app name cannot be used                                         |

## Build and runtime (E3xx, exit code 5)

| Code                                                     | Meaning                                       |
| -------------------------------------------------------- | --------------------------------------------- |
| [E301](https://mfeflow.github.io/mfeflow/errors/E301.md) | A singleton resolves to more than one version |
| [E302](https://mfeflow.github.io/mfeflow/errors/E302.md) | A remote is not compatible with its shell     |
| [E303](https://mfeflow.github.io/mfeflow/errors/E303.md) | A runtime plugin imports a shared module      |
| [E304](https://mfeflow.github.io/mfeflow/errors/E304.md) | A bundle is over its budget                   |
| [E305](https://mfeflow.github.io/mfeflow/errors/E305.md) | There is no build output to measure           |
| [E306](https://mfeflow.github.io/mfeflow/errors/E306.md) | A dev server could not start                  |
| [E307](https://mfeflow.github.io/mfeflow/errors/E307.md) | The shell to check against could not be read  |

## Registry (E4xx, exit code 6)

| Code                                                     | Meaning                                               |
| -------------------------------------------------------- | ----------------------------------------------------- |
| [E401](https://mfeflow.github.io/mfeflow/errors/E401.md) | Could not fetch from the registry                     |
| [E402](https://mfeflow.github.io/mfeflow/errors/E402.md) | The registry returned something that is not a feature |
| [E403](https://mfeflow.github.io/mfeflow/errors/E403.md) | The registry's index.json is not valid                |
| [E404](https://mfeflow.github.io/mfeflow/errors/E404.md) | A feature in the registry folder cannot be published  |

E107 and E215 are command-line mistakes and exit with code 2. The E5xx range belongs to `deploy`, `promote`, `rollback` and `status` and exits with code 7:

| Code                                                     | Meaning                                                          |
| -------------------------------------------------------- | ---------------------------------------------------------------- |
| [E501](https://mfeflow.github.io/mfeflow/errors/E501.md) | A deploy failed the schema gate                                  |
| [E502](https://mfeflow.github.io/mfeflow/errors/E502.md) | A route of this remote overlaps a route of another remote        |
| [E503](https://mfeflow.github.io/mfeflow/errors/E503.md) | The remote's shared ranges do not fit the shell that is deployed |
| [E504](https://mfeflow.github.io/mfeflow/errors/E504.md) | The remote is over its first-load JS budget                      |
| [E505](https://mfeflow.github.io/mfeflow/errors/E505.md) | A rollout was asked for, and a static host cannot split traffic  |
| [E506](https://mfeflow.github.io/mfeflow/errors/E506.md) | The registry host is not set up or cannot be used                |
| [E507](https://mfeflow.github.io/mfeflow/errors/E507.md) | There is no build output to deploy                               |
| [E508](https://mfeflow.github.io/mfeflow/errors/E508.md) | There is no such version to move to                              |
| [E509](https://mfeflow.github.io/mfeflow/errors/E509.md) | Files of the target version are missing on the host              |
| [E510](https://mfeflow.github.io/mfeflow/errors/E510.md) | Another deploy changed the index at the same time                |
| [E511](https://mfeflow.github.io/mfeflow/errors/E511.md) | This version is already published with different content         |
| [E512](https://mfeflow.github.io/mfeflow/errors/E512.md) | Local registry files and the host disagree                       |

## Upgrade (E6xx, exit code 8)

| Code                                                     | Meaning                                               |
| -------------------------------------------------------- | ----------------------------------------------------- |
| [E601](https://mfeflow.github.io/mfeflow/errors/E601.md) | Cannot tell which version of mfeflow made the project |
| [E602](https://mfeflow.github.io/mfeflow/errors/E602.md) | The project is newer than the version you upgrade to  |
| [E603](https://mfeflow.github.io/mfeflow/errors/E603.md) | A feature migration could not be loaded or failed     |
| [E604](https://mfeflow.github.io/mfeflow/errors/E604.md) | Files you changed need a decision                     |
