Paperclip починил сборщик мусора для ИИ-агентов: активные процессы больше не убивают по ошибке
Paperclip, open-source платформа для управления ИИ-агентами на работе, выпустила патч для системы heartbeat-мониторинга. Этот механизм следит, чтобы агент не «завис» и не потерял ход выполнения. Раньше каждый экземпляр heartbeatService хранил список активных адаптеров локально, поэтому сборщик орфанов (orphan reaper), работающий через другой экземпляр, мог принять ещё живую задачу за мёртвую и завершить её с пометкой process_lost.
Особенно уязвимы оказались удалённые (remote) и sandbox-адаптеры — у них нет локального PID или группы процессов, и они могут молчать, пока удалённая команда ещё выполняется. В исправлении активное отслеживание перенесено на уровень модуля, общий для всех экземпляров heartbeatService. Также добавлен регрессионный тест, доказывающий, что задача, запущенная через один сервис, не перехватывается сборщиком из другого.
Риски патча минимальны для однопроцессных серверов Paperclip: просто расширилась область видимости меток активности. В многопроцессных развёртываниях по-прежнему нужна распределённая координация, но это не относится к данному PR. Для долгих или «тихих» sandbox-задач это означает гораздо меньше ложных срабатываний process_lost.