Providers
Language providers turn a file into sized chunks with a symbol and a kind.
They are deterministic and local.
The provider contract is in docs/50-development/language-depth.md.
Supported families
The index reports the provider families in meta.json:
- Python, JavaScript, TypeScript, Go, Rust, C and C++, Java, Ruby, PHP;
- YAML, JSON, TOML, INI, SQL, shell, systemd, Terraform, Puppet;
- Markdown, HTML, CSS;
- a generic fallback.
Check
./auwai doctor
./auwai doctor --family rust
A provider failure is reported and the file falls back to the generic provider.
The fallback is visible in meta.json.
Adding a provider
A provider is a new module plus a fixture. It does not change the index core. The language-depth page describes the contract and the depth measurement.
Current limits
The provider does not produce a semantic graph. It produces chunk boundaries, symbols, kinds, and a body digest. The partition kind is derived from the path, not the provider.