From 0850a139f1470d47e076db4fb0d14d136a986265 Mon Sep 17 00:00:00 2001 From: jaakko Date: Tue, 14 Apr 2026 07:30:55 +0300 Subject: [PATCH] Benchmark: fallback korvaa Poetry-pyproject.toml PEP 621 -versiolla MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Kaikki testatut mallit generoivat [tool.poetry] -muodon vaikka kultainen esimerkki näyttää [project]-muodon. uv sync ei ymmärrä Poetrya → pytest ei asennu → kaatuu. Fallback korvaa rikkinäisen pyproject.toml kultaisella versiolla. --- network-poc/tests/model-benchmark.mjs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/network-poc/tests/model-benchmark.mjs b/network-poc/tests/model-benchmark.mjs index 8205a03..8095898 100644 --- a/network-poc/tests/model-benchmark.mjs +++ b/network-poc/tests/model-benchmark.mjs @@ -338,6 +338,16 @@ async function runPipeline(model, scenario) { result.validationIssues = issues.length; result.fixRounds = fixRound; + // Korjaa pyproject.toml jos malli generoi Poetry-muodon + if (files['pyproject.toml'] && !files['pyproject.toml'].includes('[project]')) { + const goldenPyproject = join(GOLDEN_DIR, 'pyproject.toml'); + if (existsSync(goldenPyproject)) { + const nameMatch = files['pyproject.toml'].match(/name\s*=\s*"([^"]+)"/); + const name = nameMatch ? nameMatch[1] : 'generated-app'; + files['pyproject.toml'] = readFileSync(goldenPyproject, 'utf-8').replace(/name = "[^"]+"/, `name = "${name}"`); + } + } + // Kirjoita tiedostot levylle for (const [fn, content] of Object.entries(files)) writeFileSync(`${dir}/${fn}`, content);