Заміна коду як джерела істини артефактами ідеального стану
Деніел Місслер пропонує підхід розробки на основі специфікацій, замінюючи код артефактами ідеального стану як первинним джерелом істини під час розробки з ШІ. Перенесення ітерацій у структурований текст і критерії оцінки усуває біг по колу навколо недосконалого коду.

Чому це важливо
ШІ ефективно виконує завдання, проте більшість невдач виникає через проблеми з артикуляцією наміру. Фіксація вимог у живих артефактах специфікації запобігає марним спробам покращувати недосконалий згенерований код.
TL;DR
- 01Код є абстракцією наміру; письмовий текст забезпечує вищу точність передачі ідеї для ШІ.
- 02Артефакт ідеального стану (ISA) структурує проєкт на Ідеальний стан, Обмеження, Рішення та Критерії.
- 03Критерії ідеального стану (ISCs) слугують водночас інструкціями для генерації коду та стендом автоматизованого тестування.
Ключові факти
- Методологія
- Артефакт ідеального стану (ISA)
- Спектр оцінювання
- Assert -> запитання System 1 -> Rubric/LLM-as-a-Judge
Проблема сприйняття коду як джерела правди в розробці з ШІ
Сприйняття кодової бази як авторитетного джерела істини створює труднощі під час взаємодії з ШІ. Код є лише абстракцією та репрезентацією наміру, а не самим наміром. Якщо модель видає невдалий код, спроба вносити правки безпосередньо у вихідні файли призводить до бігу по колу навколо недосконалої реалізації замість уточнення вимог.
Архітектура артефакту ідеального стану (ISA)
Підхід ISA фіксує контекст у чотирьох взаємопов'язаних розділах:
1. Ідеальний стан (Ideal State): Детальний текстовий опис поведінки системи та користувацького досвіду, сформований за допомогою інтерактивних навичок на кшталт Discuss або /grill-me. 2. Обмеження (Constraints): Негативні специфікації, які явно забороняють певні рішення чи дії. 3. Рішення (Decisions): Журнал змін із датами та аргументацією, чому вимоги змінилися під час розробки. 4. Критерії ідеального стану (ISCs): Атомарні функціональні вимоги, що слугують водночас ціллю побудови та тестовим стендом.
# Артефакт ідеального стану (ISA): Планувальник меню
## Ідеальний стан
CLI-утиліта, що генерує щотижневий список продуктів за калоражем.
## Обмеження
- Без зовнішніх СУБД; зберігати дані у локальних JSON-файлах.
- Жодних інгредієнтів з арахісом.
## Рішення
- 2026-03-29: Відмова від SQLite на користь JSON для спрощення середовища.
## Критерії ідеального стану (ISCs)
- [ ] ISC-1: Вивід містить рівно 7 рецептів вечерь.
- Оцінка: assert len(output.dinners) == 7
- [ ] ISC-2: Усі рецепти виключають арахіс.
- Оцінка: LLM-as-a-Judge перевірка списку інгредієнтівПодвійний цикл ітерацій
Замість виправлення коду розробник веде два цикли: уточнює намір у файлі ISA та генерує нову реалізацію, перевіряючи її за допомогою критеріїв оцінювання.
Спробуй за 2 хвилини
## Ideal State Criteria (ISCs)
- [ ] ISC-1: Output contains exactly 7 dinner recipes.
- Eval: assert len(output.dinners) == 7
- [ ] ISC-2: All recipes strictly exclude peanuts.
- Eval: LLM-as-a-Judge allergy audit over ingredient listmarkdown
✓ Коли використовувати
- Під час розробки складних систем з ШІ, де пряме редагування коду призводить до повторюваних регресій.
✕ Коли НЕ варто
- Для швидких одноразових скриптів, де побудова оцінювальних стендів створює надлишкові витрати часу.
Що зробити сьогодні
- Створіть документ артефакту ідеального стану з критеріями та обмеженнями перед генерацією коду за допомогою ШІ.
- Оновлюйте розділ рішень у специфікації щоразу, коли зворотний зв'язок від коду уточнює початковий намір.