mapfarm-cuisine (0.5.0)
Installation
pip install --index-url https://git.it.iaos.cc/api/packages/mapfarm/pypi/simple/ --extra-index-url https://pypi.org/simple mapfarm-cuisineAbout this package
Ontologie culinaire IAOS — schémas corpus + gates déterministes (génération gouvernée de recettes/menus).
mapfarm-cuisine
Ontologie culinaire IAOS — socle déterministe de la génération gouvernée de
recettes et menus. Le LLM (dans un CDC ultérieur) n'assemble que des briques
validées ; chaque affirmation critique est EVIDENCED_BY un document corpus
validated, pinné id@version. Ce dépôt ne contient aucun LLM : des schémas
et des gates purs, testables au bit.
Spécification complète : docs/CDC-ontologie-culinaire-v0.2.md.
Contenu (S1)
cuisine/
enums.py # 14 allergènes INCO, régimes, catégories, familles, profils…
schemas.py # 6 types de documents corpus (Pydantic) = validateur de forme (§9.1)
gates.py # LES 5 GATES — package importable unique (décision D6)
allergens.py # allergenes_derives par fermeture transitive (+ composition/substitution)
validate.py # schéma + règles d'état (validated exige source, refs pinnées id@version)
corpus/ # documents reg_* d'amorçage
reg_allergenes_inco.yaml # 14 INCO (validated)
reg_regimes.yaml # régimes dérivables + halal/casher à certifier
reg_temperatures_sanitaires.yaml # DRAFT volontaire : valeurs à sourcer (règle G3)
gate_vectors.json # contrat d'exécution des gates, rejoué à l'identique par iaos
Les 5 gates
Fonctions pures run_gates(recette_composée, contexte) → [GateVerdict].
| Gate | BLOCK | WARN |
|---|---|---|
| G1 allergènes | allergène exclu présent (direct) | présence en traces |
| G2 régimes | incompatibilité dérivée | donnée manquante ; halal/casher (certif requise) |
| G3 sécurité sanitaire | paramètre sanitaire sans source validée ; doc/version déprécié | — |
| G4 saisonnalité | jamais | ingrédient hors saison |
| G5 coût | dépassement > seuil | ≤ seuil ; relevé de coût périmé |
Le compositeur importe ce package, ne le réimplémente jamais (une G3 en double
divergerait). gate_vectors.json est le test de non-régression partagé.
Démarrage
pip install -r requirements.txt
python -m cuisine.validate corpus/ # ✓/✗ par document
pytest && ruff check .
Périmètre
Ce socle corpus définit les schémas, les gates et le workflow de validation.
Le graphe compositeur (agent, dispatch, menus/menu_canonique) et le front
font l'objet de CDC ultérieurs qui consomment ce dépôt. Amorçage v1 (démo menu
bourguignon) : 60 ingrédients, 25 techniques, 40 accords, 15 recettes, 3 reg_*,
5 priors — validés par le chef partenaire. Interdit : ingestion de bases ou
d'ouvrages de recettes sous droits.