Effect-native diagnostics guide you toward the Effect ecosystem’s purpose-built APIs for common operations — HTTP requests, JSON parsing, schema validation, and more. All rules in this category are off by default (exceptDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Effect-TS/tsgo/llms.txt
Use this file to discover all available pages before exploring further.
preferSchemaOverJson which is a suggestion), so you opt in to the ones that fit your project’s strictness requirements.
All rules in this category are ➖ off by default or 💡 suggestion level. Enable them via
diagnosticSeverity in your plugin config.extendsNativeError
Severity: ➖ off by default · V3/V4: ✓ / ✓
Warns when a class directly extends the native JavaScript Error class. Native Error subclasses are untagged and indistinguishable at the type level in Effect’s failure channel. Using Data.TaggedError instead gives your errors a _tag discriminant that enables precise Effect.catchTag handling.
globalFetch
Severity: ➖ off by default · V3/V4: ✓ / ✓
Warns when the global fetch function is used instead of the Effect HTTP client. The global fetch is a Promise-based API that throws on network errors and returns responses that require manual error checking. The Effect HTTP client integrates errors into the typed error channel.
instanceOfSchema
Severity: ➖ off by default · Fix: 🔧 · V3/V4: ✓ / ✓
Suggests using Schema.is instead of the instanceof operator for Effect Schema types. instanceof does not account for Schema’s structural validation and decoded representations, while Schema.is performs a proper type-guard check that respects the schema’s constraints.
instanceof check with Schema.is(...) automatically.
To enable:
nodeBuiltinImport
Severity: ➖ off by default · V3/V4: ✓ / ✓
Warns when you import Node.js built-in modules (like fs, path, crypto) that have Effect-native counterparts in @effect/platform. The Effect platform modules provide the same functionality with typed errors and Effect integration.
preferSchemaOverJson
Severity: 💡 suggestion · V3/V4: ✓ / ✓
Suggests using Effect Schema for JSON operations instead of JSON.parse and JSON.stringify. JSON.parse throws on invalid input and returns any; Effect Schema provides type-safe parsing with proper error handling through the effect error channel.