Weltkueche: Auflösungs-Aussage korrigiert + Admin-QA kennt correct_for

- Auflösung: „Das ist ein Gericht aus <Land> → Zutaten aus <Land>" nur noch bei
  ECHTEN Signatur-Zutaten (Tiroler Speck etc.). Grundzutaten (Butter, Mehl) bekommen
  die neutrale „aus der Nähe"-Begründung statt der falschen Gericht-Herkunft-Logik.
- admin-weltkueche.html: classify() respektiert jetzt correct_for (zeigt sonst falsche
  Herkünfte, z.B. Mehl AT+DE statt AT+Ungarn).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-08-21 11:50:07 +02:00
parent b353f25b07
commit c3e61f4da7
2 changed files with 7 additions and 2 deletions
+4 -1
View File
@@ -96,7 +96,10 @@ function classify(ingKey, heimat){
var grav = function(c){ return (producers[c].t || 0) / wkDist(heimat, c); };
var realistic = keys.filter(function(c){ return c !== heimat && mrank(producers[c].market) < 2; })
.sort(function(a,b){ return (mrank(producers[a].market)-mrank(producers[b].market)) || (grav(b)-grav(a)); });
var correct = [heimat]; if (realistic[0]) correct.push(realistic[0]);
// Kuratierte Zweitlieferanten (correct_for) übersteuern die Gravitation — wie im Spiel.
var curated = ((ing.correct_for && ing.correct_for[heimat]) || []).filter(function(c){ return C[c] && c !== heimat; });
var correct = curated.length ? [heimat].concat(curated) : [heimat];
if (!curated.length && realistic[0]) correct.push(realistic[0]);
if (correct.length < 2){ var any = keys.filter(function(c){ return c!==heimat && correct.indexOf(c)<0; })
.sort(function(a,b){ return (producers[b].t||0)-(producers[a].t||0); }); if(any[0]) correct.push(any[0]); }
var farP = keys.filter(function(c){ return correct.indexOf(c)<0 && mrank(producers[c].market)===2; });