Tests : trace du bench vérifiée sans longueur de prompt en dur

bail_travail_annexe_et_trace attendait prompt_n = 2036 : la longueur du
dernier prompt suit le corpus de code du bench, c'est-à-dire l'UI embarquée
(internal/loki/ui/index.html). Toute retouche de l'interface cassait donc
ce test (ci / rust rouge après l'ajout de la pause des téléchargements et du
choix de la seconde carte Strata). Le test vérifie désormais la forme de la
trace relayée (prompt_ms = prompt_n / 2, débits du faux moteur) pour un
prompt non vide. Le journal de parité du bench, lui, se régénère avec
LOKI_PARITY_UPDATE=1 comme les autres.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
MichaelandClaude Opus 5.5 committed 2026-10-16 15:36:47 +02:00
1 parent 0ef2ed72f5
commit d22a087d8e
1 file changed
+11 -4
+11 -4
View File
@@ -469,12 +469,19 @@ async fn bail_travail_annexe_et_trace() {
*bn.go.side_jobs.lock().unwrap(),
vec!["begin 1".to_string(), "end 1 true".to_string()]
);
// La longueur du prompt suit le corpus de code, c'est-à-dire l'UI
// embarquée : la vérifier en dur cassait le test à chaque retouche de
// l'interface. On vérifie la forme de la trace.
let perfs = bn.go.bench_perfs.lock().unwrap().clone();
assert_eq!(perfs.len(), 1, "{perfs:?}");
let n = perfs[0]["prompt_n"].as_i64().unwrap_or(0);
assert!(n > 0, "{perfs:?}");
assert_eq!(
*bn.go.bench_perfs.lock().unwrap(),
vec![json!({
"prompt_n": 2036, "prompt_ms": 1018.0, "prompt_per_second": 2000.0,
perfs[0],
json!({
"prompt_n": n, "prompt_ms": n as f64 / 2.0, "prompt_per_second": 2000.0,
"predicted_n": 300, "predicted_per_second": 50.0,
})]
})
);
// La clé de l'API locale accompagne les requêtes du bench.
let auth = bn.fake.lock().unwrap().auth.clone();