Add the initial diagnostics/linter integration path for common languages without relying on VS Code extension runtime execution.
Scope:
- deterministic diagnostics model
- non-fatal missing linter handling
- project-local tool/config detection
- initial integrations through existing LinterBridge/service boundaries
- no auto-install of external tools
- no hidden command execution from extension metadata
Initial targets:
- Python via ruff when available
- JSON parser/schema validation path
- shellcheck/eslint/cargo checks only when explicitly available and configured
Done when:
- diagnostics can represent file, line, column, severity, source, and message
- missing tools do not crash ECLI
- tests cover diagnostic parsing and missing-tool behavior
Add the initial diagnostics/linter integration path for common languages without relying on VS Code extension runtime execution.
Scope:
Initial targets:
Done when: