Metadata-Version: 2.5
Name: aura-contracts
Version: 1.1.0
Summary: Modèles Pydantic du contrat d'API AURA, générés depuis openapi.yaml
Project-URL: Homepage, https://github.com/ceviaai/aura
Project-URL: Source, https://github.com/ceviaai/aura/tree/main/contracts
Author-email: CEVIA <info@cevia.ai>
License-Expression: LicenseRef-Proprietary
Keywords: ai-act,aura,cevia,contracts,openapi
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: <3.14,>=3.10
Requires-Dist: pydantic[email]<3,>=2.7
Description-Content-Type: text/markdown

# aura-contracts

Modèles Pydantic v2 du contrat d'API AURA, **générés** depuis `openapi.yaml`.

Ce paquet est la seule définition des payloads échangés entre la plateforme
AURA et l'agent `auraagent`. L'agent les importe ; il ne redéfinit aucun
dictionnaire à la main.

## Installation

```bash
pip install aura-contracts
```

## Chaîne de génération

```
serializers de la plateforme
  → manage.py spectacular          → openapi.yaml
  → python contracts/generate.py   → aura_contracts/models.py
```

Chaque maillon est vérifié en CI : modifier un endpoint sans propager le
contrat fait échouer le build.

## Régénérer

Depuis la racine du dépôt `aura` :

```bash
python manage.py spectacular --file openapi.yaml --fail-on-warn
python contracts/generate.py
```

`aura_contracts/models.py` est versionné mais **ne doit jamais être édité à la
main**. Toute évolution passe par les serializers de la plateforme.

## Publication

`aura-contracts` doit être publié **avant** `auraagent`, qui en dépend.
