Diagnostics Rules

June 12, 2026 ยท View on GitHub

Diagnostics use stable rule IDs in the code field. Rule IDs can be disabled or have severity overridden from .thriftrc.json and VS Code settings.

Configuration

.thriftrc.json:

{
  "diagnostics": {
    "rules": {
      "field.duplicateId": "warning",
      "service.oneway.returnNotVoid": "off"
    }
  }
}

VS Code settings.json:

{
  "thrift.diagnostics.rules": {
    "field.duplicateId": {
      "enabled": true,
      "severity": "warning"
    },
    "service.oneway.returnNotVoid": false
  }
}

Supported severity values are error, warning, information, and hint. Use false or off to disable a rule.

Rule Catalog

Rule IDDefaultCategoryQuick Fix
type.unknownerrortypeyes
typedef.unknownBaseerrortypeyes
service.returnType.unknownerrorserviceyes
service.throws.unknownerrorserviceyes
service.extends.unknownerrorserviceno
service.extends.notServiceerrorserviceno
service.oneway.returnNotVoiderrorserviceyes
service.oneway.hasThrowserrorserviceno
service.throws.notExceptionerrorserviceno
field.duplicateIderrorfieldyes
value.typeMismatchwarningvalueno
enum.valueNotIntegererrorenumno
enum.negativeValueerrorenumno
syntax.unmatchedClosererrorsyntaxno
syntax.mismatchederrorsyntaxno
syntax.unclosederrorsyntaxno