fix: Loop-Erkennung meldet bei „Blocker: Keine“ keinen falschen Schleifenabbruch

Zwei Judge-Runden mit „Blocker: Keine“ und verschiedenen Major-Punkten galten
als „gleicher Blocker zweimal“. loopKey() vergleicht jetzt die Blocker, bei
leerem Blocker-Abschnitt die Major-Punkte, sonst den ganzen Judge-Text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Dieter Schlüter 2026-10-15 02:42:30 +02:00
commit 2acfc85482

View file

@ -38,7 +38,7 @@ test("Fix-Auslösung: PASS WITH CONCERNS gilt nur mit --approve-concerns als bes
});
test("Loop-Erkennung greift auch ohne Blocker-Abschnitt (Fallback auf Gesamttext)", () => {
assert.match(extSource, /parseBlockers\(judgeText\)\s*\|\|\s*judgeText/);
assert.match(extSource, /const currentBlockers = loopKey\(judgeText\)/);
});
test("currentRole wird nach jedem Kommando auf 'idle' zurückgesetzt (kein Persona-Leak in freien Chat)", () => {