Files
moteurs/fixtures/ecarts-correctifs-2026-10-05.json
T
JulesandClaude Fable 5.1 4f593d2edf Épingles : écarts correctifs face à l'épingle d'origine, écarts d'harmonisation refigés (05/10)
L'épingle d'origine (fixtures/sorties-origine-2026-09-28.json, générée depuis
le code d'astro-pro) porte les défauts corrigés par 91c755f (eg_phytostation ×3
sur C/eau, basse_planche_bec ×2 sur B et C/alim, lignes forcées orphelines,
FORCE ×4 dans le journal, A/eau par axe en INSUFFISANT). La regénérer depuis
astro-pro reproduirait les défauts ; la regénérer depuis ce paquet en ferait
une épingle sur soi-même. Elle reste donc telle quelle, et :

- scripts/ecarts-correctifs.mjs + fixtures/ecarts-correctifs-2026-10-05.json :
  chaque cellule (profil × mode × axe × champ) qui s'écarte de l'origine est
  figée, avec le détail des lignes ; une cellule absente doit rester identique.
- test/decoupage.test.mjs : test 1 compare aux écarts figés (et vérifie qu'un
  correctif n'introduit jamais un INSUFFISANT ni un total hors ±5 % en global ;
  budgets alloués et poids des axes inchangés) ; test 2 vérifie la propriété du
  découpage contre selectionner() de ce paquet ; test 3 inchangé dans l'esprit.
- Écarts d'harmonisation REFIGÉS (npm run ecarts -- --ecrire 2026-10-05) après
  relecture de docs/CONSTANTES.md : neuf lignes au lieu de onze. Les deux lignes
  perdues (A énergie global 22 → 6 %, C énergie par axe 10 → 3 %) étaient des
  taux calculés sur des kWc fantômes hérités par une batterie ; la couverture y
  est null avec les deux tables. Aucun coefficient ne change. Note datée posée
  dans CONSTANTES.md §1. (La suppression du fichier du 28/09 est partie par
  erreur dans 8465bf7, avec la version : même intention, deux commits.)
- fixtures/README.md et AGENTS.md (règles 6 et 8) : l'épingle d'origine ne se
  regénère pas pour absorber un correctif ; invariants tenus depuis v0.1.1.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tgtn7bJxTLiL2fRCkQMgtR
2026-10-05 16:39:51 +02:00

1391 lines
45 KiB
JSON

