Свидетель ожидания пинит саму сверку, а не её обвязку

Мутант, выкидывающий сравнение ответа REST с новой вершиной, выживал: проверка
смотрела на вызов `gh api`, токен, порядок шагов и текст отказа — всё это
мутант оставляет на месте, а цикл после него выходит на первой же итерации, и
ожидание становится декорацией.

Issue: #539
User-Visible: no
This commit is contained in:
Codex
2026-09-12 13:54:38 +03:00
parent ccfd2565a7
commit c291384b7a
+4
View File
@@ -763,5 +763,9 @@ test('конвейер: ребейз не заканчивается, пока
const wait = rebase.indexOf('git api') >= 0 ? -1 : rebase.indexOf('gh api');
const fetchLocal = rebase.indexOf('git fetch -q origin "+refs/heads/$BRANCH');
assert.ok(wait > 0 && wait < fetchLocal, 'ожидание стоит после push и до конца шага');
// Сама сверка, а не только её обвязка: без этой строки цикл выходит на первой
// же итерации, и ожидание становится декорацией.
assert.match(rebase, /if \[ "\$seen" = "\$after" \]; then settled=true; break; fi/,
'ответ REST сверяется с новой вершиной');
assert.match(rebase, /ссылка \$BRANCH за минуту не стала указывать/, 'не доехавшая ссылка — отказ, а не молчание');
});