---
title: "MGS1040: magus.yaml has a key this magus does not know"
description: Fires when magus.yaml, or any config tier, carries a key the running magus does not recognize. The load stops and names the file, the line and the nearest known key. Until v0.5.0 this was a warning.
tags: [MGS1040, magus.yaml, config, upgrade, unknown key, typo]
---

# MGS1040: magus.yaml has a key this magus does not know

A config file carries a key the running magus does not recognize, and every command
stops before it loads the workspace:

```text
[MGS1040] magus.yaml:1: unknown key "concurrencyy"; did you mean "concurrency"?
  see: https://eli.gladman.cc/magus/reference/codes/magusfile/MGS1040/
```

Each unknown key gets its own line, at every level of the file, not only the top.

## Why

Until v0.5.0 an unknown key was a warning (`config: unknown or unexpected keys in config
file`) and the load carried on without it. The value you wrote was dropped, and a
workspace that looked configured ran on the defaults. A value magus will not honor must
never look like one it applied, so the load now fails instead. A file that loaded under
v0.4.x with that warning fails under v0.5.0 with this code.

## What to do

Read the tail of the message. It takes one of two forms, with opposite fixes:

- **`did you mean "..."?`** The key is a near miss of one magus knows. Rename it:

  ```yaml
  # before
  concurrencyy: 4
  # after
  concurrency: 4
  ```

- **`this magus does not know that key`** Nothing known is close. Either the key belongs
  to a newer magus than the one running, so upgrade the binary (the message names the
  command, and the workspace's `required_version` if it has one), or the key is not a
  magus setting at all and the fix is to delete it.

`magus doctor` reports the same keys under its `config-file` check without running
anything else. [docs/reference/config.md](../../config.md) lists every key magus reads.

## See also

- [MGS1021](MGS1021.md): the workspace's `required_version` floor is newer than this magus.
- [MGS1038](MGS1038.md): the same stop for a removed `magus.project` option in a magusfile.
