Platform  /  Supported languages

Supported languages

The panel reasons over your diff and the code around it rather than a language-specific parser, so any text file can be reviewed. Depth of context is what varies.

Full repository context

In these ecosystems Dicast resolves imports, walks call sites, and pulls in type definitions and covering tests when building context for a hearing:

LanguageContext source
TypeScript, JavaScriptModule graph, tsconfig paths, package boundaries
PythonImport graph, type hints, virtualenv metadata
GoModule graph, interface implementations
Java, KotlinBuild graph via Maven or Gradle
RubyLoad path, Bundler groups
RustCrate graph, trait implementations
C#Project references
SwiftPackage and target graph
PHPComposer autoload map

Diff-level review

Everything else is reviewed with the diff and the surrounding file, which is enough for most correctness findings. This covers SQL, shell, Terraform and other HCL, Dockerfiles, Kubernetes manifests, YAML pipelines, C and C++, Elixir, Scala, Dart and Lua.

Infrastructure code

Terraform, Kubernetes manifests and CI pipelines are reviewed by default. They are also where house rules pay off most, because the invariants that matter are organisational rather than syntactic.