{
  "paretoFront": ["monolithe", "modulaire", "microservices", "serverless"],
  "tradeoffs": [
    {"id":"monolithe","explanation":"[80,100,5,1,5]. Complexite minimale (1). Face au modulaire: latence 80<85, cout 100<110, indisponibilite egale 5, complexite 1<2, mais difficulte d'evolution 5>2."},
    {"id":"modulaire","explanation":"[85,110,5,2,2]. Face au monolithe, evolution plus facile (2<5) contre latence, cout et complexite plus eleves. Face aux microservices, cout 110<400 et complexite 2<8, mais latence 85>50, indisponibilite 5>2 et evolution 2>1."},
    {"id":"microservices","explanation":"[50,400,2,8,1]. Minima de latence (50), indisponibilite (2) et difficulte d'evolution (1), au prix du cout maximal (400) et de la complexite maximale (8)."},
    {"id":"serverless","explanation":"[120,60,3,5,3]. Cout minimal (60), latence maximale (120). Face au monolithe et au modulaire: cout et indisponibilite inferieurs, latence et complexite superieures. Evolution 3 meilleure que monolithe 5 mais moins bonne que modulaire 2."}
  ],
  "explanation":"Tous les criteres sont minimises. Une ligne domine une autre si chacune de ses cinq valeurs est inferieure ou egale et au moins une strictement inferieure. Comparaison exhaustive, sans somme ponderee: les quatre premiers candidats sont non domines. Monolithe domine fragile: 80<100, 100<150, 5<7, 1<3, 5<6. Modulaire domine aussi fragile: 85<100, 110<150, 5<7, 2<3, 2<6. Aucune contrainte n'est presente; aucun constrainedFront n'est donc requis. Ces conclusions portent exclusivement sur les valeurs hypothetiques fixes, sans affirmer des performances reelles ni choisir de gagnant universel.",
  "diagnostic_matrix": [
    {"hypothesis":"monolithe","predictedSignals":[80,100,5,1,5],"contradictoryObservations":"Une mesure comparable contredisant ce vecteur invaliderait son interpretation empirique; aucune observation fournie.","discriminatingMeasurement":"Mesurer les cinq dimensions sur la meme charge et le meme horizon, notamment complexite et evolution face au modulaire."},
    {"hypothesis":"modulaire","predictedSignals":[85,110,5,2,2],"contradictoryObservations":"Absence de gain d'evolution face au monolithe contredirait le compromis empirique; aucune observation fournie.","discriminatingMeasurement":"Comparer effort d'une meme migration de schema et changement d'API, puis latence, cout et indisponibilite a charge identique."},
    {"hypothesis":"microservices","predictedSignals":[50,400,2,8,1],"contradictoryObservations":"Absence de gains de latence, disponibilite ou evolution contredirait ces predictions; aucune observation fournie.","discriminatingMeasurement":"Comparer latence, indisponibilite, facture et effort operationnel avec dependances distribuees sous la meme charge."},
    {"hypothesis":"serverless","predictedSignals":[120,60,3,5,3],"contradictoryObservations":"Cout non minimal ou latence non maximale contredirait le classement empirique; aucune observation fournie.","discriminatingMeasurement":"Mesurer cout et distribution des latences, demarrages a froid inclus, sur la meme charge et le meme horizon."},
    {"hypothesis":"fragile","predictedSignals":[100,150,7,3,6],"contradictoryObservations":"Une dimension strictement meilleure que monolithe ferait disparaitre cette preuve de dominance; aucune observation fournie.","discriminatingMeasurement":"Comparer les cinq dimensions au monolithe et recalculer la dominance composante par composante."}
  ],
  "schemaConstraints": {"candidate":"[id,latence,cout,indisponibilite,complexite,evolution-difficulte]","directions":"minimize all","migration":"Conserver IDs uniques, ordre des dimensions et valeurs numeriques finies. Tout changement de dimension, valeur ou contrainte exige un recalcul complet; si contrainte, filtrer les admissibles avant redominance."},
  "uncertainties":["Aucune mesure de production, unite ou protocole de mesure fourni.","Aucun triplet d'hypotheses ni factorialCell runtime explicite fourni; aucune cellule inventee.","Les signaux du diagnostic sont conditionnels; le front de la fixture est deterministe."],
  "executionLimits":{"scope":"pareto-difficile","externalMeasurements":false,"otherChambersRead":false,"promotion":false}
}
