---
title: "MGS3043: a job write path that claims too much"
description: Fires when a job write path spans more projects or files than the workspace's breadth thresholds allow, or opens with a leading `**`. The record is refused unless it narrows the path or waives the problem with a reason.
tags: [MGS3043, jobs, leases, write paths, fork, apply, agents, waivers, validation]
---

# MGS3043: a job write path that claims too much

`magus job fork`, `magus job apply` and `magus\job.put` refused a job record
because one of its write paths claims more of the workspace than its breadth
thresholds allow:

```text
[MGS3043] write_paths[0] "**/*.go" reaches 4 projects and 812 files: name the
  files the job edits, such as internal/job/*.go, or waive it
```

Nothing was written to the job store.

## What fires it

- A write path whose matches span more projects than the workspace allows.
- A write path matching more files than the workspace allows.
- A write path that opens with `**`, which reaches every project.

The thresholds are keys in `magus.yaml`.

## Why

A broad write path overlaps every job that edits anything it matches, so the
plan serializes work that never touches the same file, and the guard lets the
job write files its brief never named.

## What to do

Narrow the path to the files the job edits. `magus refs <symbol> --occurrences`
lists the files a change to a symbol touches.

When the breadth is the job, such as a rename across the tree, waive the
problem in the record with the path as its subject:

```json
"waivers": [
  { "code": "MGS3043", "subject": "**/*.go", "reason": "renames the type everywhere" }
]
```

## See also

- [MGS3018](MGS3018.md): a directory as a write path.
- [Leases](../../../guides/integrations/agents/leases.md): write paths and waivers.
