Metadata-Version: 2.4
Name: adri
Version: 3.0.0
Summary: AI Data Reliability Intelligence - Comprehensive data quality assessment and validation framework
Home-page: https://github.com/thinkveolvesolve/adri-validator
Author: ThinkVeolvesolve
Author-email: ThinkEvolveSolve <info@thinkevolvesolve.com>
Maintainer-email: ThinkEvolveSolve <info@thinkevolvesolve.com>
License: MIT License
        
        Copyright (c) 2025 ThinkVeolvesolve
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Homepage, https://github.com/ThinkEvolveSolve/adri-validator
Project-URL: Documentation, https://github.com/ThinkEvolveSolve/adri-validator/blob/main/README.md
Project-URL: Repository, https://github.com/ThinkEvolveSolve/adri-validator
Project-URL: Issues, https://github.com/ThinkEvolveSolve/adri-validator/issues
Project-URL: Changelog, https://github.com/ThinkEvolveSolve/adri-validator/blob/main/CHANGELOG.md
Keywords: data-quality,ai,validation,assessment,reliability
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandas>=1.5.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: click>=8.0
Requires-Dist: pyarrow>=14.0.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: pytest-benchmark>=4.0; extra == "dev"
Requires-Dist: black>=23.0; extra == "dev"
Requires-Dist: isort>=5.12; extra == "dev"
Requires-Dist: flake8>=6.0; extra == "dev"
Requires-Dist: mypy>=1.0; extra == "dev"
Requires-Dist: pylint>=2.17; extra == "dev"
Requires-Dist: bandit[toml]>=1.7; extra == "dev"
Requires-Dist: safety>=2.3; extra == "dev"
Requires-Dist: pip-audit>=2.6; extra == "dev"
Provides-Extra: test
Requires-Dist: pytest>=7.0; extra == "test"
Requires-Dist: pytest-cov>=4.0; extra == "test"
Requires-Dist: pytest-benchmark>=4.0; extra == "test"
Requires-Dist: pyarrow>=14.0.0; extra == "test"
Provides-Extra: security
Requires-Dist: bandit[toml]>=1.7; extra == "security"
Requires-Dist: safety>=2.3; extra == "security"
Requires-Dist: pip-audit>=2.6; extra == "security"
Dynamic: author
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-python

# ADRI - Agent Data Readiness Index

**AI Workflow Protection** - Reliable data quality protection for agent-driven business workflows.

🚀 **Production Ready** - Enterprise-grade data validation for AI systems.

## Overview

ADRI provides Python decorators and tools to protect AI agent workflows from data quality issues. With built-in standards and zero-configuration setup, ADRI ensures your agent functions receive reliable, high-quality data.

**Note**: This package contains proprietary validation algorithms and is distributed as a compiled package. The source code is intellectual property of ThinkEvolveSolve.

## Quick Start

```bash
pip install adri
```

```python
from adri.decorators.guard import adri_protected

@adri_protected(data_param="customer_data", min_score=80)
def process_customer_data(customer_data):
    # Your agent logic here - protected by ADRI
    return processed_results
```

## Features

- 🛡️ **Zero-Configuration Protection** - Works out of the box with 15 built-in standards
- ⚡ **High Performance** - Sub-millisecond validation with intelligent caching
- 🔧 **Framework Agnostic** - Works with any Python AI framework
- 📊 **Built-in Standards** - Customer data, financial data, and more
- 🎯 **Intelligent Matching** - Automatic standard selection based on function names
- 🚫 **Offline First** - No external dependencies or network calls

## Architecture

```
adri/
├── decorators/     # @adri_protected decorator
├── core/          # Protection engine and assessor
├── standards/     # Built-in YAML standards (15 included)
├── analysis/      # Data profiling and standard generation
├── config/        # Configuration management
├── cli/           # Command-line interface
└── utils/         # Utility functions
```

## Dependencies

- **pandas** - Data manipulation and analysis
- **numpy** - Numerical computations
- **pyyaml** - YAML processing
- **jsonschema** - Schema validation
- **click** - CLI interface
- **rich** - Beautiful terminal output

## Key Components

### Core Decorator
The `@adri_protected` decorator is the main interface for protecting agent functions:

```python
from adri.decorators.guard import adri_protected

@adri_protected(data_param="data", min_score=80)
def my_agent_function(data):
    # Agent logic here
    return processed_data
```

### Protection Engine
The `DataProtectionEngine` handles the core validation logic:
- Data quality assessment
- Standard loading and validation
- Failure mode handling
- Caching and performance optimization

### Analysis Tools
- **Data Profiler** - Analyzes data characteristics and quality
- **Standard Generator** - Auto-generates standards from sample data
- **Type Inference** - Determines data types and constraints

### Configuration Management
- Environment-specific configurations (dev/prod)
- Standard paths and caching settings
- Performance and timeout configurations

## Development Setup

```bash
# Install in development mode
pip install -e .

# Install development dependencies
pip install -e ".[dev]"

# Run tests
pytest tests/

# Run specific test categories
pytest tests/unit/
pytest tests/integration/
```

## Testing

The test suite includes:
- **Unit tests** - Individual component testing
- **Integration tests** - End-to-end workflow testing
- **Fixture data** - Sample datasets for testing
- **Performance tests** - Validation speed and memory usage

## Built-in Standards

ADRI includes 15 production-ready standards:

- **Customer Data Standards** - Customer profiles, service data, analytics
- **Financial Data Standards** - Risk analysis, transaction data
- **Agent Data Standards** - High-quality agent requirements
- **Development Standards** - Testing and development workflows

## Advanced Usage

### Custom Standards
```python
@adri_protected(
    data_param="data",
    standard_path="path/to/custom_standard.yaml",
    min_score=85
)
def my_function(data):
    return processed_data
```

### Configuration
```python
# Environment-specific settings
import os
os.environ['ADRI_DEFAULT_MIN_SCORE'] = '80'
os.environ['ADRI_CACHE_DURATION'] = '3600'
```

### CLI Tools
```bash
# Profile your data
adri-profile data.csv

# Generate custom standards
adri-generate --input data.csv --output my_standard.yaml

# Protect existing functions
adri-protect my_script.py
```

## Performance

- ⚡ **Sub-millisecond validation** with LRU caching
- 📈 **Scales to large datasets** with intelligent sampling
- 🔄 **Thread-safe** for concurrent applications
- 💾 **Memory efficient** with optimized data structures

## Support

- 📖 **Documentation** - [GitHub Wiki](https://github.com/ThinkEvolveSolve/adri-validator/wiki)
- 🐛 **Issues** - [GitHub Issues](https://github.com/ThinkEvolveSolve/adri-validator/issues)
- 💬 **Discussions** - [GitHub Discussions](https://github.com/ThinkEvolveSolve/adri-validator/discussions)

## Release Process

For maintainers releasing new versions:

```bash
# Prepare a new release
python scripts/prepare_release.py 0.1.1

# Push changes and create GitHub Release
git push origin main
# Then create release at: https://github.com/ThinkEvolveSolve/adri-validator/releases/new
```

See [RELEASE_PROCESS.md](RELEASE_PROCESS.md) for detailed release instructions.

## License

MIT License - see [LICENSE](LICENSE) for details.
