| name | add-diagnostic |
| description | Add a new diagnostic code following the defineDiagnostics() conventions from nostics |
| user-invocable | true |
| allowed-tools | Read Grep Glob Edit Write |
| license | MIT |
Add a New Diagnostic Code
- Find the catalog. Grep for
defineDiagnostics to locate the codes object the new entry belongs in. With several catalogs, pick by area.
- Pick the code.
PREFIX_XNNNN: PREFIX is the project name uppercased (NUXT, I18N); X is the area letter (B build, R runtime, C config, D deprecation); NNNN is the next free number. Read existing codes to choose. Never rename or reuse a published code.
- Add the entry:
LIB_R0001: {
why: (p: { hook: string }) => `${p.hook}() must run at the top of setup().`,
fix: 'Move the call into setup() or a composable it calls.',
docs: 'https://example.com/custom',
},
why is the only required field. Params from why and fix are intersected and required at the call site.
- Runtime fields (
cause, sources) are passed at the call site, never in the definition.
- Call it:
diagnostics.LIB_R0001({ hook }) to report, throw diagnostics.LIB_R0001({ hook, cause: err }) to raise. Both run the reporters.
Full API and reporter/formatter/plugin details: the nostics skill.