Задача: Новая система планирования

Новая система планирования

05.10.2026fi1osof.ru

На самом деле это старая система планирования (я ее не раз продумывал и делал даже пару рабочих прототипов, но она слишком много тонкостей имеет, из-за чего я ее раньше так и не довел до ума).

Ворклоги

После нескольких часов экспериментов с новой системой планирования удалось существенно лучше понять как ограничения текущей реализации, так и ограничения самого подхода к разработке через AI-агента. Часть решений агент реализовал удачно, однако в целом система пока не соответствует моим требованиям, и дальнейшее локальное исправление отдельных проблем перестало выглядеть эффективным.

Особенно показательной оказалась попытка регресса и упрощения системы. Агенту было явно указано, какие части реализации следует удалить или упростить, но вместе с ними он затронул и другие элементы, которые должны были сохраниться. Это показало важное ограничение: агент способен работать с отдельными фрагментами и локальными зависимостями, но хуже удерживает границу между целевым упрощением и разрушением связанного поведения. Когда система состоит из нескольких взаимосвязанных подсистем, локально разумные изменения могут нарушать связи, которые не были явно описаны в текущем контексте.

Из этого следует более общий вывод о разработке с AI. Если агент начинает многократно исправлять последствия собственных предыдущих изменений, продолжение такого цикла быстро приводит к накоплению кода, обходных решений и неявных зависимостей. В какой-то момент проблема уже заключается не в конкретном баге, а в утрате простой и проверяемой модели системы. Попытка поручить агенту ещё и глубокий рефакторинг в таком состоянии несёт риск дальнейшего роста сложности: он может корректно оптимизировать отдельные участки, не понимая, какие свойства всей системы должны остаться неизменными.

Поэтому требуется переосмыслить этапы разработки. Вероятно, основной объект контроля должен смещаться с внутренней реализации на внешнее поведение системы: требования, инварианты, сценарии, тесты и связи между подсистемами. Если реализация перестаёт удовлетворять этим требованиям и агент не может быстро вернуть её в корректное состояние, может быть выгоднее не продолжать бесконечный repair-loop, а зафиксировать нужное поведение, упростить модель и пересобрать реализацию заново. Иными словами, код в таком процессе стоит рассматривать скорее как заменяемый артефакт, а не как актив, который необходимо любой ценой сохранять и постепенно чинить.

Эксперимент оказался полезен именно тем, что выявил предел локального AI-рефакторинга: агенту трудно самостоятельно определить, где заканчивается допустимое упрощение и начинается разрушение системных связей. Следующий этап работы стоит строить вокруг более явной спецификации поведения и границ подсистем, а не вокруг дальнейшего исправления уже накопившейся реализации.