# PROJECT_MAP.md — IPSM Bovin PWA V2 [TECH_STACK] - Application: PWA local-first autonome. - Langages: HTML5, CSS3, JavaScript natif. - Dépendances externes: aucune. - Stockage: localStorage versionné `ipsm_bovin_v2_scenario`. - Rapport: fiche projet HTML imprimable via navigateur, sans export automatique. - PWA: manifest.json + sw.js. - Langues: Français, Arabe RTL, Anglais. [SYSTEM_FLOW] 1. L’utilisateur ouvre IPSM Bovin Prototype V2. 2. Il voit immédiatement le bandeau prototype indiquant que prix, rations et performances sont des hypothèses modifiables. 3. Il choisit le mode: vache laitière, veau d’engraissement ou mixte. 4. Il renseigne le profil projet, les paramètres laitiers et/ou engraissement. 5. Le prix de vente viande/vif par défaut est fixé à 1200 DA/kg selon correction utilisateur; il reste modifiable selon le marché local. 6. Il consulte le dashboard supérieur: score, lait, poids vif, coût/L, marge/L, coût/kg vif, marge/kg vif et impact infrastructure. 7. Il édite les rations visibles par ingrédients; la table est corrigée avec colonnes et champs lisibles. 8. Il ouvre l’analyse nutritionnelle uniquement à la demande. 9. Il active l’infrastructure avancée si nécessaire. 10. Il sauvegarde le scénario localement. 11. Il génère une fiche projet imprimable avec mention prototype. [ARCHITECTURE] - Single-file app: IPSM_Bovin_PWA_V2.html. - Rations: tableau laitier et engraissement avec ingrédients, %, kg/tonne, prix/kg, coût, rôle et disponibilité. - Simulation: calcul lait, poids vif, coûts d’exploitation, marges, investissement net, amortissement et bénéfice après infrastructure. - UX mobile: table ration à largeur minimale avec défilement horizontal contrôlé pour éviter la troncature des chiffres. - Infrastructure: module avancé masqué par défaut, avec construction, location, disponible et subvention. - Rapport: fiche projet imprimable, local-first, sans `doc.save()`. [DATA_MODEL] - inputs projet: nom scénario, porteur, profil, pays, région, budget. - inputs lait: nombre vaches, lait/jour, jours lactation, prix lait, MS/vache/jour. - inputs engraissement: veaux/an, prix achat, poids achat, poids vif cible, GMQ, indice alimentaire, mortalité, prix vente viande/vif. - rations: formulations.laitiere, formulations.engraissement. - infrastructure: infraRows avec quantité, coût utilisateur, subvention, durée d’amortissement et inclusion. - metrics: production lait, poids vif, coûts, marges, ROI, score, investissement. [I18N] - FR / AR / EN. - RTL arabe appliqué via body.ar. - Les ajouts V2 sont traduits dans le bandeau prototype et la note prix viande/vif. [REPORT_MODEL] - Rapport imprimable avec mention IPSM Bovin — Prototype V2. - Mention explicite: prix et indicateurs sont des hypothèses modifiables et ne remplacent pas une étude officielle. - Tableaux de résultats, infrastructure et checklist. [VERIFIABLE_GOALS] - VG1: Les champs numériques de ration affichent les valeurs complètes. - VG2: La table ration reste utilisable sur mobile via défilement horizontal. - VG3: Le prix vente viande/vif par défaut est 1200 DA/kg. - VG4: Le poids de vente est renommé en poids vif cible pour éviter la confusion avec le prix. - VG5: La version affiche clairement qu’il s’agit d’un prototype. - VG6: Le rapport affiche aussi la mention prototype. - VG7: Aucun CDN, aucune API externe, aucun export PDF automatique. - VG8: Manifest et Service Worker pointent vers la V2. [ORPHANS & PENDING] - À valider terrain: prix animaux, prix lait, prix viande/vif, prix fourrages, coefficients ration et devis infrastructure par région. - À enrichir: bibliothèque technique bovine avec référentiel Inoiatech terrain.