Модуль 5 · Урок 20
Defect lifecycle, confirmation і regression
Workflow зберігає ownership та evidence від discovery до closure. Закриття означає не «developer написав fixed», а перевірене рішення на exact build плюс контроль пов’язаного regression risk.
Status — керований перехід
Допустимі також duplicate, rejected/not-a-defect, deferred, blocked і reopened. Кожен transition має actor, time, reason і evidence; не перезаписуйте history.
Confirmation відтворює первинну проблему
Запустіть original failing test і minimized reproducer на заявленому fix build. Перевірте expected state та forbidden side effects. Якщо fix не працює або anomaly повернулася — reopen із новим evidence, не створюйте duplicate ticket без причини.
Regression перевіряє зону зміни
Fix idempotency може зачепити single submit, retry after timeout, concurrency, inventory reservation, response contract і business events. Regression scope походить з impact analysis: changed component, interfaces, shared code/data і critical user flows.
Confirmation не замінює regression
Перше доводить, що reported defect усунуто; друге шукає небажані наслідки change в пов’язаних областях.
Closure і learning
- Fix build/config названі.
- Original і minimized tests passed.
- Scoped regression пройдена або residual risk прийнятий owner.
- Evidence, release note і linked tests оновлені.
- Root cause позначено лише після engineering analysis.
- Повторюваний pattern додано до checklist/automation/process improvement.
Практика і проєкт
Завершіть `lifecycle-log.csv` та `confirmation-regression.csv`, потім зберіть портфоліо з трьох redacted reports.
Офіційні джерела
Закріпіть матеріал уроку
Три сценарні питання. Для зарахування уроку потрібно дати щонайменше дві правильні відповіді.