MGS3045: a ci gate over the write paths nothing runs
magus job fork, magus job apply and magus\job.put refused a job record
because ci runs a target over its write paths that the job never runs:
[MGS3045] lint . reads changes/**/*.md, and neither the check nor a goal runs it:
add the goal {"id":"lint","kind":"check","check":{"target":"lint","project":"."}},
or waive it if the root runs it
Nothing was written to the job store.
Why
A job graded only on its check can pass while the gate that will judge its change fails. The failure then surfaces after integration, where nobody holds the files any more.
What to do
- Add the goal the problem prints, so the worker runs the target.
- If the root runs the gate once after integrating every job, waive the
problem with
<target> <project>as its subject:
"waivers": [
{ "code": "MGS3045", "subject": "lint .", "reason": "the root runs it" }
]
magus describe job <id> lists the gates not run and the goals to add.