Metadata-Version: 2.5
Name: data-engineer-doctor
Version: 0.1.4
Summary: Open-source, evidence-driven diagnosis for modern data engineering failures
Project-URL: Homepage, https://github.com/Adez017/Data-Engineer-Doctor
Project-URL: Documentation, https://Adez017.github.io/Data-Engineer-Doctor/
Project-URL: Repository, https://github.com/Adez017/Data-Engineer-Doctor
Project-URL: Issues, https://github.com/Adez017/Data-Engineer-Doctor/issues
Project-URL: Changelog, https://github.com/Adez017/Data-Engineer-Doctor/blob/main/CHANGELOG.md
Author-email: Aditya Singh Rathore <rathoreadityasingh40@gmail.com>
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: data-engineering,databricks,diagnostics,pyspark,spark,troubleshooting
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Debuggers
Classifier: Topic :: System :: Systems Administration
Requires-Python: >=3.11
Requires-Dist: pydantic<3,>=2.6
Requires-Dist: pyyaml<7,>=6
Requires-Dist: typer<1,>=0.12
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == 'dev'
Requires-Dist: mkdocs-material<10,>=9.5; extra == 'dev'
Requires-Dist: mkdocs<2,>=1.6; extra == 'dev'
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pip-audit>=2.7; extra == 'dev'
Requires-Dist: pytest>=8; extra == 'dev'
Requires-Dist: ruff>=0.6; extra == 'dev'
Requires-Dist: twine>=5; extra == 'dev'
Requires-Dist: types-pyyaml; extra == 'dev'
Description-Content-Type: text/markdown

# Data Engineer Doctor (DEDoc)

![License](https://img.shields.io/github/license/Adez017/Data-Engineer-Doctor)
![CI](https://github.com/Adez017/Data-Engineer-Doctor/actions/workflows/verify.yml/badge.svg)
![Docs](https://github.com/Adez017/Data-Engineer-Doctor/actions/workflows/docs.yml/badge.svg)
![Python](https://img.shields.io/badge/python-3.11%20%7C%203.12-blue)

Evidence-driven diagnosis for data engineering failures.

## What is DEDoc?

DEDoc turns failure logs into deterministic, explainable diagnosis reports with
confidence scoring and concrete next steps.

- **Deterministic mode (default):** no AI, no API keys required.
- **Investigation mode (optional):** bounded, read-only context probing.
- **AI explanation mode (optional):** provider-based narrative explanation.

## Quick start

```bash
pip install -e ".[dev]"
dedoc diagnose path/to/error.log
```

Run it in CI with the reusable GitHub Action (`fail-on: diagnosed` turns a
diagnosed failure into a failed check):

```yaml
- uses: Adez017/Data-Engineer-Doctor@main
  with:
    path: logs/*.log
    fail-on: diagnosed
```

## Documentation

The full documentation site is the source of truth and follows a task-first
layout inspired by clean API docs:

- [Home](docs/index.md)
- [Tutorial: first diagnosis](docs/tutorial/first-diagnosis.md)
- [How-to guides](docs/how-to/installation.md)
- [Use in GitHub Actions](docs/how-to/github-action.md)
- [CLI reference](docs/reference/cli.md)
- [Python SDK reference](docs/reference/sdk.md)
- [Evaluation & benchmarks](docs/reference/evaluation.md)
- [Troubleshooting](docs/how-to/troubleshooting.md)
- [Top 25 user queries map](docs/reference/top-25-queries.md)

## Coverage snapshot

- 39 deterministic diagnoses across Spark, Delta, Schema, Data Quality,
  Connectivity, Performance, and Azure Data Factory domains.
- Structured outputs for text, JSON, and Markdown workflows.
- A first-class evaluation framework (`make evaluate`) with a committed
  regression baseline and published benchmark results.

## Development

```bash
make verify
```

## Security

See [docs/explanation/security-model.md](docs/explanation/security-model.md)
and [SECURITY.md](SECURITY.md).

## License

Apache-2.0. See [LICENSE](LICENSE).