{
"_commentaire": "Écarts voulus entre l'épingle d'origine (sorties-origine-2026-09-28.json, code astro-pro) et ce paquet, coefficients d'origine, trois profils de référence, figés le 2026-10-05 par scripts/ecarts-correctifs.mjs. L'épingle d'origine n'est pas regénérée : elle porte les défauts corrigés (SPEC menu branches fiches §12 n° 1, 2, 3, 5). Toute cellule absente d'ici doit rester identique à l'origine ; un nouvel écart casse test/decoupage.test.mjs, et se refige sciemment, avec sa cause dans le commit.",
"date": "2026-10-05",
"epingle_origine": "sorties-origine-2026-09-28.json",
"ecarts": [
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "eau",
"champ": "sous_total_eur_ht",
"origine": 7280,
"corrige": 4875
},
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "eau",
"champ": "postes",
"origine": "captage_descente_directe 100 + filtration_particulaire_simple 55 + stockage_souple_5m3 475 + distrib_gravitaire 250 + eg_noue 400 + eg_pedoepuration* 4000 + eg_fpv_autoconstruit* 2000",
"corrige": "captage_descente_directe 100 + filtration_3_corps_uv 650 + stockage_souple_5m3 475 + distrib_kit_double_reseau 1250 + eg_noue 400 + eg_fpv_autoconstruit* 2000"
},
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "energie",
"champ": "sous_total_eur_ht",
"origine": 7900,
"corrige": 10825
},
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "energie",
"champ": "postes",
"origine": "pv_batterie_plomb_5 2000 + th_ballon_500 600 + bois_poele_double 3250 + emet_vannes_thermo 270 + pil_home_assistant 400 + bois_conduit_fumee* 1380",
"corrige": "pv_batterie_plomb_5 2000 + th_ballon_500 600 + bois_poele_masse_diy 6000 + emet_vannes_thermo 270 + pil_routeur_ecs 575 + bois_conduit_fumee* 1380"
},
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "total",
"champ": "total_eur_ht",
"origine": 15180,
"corrige": 15700
},
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "total",
"champ": "ecart_budget_pct",
"origine": 1.2,
"corrige": 4.67
},
{
"profil": "A — Frugal urbain",
"mode": "global",
"axe": "total",
"champ": "couplages",
"origine": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie"
],
"corrige": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie"
]
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "eau",
"champ": "sous_total_eur_ht",
"origine": 8130,
"corrige": 7575
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "eau",
"champ": "postes",
"origine": "captage_descente_directe 100 + filtration_particulaire_simple 55 + stockage_souple_5m3 475 + distrib_gravitaire 250 + eg_pedoepuration* 4000 + distrib_kit_double_reseau* 1250 + eg_fpv_autoconstruit* 2000",
"corrige": "captage_descente_directe 100 + filtration_3_corps_uv 650 + stockage_souple_5m3 475 + distrib_kit_double_reseau 1250 + eg_recyclage_spareau 3150 + eg_separation_source* 1950"
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "eau",
"champ": "status",
"origine": "BUDGET_INSUFFISANT",
"corrige": "OK"
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "eau",
"champ": "couplages",
"origine": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau"
],
"corrige": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"RETIRE \"eg_fpv_autoconstruit\" (plus requis par aucun poste) -2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau",
"FORCE \"eg_separation_source\" (requis par \"eg_recyclage_spareau\") +1950EUR dans axe eau"
]
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "energie",
"champ": "postes",
"origine": "pv_kit_beem_balcon 560 + th_ballon_500 600 + bois_poele_granules 3500 + emet_radiateur_acier 495 + pil_routeur_ecs 575 + bois_conduit_fumee* 1380",
"corrige": "pv_kit_beem_balcon 560 + th_ballon_500 600 + bois_poele_granules 3500 + emet_radiateur_acier 495 + pil_routeur_ecs 575 + bois_conduit_fumee* 1380"
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "energie",
"champ": "status",
"origine": "OK",
"corrige": "AJOUTER_OPTIONNEL"
},
{
"profil": "A — Frugal urbain",
"mode": "par_axe",
"axe": "energie",
"champ": "couplages",
"origine": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_granules\") +1380EUR dans axe energie",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_granules\") +1380EUR dans axe energie"
],
"corrige": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_granules\") +1380EUR dans axe energie"
]
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "eau",
"champ": "sous_total_eur_ht",
"origine": 9375,
"corrige": 6225
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "eau",
"champ": "postes",
"origine": "captage_descente_directe 100 + filtration_particulaire_simple 55 + stockage_souple_5m3 570 + distrib_gravitaire 250 + eg_noue 800 + eg_pedoepuration* 5600 + eg_fpv_autoconstruit* 2000",
"corrige": "captage_descente_directe 100 + filtration_particulaire_simple 55 + stockage_souple_5m3 570 + distrib_gravitaire 250 + eg_autoepure 5250"
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "energie",
"champ": "postes",
"origine": "pv_monitoring 400 + th_ballon_500 600 + bois_poele_masse_indus 24000 + emet_seche_serviette 400 + pil_delesteur 375 + bois_conduit_fumee* 1380",
"corrige": "pv_monitoring 400 + th_ballon_500 600 + bois_poele_masse_indus 24000 + emet_seche_serviette 400 + pil_delesteur 375 + bois_conduit_fumee* 1380"
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "alim",
"champ": "sous_total_eur_ht",
"origine": 131,
"corrige": 803
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "alim",
"champ": "postes",
"origine": "etude_topo_ensoleil 0 + haute_fruit_coque 53 + moy_petit_fruit_3L 78 + basse_compost_3bacs 0",
"corrige": "etude_analyse_labo 115 + haute_plantation_pose_pro 520 + moy_petit_fruit_3L 78 + basse_medicinales_lot30 90"
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "total",
"champ": "total_eur_ht",
"origine": 36661,
"corrige": 34183
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "total",
"champ": "ecart_budget_pct",
"origine": 4.75,
"corrige": -2.33
},
{
"profil": "B — Famille moyenne",
"mode": "global",
"axe": "total",
"champ": "couplages",
"origine": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_indus\") +1380EUR dans axe energie",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_indus\") +1380EUR dans axe energie"
],
"corrige": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"RETIRE \"eg_fpv_autoconstruit\" (plus requis par aucun poste) -2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_indus\") +1380EUR dans axe energie"
]
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "eau",
"champ": "sous_total_eur_ht",
"origine": 14645,
"corrige": 13595
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "eau",
"champ": "postes",
"origine": "captage_descente_directe 100 + filtration_particulaire_simple 55 + stockage_pehd_enterree_5m3 3040 + distrib_gravitaire 250 + eg_pedoepuration 5600 + eg_pedoepuration* 5600",
"corrige": "captage_capteur_sol 2250 + filtration_particulaire_simple 55 + stockage_pehd_enterree_5m3 3040 + distrib_per_bleu_interieur 1750 + eg_autoepure 5250 + distrib_kit_double_reseau* 1250"
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "eau",
"champ": "couplages",
"origine": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau"
],
"corrige": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"RETIRE \"eg_fpv_autoconstruit\" (plus requis par aucun poste) -2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau"
]
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "energie",
"champ": "postes",
"origine": "pv_kit_3kwc_string 7200 + th_ballon_500 600 + bois_poele_granules 3500 + emet_seche_serviette 400 + pil_delesteur 375 + bois_conduit_fumee* 1380",
"corrige": "pv_kit_3kwc_string 7200 + th_ballon_500 600 + bois_poele_granules 3500 + emet_seche_serviette 400 + pil_delesteur 375 + bois_conduit_fumee* 1380"
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "energie",
"champ": "couplages",
"origine": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie"
],
"corrige": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie"
]
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "alim",
"champ": "sous_total_eur_ht",
"origine": 6985,
"corrige": 4360
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "alim",
"champ": "postes",
"origine": "etude_analyse_labo 115 + haute_plantation_pose_pro 520 + moy_haie_biodiv_complete 1100 + basse_planche_bec 2625 + basse_planche_bec 2625",
"corrige": "etude_analyse_labo 115 + haute_plantation_pose_pro 520 + moy_haie_biodiv_complete 1100 + basse_planche_bec 2625"
},
{
"profil": "B — Famille moyenne",
"mode": "par_axe",
"axe": "alim",
"champ": "status",
"origine": "OK",
"corrige": "AJOUTER_OPTIONNEL"
},
{
"profil": "C — Autonomie large",
"mode": "global",
"axe": "energie",
"champ": "postes",
"origine": "pv_kit_3kwc_micro 9000 + th_ballon_500 600 + bois_chaudiere_granules 34000 + emet_vannes_thermo 630 + pil_onduleur_hybride 4350 + bois_conduit_fumee* 1380",
"corrige": "pv_kit_3kwc_micro 9000 + th_ballon_500 600 + bois_chaudiere_granules 34000 + emet_vannes_thermo 630 + pil_onduleur_hybride 4350 + bois_conduit_fumee* 1380"
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "eau",
"champ": "sous_total_eur_ht",
"origine": 41000,
"corrige": 18400
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "eau",
"champ": "postes",
"origine": "captage_capteur_sol 2250 + filtration_3_corps_uv 650 + stockage_beton_5m3 4800 + distrib_per_bleu_interieur 1750 + eg_phytostation 7700 + eg_phytostation 7700 + eg_phytostation 7700 + eg_pedoepuration 7200 + distrib_kit_double_reseau* 1250",
"corrige": "captage_capteur_sol 2250 + filtration_3_corps_uv 650 + stockage_beton_5m3 4800 + distrib_per_bleu_interieur 1750 + eg_phytostation 7700 + distrib_kit_double_reseau* 1250"
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "eau",
"champ": "status",
"origine": "OK",
"corrige": "AJOUTER_OPTIONNEL"
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "energie",
"champ": "postes",
"origine": "pv_batterie_plomb_5 2000 + th_ballon_500 600 + bois_poele_hydro 13500 + emet_radiateur_acier 1155 + pil_routeur_ecs 575 + bois_conduit_fumee* 1380",
"corrige": "pv_batterie_plomb_5 2000 + th_ballon_500 600 + bois_poele_hydro 13500 + emet_radiateur_acier 1155 + pil_routeur_ecs 575 + bois_conduit_fumee* 1380"
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "alim",
"champ": "sous_total_eur_ht",
"origine": 20855,
"corrige": 11855
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "alim",
"champ": "postes",
"origine": "etude_analyse_labo 115 + haute_haute_tige 540 + moy_haie_biodiv_complete 2200 + basse_planche_bec 9000 + basse_planche_bec 9000",
"corrige": "etude_analyse_labo 115 + haute_haute_tige 540 + moy_haie_biodiv_complete 2200 + basse_planche_bec 9000"
},
{
"profil": "C — Autonomie large",
"mode": "par_axe",
"axe": "alim",
"champ": "status",
"origine": "OK",
"corrige": "AJOUTER_OPTIONNEL"
}
],
"cellules": {
"A — Frugal urbain / global": {
"total": 15700,
"status": "OK",
"couplages": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie"
],
"axes": {
"eau": {
"sous_total": 4875,
"postes": [
{
"poste_id": "eau_captage",
"typologie_choisie": "captage_descente_directe",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 100,
"force_par_couplage": false
},
{
"poste_id": "eau_filtration",
"typologie_choisie": "filtration_3_corps_uv",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 650,
"force_par_couplage": false
},
{
"poste_id": "eau_stockage",
"typologie_choisie": "stockage_souple_5m3",
"dimension": {
"valeur": 5,
"unite": "m³"
},
"cout_eur_ht": 475,
"force_par_couplage": false
},
{
"poste_id": "eau_distribution",
"typologie_choisie": "distrib_kit_double_reseau",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1250,
"force_par_couplage": false
},
{
"poste_id": "eau_eg_epuration",
"typologie_choisie": "eg_noue",
"dimension": {
"valeur": 5,
"unite": "ml"
},
"cout_eur_ht": 400,
"force_par_couplage": false
},
{
"poste_id": "5_couplage",
"typologie_choisie": "eg_fpv_autoconstruit",
"dimension": {
"valeur": 10,
"unite": "m²"
},
"cout_eur_ht": 2000,
"force_par_couplage": true
}
]
},
"energie": {
"sous_total": 10825,
"postes": [
{
"poste_id": "energie_pv",
"typologie_choisie": "pv_batterie_plomb_5",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 2000,
"force_par_couplage": false
},
{
"poste_id": "energie_solaire_th",
"typologie_choisie": "th_ballon_500",
"dimension": {
"valeur": 500,
"unite": "L"
},
"cout_eur_ht": 600,
"force_par_couplage": false
},
{
"poste_id": "energie_chauffage_bois",
"typologie_choisie": "bois_poele_masse_diy",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 6000,
"force_par_couplage": false
},
{
"poste_id": "energie_emetteurs",
"typologie_choisie": "emet_vannes_thermo",
"dimension": {
"valeur": 3,
"unite": "unités"
},
"cout_eur_ht": 270,
"force_par_couplage": false
},
{
"poste_id": "energie_pilotage",
"typologie_choisie": "pil_routeur_ecs",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 575,
"force_par_couplage": false
},
{
"poste_id": "8_couplage",
"typologie_choisie": "bois_conduit_fumee",
"dimension": {
"valeur": 6,
"unite": "ml"
},
"cout_eur_ht": 1380,
"force_par_couplage": true
}
]
},
"alim": {
"sous_total": 0,
"postes": []
}
}
},
"A — Frugal urbain / par_axe / eau": {
"budget_axe": 7500,
"sous_total": 7575,
"status": "OK",
"couplages": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"RETIRE \"eg_fpv_autoconstruit\" (plus requis par aucun poste) -2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau",
"FORCE \"eg_separation_source\" (requis par \"eg_recyclage_spareau\") +1950EUR dans axe eau"
],
"postes": [
{
"poste_id": "eau_captage",
"typologie_choisie": "captage_descente_directe",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 100,
"force_par_couplage": false
},
{
"poste_id": "eau_filtration",
"typologie_choisie": "filtration_3_corps_uv",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 650,
"force_par_couplage": false
},
{
"poste_id": "eau_stockage",
"typologie_choisie": "stockage_souple_5m3",
"dimension": {
"valeur": 5,
"unite": "m³"
},
"cout_eur_ht": 475,
"force_par_couplage": false
},
{
"poste_id": "eau_distribution",
"typologie_choisie": "distrib_kit_double_reseau",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1250,
"force_par_couplage": false
},
{
"poste_id": "eau_eg_epuration",
"typologie_choisie": "eg_recyclage_spareau",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 3150,
"force_par_couplage": false
},
{
"poste_id": "5_couplage",
"typologie_choisie": "eg_separation_source",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1950,
"force_par_couplage": true
}
]
},
"A — Frugal urbain / par_axe / energie": {
"budget_axe": 7500,
"sous_total": 7110,
"status": "AJOUTER_OPTIONNEL",
"couplages": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_granules\") +1380EUR dans axe energie"
],
"postes": [
{
"poste_id": "energie_pv",
"typologie_choisie": "pv_kit_beem_balcon",
"dimension": {
"valeur": 0.4,
"unite": "kWc"
},
"cout_eur_ht": 560,
"force_par_couplage": false
},
{
"poste_id": "energie_solaire_th",
"typologie_choisie": "th_ballon_500",
"dimension": {
"valeur": 500,
"unite": "L"
},
"cout_eur_ht": 600,
"force_par_couplage": false
},
{
"poste_id": "energie_chauffage_bois",
"typologie_choisie": "bois_poele_granules",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 3500,
"force_par_couplage": false
},
{
"poste_id": "energie_emetteurs",
"typologie_choisie": "emet_radiateur_acier",
"dimension": {
"valeur": 3,
"unite": "unités"
},
"cout_eur_ht": 495,
"force_par_couplage": false
},
{
"poste_id": "energie_pilotage",
"typologie_choisie": "pil_routeur_ecs",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 575,
"force_par_couplage": false
},
{
"poste_id": "8_couplage",
"typologie_choisie": "bois_conduit_fumee",
"dimension": {
"valeur": 6,
"unite": "ml"
},
"cout_eur_ht": 1380,
"force_par_couplage": true
}
]
},
"A — Frugal urbain / par_axe / alim": {
"budget_axe": 0,
"sous_total": 0,
"status": "OK",
"couplages": [],
"postes": []
},
"B — Famille moyenne / global": {
"total": 34183,
"status": "OK",
"couplages": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"RETIRE \"eg_fpv_autoconstruit\" (plus requis par aucun poste) -2000EUR dans axe eau",
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_indus\") +1380EUR dans axe energie"
],
"axes": {
"eau": {
"sous_total": 6225,
"postes": [
{
"poste_id": "eau_captage",
"typologie_choisie": "captage_descente_directe",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 100,
"force_par_couplage": false
},
{
"poste_id": "eau_filtration",
"typologie_choisie": "filtration_particulaire_simple",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 55,
"force_par_couplage": false
},
{
"poste_id": "eau_stockage",
"typologie_choisie": "stockage_souple_5m3",
"dimension": {
"valeur": 6,
"unite": "m³"
},
"cout_eur_ht": 570,
"force_par_couplage": false
},
{
"poste_id": "eau_distribution",
"typologie_choisie": "distrib_gravitaire",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 250,
"force_par_couplage": false
},
{
"poste_id": "eau_eg_epuration",
"typologie_choisie": "eg_autoepure",
"dimension": {
"valeur": 5,
"unite": "EH"
},
"cout_eur_ht": 5250,
"force_par_couplage": false
}
]
},
"energie": {
"sous_total": 27155,
"postes": [
{
"poste_id": "energie_pv",
"typologie_choisie": "pv_monitoring",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 400,
"force_par_couplage": false
},
{
"poste_id": "energie_solaire_th",
"typologie_choisie": "th_ballon_500",
"dimension": {
"valeur": 500,
"unite": "L"
},
"cout_eur_ht": 600,
"force_par_couplage": false
},
{
"poste_id": "energie_chauffage_bois",
"typologie_choisie": "bois_poele_masse_indus",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 24000,
"force_par_couplage": false
},
{
"poste_id": "energie_emetteurs",
"typologie_choisie": "emet_seche_serviette",
"dimension": {
"valeur": 1,
"unite": "unités"
},
"cout_eur_ht": 400,
"force_par_couplage": false
},
{
"poste_id": "energie_pilotage",
"typologie_choisie": "pil_delesteur",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 375,
"force_par_couplage": false
},
{
"poste_id": "8_couplage",
"typologie_choisie": "bois_conduit_fumee",
"dimension": {
"valeur": 6,
"unite": "ml"
},
"cout_eur_ht": 1380,
"force_par_couplage": true
}
]
},
"alim": {
"sous_total": 803,
"postes": [
{
"poste_id": "alim_etude_fonciere",
"typologie_choisie": "etude_analyse_labo",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 115,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_haute",
"typologie_choisie": "haute_plantation_pose_pro",
"dimension": {
"valeur": 4,
"unite": "plants"
},
"cout_eur_ht": 520,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_moyenne",
"typologie_choisie": "moy_petit_fruit_3L",
"dimension": {
"valeur": 6,
"unite": "plants"
},
"cout_eur_ht": 78,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_basse",
"typologie_choisie": "basse_medicinales_lot30",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 90,
"force_par_couplage": false
}
]
}
}
},
"B — Famille moyenne / par_axe / eau": {
"budget_axe": 14000,
"sous_total": 13595,
"status": "OK",
"couplages": [
"FORCE \"eg_fpv_autoconstruit\" (requis par \"eg_noue\") +2000EUR dans axe eau",
"RETIRE \"eg_fpv_autoconstruit\" (plus requis par aucun poste) -2000EUR dans axe eau",
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau"
],
"postes": [
{
"poste_id": "eau_captage",
"typologie_choisie": "captage_capteur_sol",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 2250,
"force_par_couplage": false
},
{
"poste_id": "eau_filtration",
"typologie_choisie": "filtration_particulaire_simple",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 55,
"force_par_couplage": false
},
{
"poste_id": "eau_stockage",
"typologie_choisie": "stockage_pehd_enterree_5m3",
"dimension": {
"valeur": 8,
"unite": "m³"
},
"cout_eur_ht": 3040,
"force_par_couplage": false
},
{
"poste_id": "eau_distribution",
"typologie_choisie": "distrib_per_bleu_interieur",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1750,
"force_par_couplage": false
},
{
"poste_id": "eau_eg_epuration",
"typologie_choisie": "eg_autoepure",
"dimension": {
"valeur": 5,
"unite": "EH"
},
"cout_eur_ht": 5250,
"force_par_couplage": false
},
{
"poste_id": "4_couplage",
"typologie_choisie": "distrib_kit_double_reseau",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1250,
"force_par_couplage": true
}
]
},
"B — Famille moyenne / par_axe / energie": {
"budget_axe": 14000,
"sous_total": 13455,
"status": "OK",
"couplages": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_masse_diy\") +1380EUR dans axe energie"
],
"postes": [
{
"poste_id": "energie_pv",
"typologie_choisie": "pv_kit_3kwc_string",
"dimension": {
"valeur": 9,
"unite": "kWc"
},
"cout_eur_ht": 7200,
"force_par_couplage": false
},
{
"poste_id": "energie_solaire_th",
"typologie_choisie": "th_ballon_500",
"dimension": {
"valeur": 500,
"unite": "L"
},
"cout_eur_ht": 600,
"force_par_couplage": false
},
{
"poste_id": "energie_chauffage_bois",
"typologie_choisie": "bois_poele_granules",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 3500,
"force_par_couplage": false
},
{
"poste_id": "energie_emetteurs",
"typologie_choisie": "emet_seche_serviette",
"dimension": {
"valeur": 1,
"unite": "unités"
},
"cout_eur_ht": 400,
"force_par_couplage": false
},
{
"poste_id": "energie_pilotage",
"typologie_choisie": "pil_delesteur",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 375,
"force_par_couplage": false
},
{
"poste_id": "8_couplage",
"typologie_choisie": "bois_conduit_fumee",
"dimension": {
"valeur": 6,
"unite": "ml"
},
"cout_eur_ht": 1380,
"force_par_couplage": true
}
]
},
"B — Famille moyenne / par_axe / alim": {
"budget_axe": 7000,
"sous_total": 4360,
"status": "AJOUTER_OPTIONNEL",
"couplages": [],
"postes": [
{
"poste_id": "alim_etude_fonciere",
"typologie_choisie": "etude_analyse_labo",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 115,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_haute",
"typologie_choisie": "haute_plantation_pose_pro",
"dimension": {
"valeur": 4,
"unite": "plants"
},
"cout_eur_ht": 520,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_moyenne",
"typologie_choisie": "moy_haie_biodiv_complete",
"dimension": {
"valeur": 50,
"unite": "ml"
},
"cout_eur_ht": 1100,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_basse",
"typologie_choisie": "basse_planche_bec",
"dimension": {
"valeur": 70,
"unite": "m²"
},
"cout_eur_ht": 2625,
"force_par_couplage": false
}
]
},
"C — Autonomie large / global": {
"total": 77465,
"status": "OK",
"couplages": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_chaudiere_granules\") +1380EUR dans axe energie"
],
"axes": {
"eau": {
"sous_total": 15650,
"postes": [
{
"poste_id": "eau_captage",
"typologie_choisie": "captage_capteur_sol",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 2250,
"force_par_couplage": false
},
{
"poste_id": "eau_filtration",
"typologie_choisie": "filtration_3_corps_uv",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 650,
"force_par_couplage": false
},
{
"poste_id": "eau_stockage",
"typologie_choisie": "stockage_beton_5m3",
"dimension": {
"valeur": 10,
"unite": "m³"
},
"cout_eur_ht": 4800,
"force_par_couplage": false
},
{
"poste_id": "eau_distribution",
"typologie_choisie": "distrib_gravitaire",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 250,
"force_par_couplage": false
},
{
"poste_id": "eau_eg_epuration",
"typologie_choisie": "eg_phytostation",
"dimension": {
"valeur": 7,
"unite": "EH"
},
"cout_eur_ht": 7700,
"force_par_couplage": false
}
]
},
"energie": {
"sous_total": 49960,
"postes": [
{
"poste_id": "energie_pv",
"typologie_choisie": "pv_kit_3kwc_micro",
"dimension": {
"valeur": 9,
"unite": "kWc"
},
"cout_eur_ht": 9000,
"force_par_couplage": false
},
{
"poste_id": "energie_solaire_th",
"typologie_choisie": "th_ballon_500",
"dimension": {
"valeur": 500,
"unite": "L"
},
"cout_eur_ht": 600,
"force_par_couplage": false
},
{
"poste_id": "energie_chauffage_bois",
"typologie_choisie": "bois_chaudiere_granules",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 34000,
"force_par_couplage": false
},
{
"poste_id": "energie_emetteurs",
"typologie_choisie": "emet_vannes_thermo",
"dimension": {
"valeur": 7,
"unite": "unités"
},
"cout_eur_ht": 630,
"force_par_couplage": false
},
{
"poste_id": "energie_pilotage",
"typologie_choisie": "pil_onduleur_hybride",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 4350,
"force_par_couplage": false
},
{
"poste_id": "8_couplage",
"typologie_choisie": "bois_conduit_fumee",
"dimension": {
"valeur": 6,
"unite": "ml"
},
"cout_eur_ht": 1380,
"force_par_couplage": true
}
]
},
"alim": {
"sous_total": 11855,
"postes": [
{
"poste_id": "alim_etude_fonciere",
"typologie_choisie": "etude_analyse_labo",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 115,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_haute",
"typologie_choisie": "haute_haute_tige",
"dimension": {
"valeur": 6,
"unite": "plants"
},
"cout_eur_ht": 540,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_moyenne",
"typologie_choisie": "moy_haie_biodiv_complete",
"dimension": {
"valeur": 100,
"unite": "ml"
},
"cout_eur_ht": 2200,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_basse",
"typologie_choisie": "basse_planche_bec",
"dimension": {
"valeur": 240,
"unite": "m²"
},
"cout_eur_ht": 9000,
"force_par_couplage": false
}
]
}
}
},
"C — Autonomie large / par_axe / eau": {
"budget_axe": 40000,
"sous_total": 18400,
"status": "AJOUTER_OPTIONNEL",
"couplages": [
"FORCE \"distrib_kit_double_reseau\" (requis par \"distrib_per_bleu_interieur\") +1250EUR dans axe eau"
],
"postes": [
{
"poste_id": "eau_captage",
"typologie_choisie": "captage_capteur_sol",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 2250,
"force_par_couplage": false
},
{
"poste_id": "eau_filtration",
"typologie_choisie": "filtration_3_corps_uv",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 650,
"force_par_couplage": false
},
{
"poste_id": "eau_stockage",
"typologie_choisie": "stockage_beton_5m3",
"dimension": {
"valeur": 10,
"unite": "m³"
},
"cout_eur_ht": 4800,
"force_par_couplage": false
},
{
"poste_id": "eau_distribution",
"typologie_choisie": "distrib_per_bleu_interieur",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1750,
"force_par_couplage": false
},
{
"poste_id": "eau_eg_epuration",
"typologie_choisie": "eg_phytostation",
"dimension": {
"valeur": 7,
"unite": "EH"
},
"cout_eur_ht": 7700,
"force_par_couplage": false
},
{
"poste_id": "4_couplage",
"typologie_choisie": "distrib_kit_double_reseau",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 1250,
"force_par_couplage": true
}
]
},
"C — Autonomie large / par_axe / energie": {
"budget_axe": 18400,
"sous_total": 19210,
"status": "OK",
"couplages": [
"FORCE \"bois_conduit_fumee\" (requis par \"bois_poele_hydro\") +1380EUR dans axe energie"
],
"postes": [
{
"poste_id": "energie_pv",
"typologie_choisie": "pv_batterie_plomb_5",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 2000,
"force_par_couplage": false
},
{
"poste_id": "energie_solaire_th",
"typologie_choisie": "th_ballon_500",
"dimension": {
"valeur": 500,
"unite": "L"
},
"cout_eur_ht": 600,
"force_par_couplage": false
},
{
"poste_id": "energie_chauffage_bois",
"typologie_choisie": "bois_poele_hydro",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 13500,
"force_par_couplage": false
},
{
"poste_id": "energie_emetteurs",
"typologie_choisie": "emet_radiateur_acier",
"dimension": {
"valeur": 7,
"unite": "unités"
},
"cout_eur_ht": 1155,
"force_par_couplage": false
},
{
"poste_id": "energie_pilotage",
"typologie_choisie": "pil_routeur_ecs",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 575,
"force_par_couplage": false
},
{
"poste_id": "8_couplage",
"typologie_choisie": "bois_conduit_fumee",
"dimension": {
"valeur": 6,
"unite": "ml"
},
"cout_eur_ht": 1380,
"force_par_couplage": true
}
]
},
"C — Autonomie large / par_axe / alim": {
"budget_axe": 21600,
"sous_total": 11855,
"status": "AJOUTER_OPTIONNEL",
"couplages": [],
"postes": [
{
"poste_id": "alim_etude_fonciere",
"typologie_choisie": "etude_analyse_labo",
"dimension": {
"valeur": 1,
"unite": "forfait"
},
"cout_eur_ht": 115,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_haute",
"typologie_choisie": "haute_haute_tige",
"dimension": {
"valeur": 6,
"unite": "plants"
},
"cout_eur_ht": 540,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_moyenne",
"typologie_choisie": "moy_haie_biodiv_complete",
"dimension": {
"valeur": 100,
"unite": "ml"
},
"cout_eur_ht": 2200,
"force_par_couplage": false
},
{
"poste_id": "alim_strate_basse",
"typologie_choisie": "basse_planche_bec",
"dimension": {
"valeur": 240,
"unite": "m²"
},
"cout_eur_ht": 9000,
"force_par_couplage": false
}
]
}
}
}