Change dsh-sdd перенесён в openspec/changes/archive/2026-10-24-dsh-sdd, дельта dsh-sdd добавлена в openspec/specs/dsh-sdd/spec.md (7 требований). Co-Authored-By: DeepSeek Harness <noreply@deepseek.com>
1.7 KiB
1.7 KiB
Review: Task 2 (median)
Ревьюер проверял поведение по SPEC.md независимо, не полагаясь на concerns
implementer'а.
Проверенные требования SPEC.md
| Требование | Результат |
|---|---|
| Нечётная длина — средний элемент | OK: median([3,1,2]) == 2.0 |
| Чётная длина — среднее двух средних | НАРУШЕНО |
Пустой список — ValueError("empty") |
OK: тип и сообщение совпадают |
Не мутирует values |
OK: sorted() копирует, вход не меняется |
Возвращает float |
OK |
Тесты
python3 -m unittest discover -s tests → Ran 4 tests ... OK (exit 0).
4 теста проходят, но чётная длина не покрыта, поэтому нарушение спеки не
ловится.
Findings
T2.1—src/stats.py:15— при чётной длинеmedianвозвращает верхний средний элементfloat(xs[n // 2]), аSPEC.md:15требует среднее двух средних:median([1,2])→2.0вместо1.5,median([1,2,3,4])→3.0вместо2.5. Исправить: для чётногоnвернутьfloat(xs[n//2 - 1] + xs[n//2]) / 2.T2.2—tests/test_stats.py— нет теста на чётную длину, поэтому нарушениеT2.1не ловится. Добавить тестmedian([1,2]) == 1.5(иmedian([1,2,3,4]) == 2.5) по требованиюSPEC.md:15.
VERDICT: CHANGES_REQUESTED
Находки: T2.1, T2.2.