Skip to main content

Librairie de gouvernance documentaire de l'écosystème baobab-ai-development.

Project description

baobab-ai-dev-documents

Librairie Python de gouvernance documentaire de l'écosystème baobab-ai-development.

Elle transforme les documents Markdown utilisés pour piloter les développements IA (cahiers des charges, user stories, features, backlogs, prompts, ADR) en données structurées, validées, traçables et synchronisables avec le reste de la plateforme.

Le module fait la passerelle entre :

  • la documentation rédigée par l'utilisateur ou par une IA ;
  • les entités métier de baobab-ai-dev-core ;
  • les repositories de baobab-ai-dev-database ;
  • les futurs usages CLI, API, workflow IA et dashboard.

Statut : socle initial (v0.1.0). Voir la roadmap dans le cahier des charges (docs/01-cahier-des-charges/).

Installation

Le package cible Python ≥ 3.12.

# Installation applicative
pip install baobab-ai-dev-documents

# Installation en développement (outils qualité inclus)
pip install -e ".[dev]"

Dépendances runtime :

  • baobab-ai-dev-core >= 0.2.0
  • baobab-ai-dev-database >= 0.1.0

Usage minimal

import baobab_ai_dev_documents as docs
from baobab_ai_dev_documents import PACKAGE_METADATA, RuntimeMetadata

# Version du package (résolue depuis les métadonnées de distribution).
print(docs.__version__)

# Métadonnées descriptives du package et de ses sous-modules internes.
print(PACKAGE_METADATA.name)
print(PACKAGE_METADATA.modules)
print(PACKAGE_METADATA.has_module("parsing"))  # True

# Résolution de la version d'une distribution installée.
print(RuntimeMetadata.version(fallback="0.1.0"))
print(RuntimeMetadata.is_installed("baobab-ai-dev-core"))

Les services de scan, parsing, validation, mapping, import et génération de prompts sont livrés progressivement (voir la roadmap du cahier des charges). L'API cible complète est décrite dans docs/01-cahier-des-charges/.

Conventions d'arborescence

Le code source suit un src layout ; les tests forment une arborescence miroir de src/.

src/baobab_ai_dev_documents/
├── domain/        # Objets documentaires purs (entités, value objects)
├── scanning/      # Découverte et classification des fichiers Markdown
├── parsing/       # Front matter YAML et sections Markdown
├── validation/    # Validation structurelle et de cohérence
├── mapping/       # Mapping vers les entités de baobab-ai-dev-core
├── importing/     # Plan et service d'import documentaire
├── prompts/       # Génération de prompts IA
├── sync/          # Adaptateurs de synchronisation database
└── exports/       # Rapports et exports (JSON, Markdown)

tests/baobab_ai_dev_documents/
└── ...            # Un fichier test_<module>.py par classe applicative

Règles de structure :

  • une classe applicative principale par fichier ;
  • nom de fichier en snake_case correspondant à la classe (PascalCase) ;
  • imports absolus ;
  • chaque classe possède un test miroir test_<fichier_source>.py ;
  • classes de test Test<NomDeClasse>, méthodes test_<comportement> ;
  • typage strict (le package expose py.typed).

Qualité

La chaîne qualité est configurée dans pyproject.toml. Commandes attendues avant toute Pull Request :

pytest                              # tests unitaires
coverage run -m pytest && coverage report   # couverture ≥ 90 %
ruff check .                        # lint
black --check src tests            # format
mypy src                           # type-check (strict)
pylint src/baobab_ai_dev_documents # qualité (≥ 8.5/10)
bandit -c pyproject.toml -r src/baobab_ai_dev_documents -ll  # sécurité

Workflow de développement

Le développement suit la hiérarchie de branches :

main → us/* → feat/* → bl/*
  • développement uniquement sur une branche bl/FEAT-XXX/BL-XXX-* ;
  • Pull Requests : BL-XXX → FEAT-XXX → US-XXX → main ;
  • aucun merge si un gate qualité, sécurité, QA ou fonctionnel est en NO GO.

La spécification complète (cahier des charges, user stories, features, backlogs) est versionnée dans docs/.

Licence

Distribué sous licence MIT. Voir le fichier LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

baobab_ai_dev_documents-0.1.0.tar.gz (40.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

baobab_ai_dev_documents-0.1.0-py3-none-any.whl (71.3 kB view details)

Uploaded Python 3

File details

Details for the file baobab_ai_dev_documents-0.1.0.tar.gz.

File metadata

  • Download URL: baobab_ai_dev_documents-0.1.0.tar.gz
  • Upload date:
  • Size: 40.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for baobab_ai_dev_documents-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b452266f750bd967f3da6c3fad68e2070546270fb31800601f3002b681785f30
MD5 69798db2ecede923c94cd08df802b40e
BLAKE2b-256 5ce3111731199a4be5a10c213a1d951bf59f199a2bfc94f5679e4714c3e620aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for baobab_ai_dev_documents-0.1.0.tar.gz:

Publisher: release.yml on baobabgit/baobab-ai-dev-documents

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file baobab_ai_dev_documents-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for baobab_ai_dev_documents-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b67698a50fead7e55ecca42e37a3f4b84519e04da8427de534a0c93bba166ef8
MD5 357afc87a6ba34673b9aec90867088d4
BLAKE2b-256 135b86226db3d54e0617fa8bf23899d5a18c2c803c601851c56d5f84311b48a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for baobab_ai_dev_documents-0.1.0-py3-none-any.whl:

Publisher: release.yml on baobabgit/baobab-ai-dev-documents

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page