unusedMessageIds
Reports message IDs defined in the messages object that are never used in recognized report calls.
✅ This rule is included in the flint logical presets.
Lint rules often declare a messages object up front and then reference those message IDs from report calls later on.
Keeping unused message IDs around makes rules harder to scan and maintain, especially when the message object grows over time.
This rule tracks message usage from context.report() calls and Flint’s built-in reportSourceCode() helper for source-mapped language rules.
Examples
Section titled “Examples”ruleCreator.createRule(_, { messages: { usedMessage: { primary: "This message is used.", secondary: [""], suggestions: [""], }, unusedMessage: { primary: "This message is never used.", secondary: [""], suggestions: [""], }, }, setup(context: RuleContext) { context.report({ message: "usedMessage", }); },});ruleCreator.createRule(_, { messages: { usedMessage: { primary: "This message is used.", secondary: [""], suggestions: [""], }, }, setup(context: RuleContext) { context.report({ message: "usedMessage", }); },});import { reportSourceCode } from "@flint.fyi/volar-language";
ruleCreator.createRule(_, { messages: { missingKey: { primary: "This message is used from source code.", secondary: [""], suggestions: [""], }, }, setup(context: RuleContext) { reportSourceCode(context, { message: "missingKey", range, }); },});Options
Section titled “Options”This rule is not configurable.
Equivalents in Other Linters
Section titled “Equivalents in Other Linters”
Made with ❤️🔥 around the world by
the Flint team and contributors.