MGS3044: a regenerated output outside the write paths
magus job fork, magus job apply and magus\job.put refused a job record
because a target regenerates an output from sources inside its write paths, and
the output itself is outside them:
[MGS3044] internal/job/gen/job.schema.json is regenerated by .:job-generate from
types/job.go, and no write path covers it: add it to write_paths, or waive it
if the root regenerates it
Nothing was written to the job store.
Why
A generated output changes with its sources. A job that edits the sources and cannot write the output either leaves it stale or hand-edits around the guard, and either way the next gate fails on a diff nobody owns.
What to do
- If the job regenerates the output, add it to the write paths.
- If the root regenerates it after integration, waive the problem with the output as its subject:
"waivers": [
{ "code": "MGS3044", "subject": "internal/job/gen/job.schema.json", "reason": "the root regenerates it" }
]
magus describe job <id> lists every output regenerated outside the write paths.