Кейси · Перевірка застосунку
Інтернет-магазин, зібраний ШІ: перевірено й виправлено
Зразок замовлення: магазин вигаданий, дані тестові. Його зібрано в Claude Code для цього кейсу; кожна знахідка, тест і виправлення — справжній прогін.
Мета
Застосунки, зібрані описом для ШІ, мають готовий вигляд задовго до того, як їм можна довірити гроші. Питання: що знайде перевірка в магазині, який нормально проходить звичайний перегляд і який ШІ здав як готовий?
Складність
Там, куди зазвичай дивляться, магазин був у порядку: ціни, залишки й суми сходилися, чужі дані ззовні прочитати було неможливо. У відповідях ШІ, що його збирав, стояло: «Orders can't be placed twice». Помилки виявлялися лише за обриву зв'язку, зайвої цифри в сумі або коли дві дії збігалися в часі.
Рішення
Копія магазину працювала локально на тестових даних; оплата карткою — через заглушку Stripe і один раз через Stripe у тестовому режимі. Спершу автоматична перевірка правил доступу, потім чотири незалежні рев'ю в окремих сесіях, які не бачили роботи одна одної: ззовні з публічним ключем, код і база, власник і покупці в браузері, встановлений застосунок без мережі. Кожна знахідка стала тестом, який падає на магазині в тому вигляді, як його здано; кожне виправлення потім перевіряли сесії, які його не писали.
Результат
26 знахідок: 3 високі, 9 середніх, 14 низьких. Після обриву зв'язку наступному покупцеві на тому самому пристрої показувалося чуже замовлення з адресою; власник міг записати повернення €500 за замовленням на €29,99; покупець міг заплатити карткою €27,99 за вже скасоване замовлення й не отримати гроші назад. На магазині в тому вигляді, як його здано, падало 40 тестів із 48, після виправлень — жодного. 22 знахідки виправлено; 4 низькі залишено власникові, з причинами. Рев'ю виправлень знайшли ще проблеми, частину внесли самі виправлення; ці кола до цифр не входять. Один магазин, зібраний один раз: цифри описують цей магазин, а не частку для таких застосунків.
Послуга
Така сама перевірка для вашого застосунку
Ви надсилаєте код, а не паролі. Кожна знайдена проблема стає тестом, а кожне виправлення перевіряється на те, що воно зламало.



