Промоційний шлюз: агент ніколи не затверджує власне замовлення на роботу
Коли агент пише завдання для іншого агента, хтось має вирішити, чи можна його запускати. Зробіть затвердження окремою дією конкретної людини із записом у журнал, усталено вимкненим, і зарезервуйте весь бюджет до першого запиту. Прапорець у файлі сервісу — це не затвердження.
🎯 Для Тімлід, який дозволяє одному агенту готувати роботу для іншого
- Чому самозатвердження знецінює саме замовлення на роботу
- Як підготовка, промоція й постановка в чергу залишаються окремими кроками
- Чому бюджет усієї задачі резервують заздалегідь
🚦 Два агенти, один цикл
Поширена схема: старший агент пише замовлення на роботу для дешевшого агента, і замовлення потрапляє в чергу. Якщо та сама система, яка пише замовлення, може його й затвердити, то ніхто нічого не вирішив. Помилка в замовленні йде прямо у виконання, а рахунок не забарюється.
🧩 Три окремі кроки
У нашій схемі цикл має три кроки, кожен — окрема команда.
- Підготувати. Старший агент пише замовлення: специфікацію для виконавця й контракт приймання, в одному файлі, з полем
approved, усталено false. - Промотувати. Названа людина затверджує файл. Це окрема дія, записана в журнал: хто, коли і який файл. Агент не може зробити це за себе.
- Поставити в чергу. До черги потрапляє лише затверджений файл.
Глобальний перемикач у визначенні сервісу, який вмикає диспетчер, — не затвердження. Наша проєктна нотатка прибирає перемикач, що робив саме це, бо прапорець на весь процес затверджує все одразу й нічого не фіксує про те, хто вирішив.
💵 Резервуйте всю задачу
Друге правило — про гроші. Перевірка, що залишок балансу більший за нуль, дозволяє одній дорогій задачі з'їсти все. Натомість бюджет усієї задачі резервують до першого запиту. Тайм-аут, убитий процес або помилка залишають списання в стані «невизначене» й блокують нові задачі, доки людина його не звірить. Рахується вся траєкторія: цикли викликів інструментів, роздуми, проходи критика, повторні спроби й запасні варіанти, а не лише остання відповідь. Невідома вартість — не нуль.
📊 У цифрах
Кожен токен задачі в нашому транспорті прив'язаний до відбитка пакета задачі, і від 2026-09-21 видано 1 415 токенів. Транспорт зафіксував 4 резервування. Обидва показники пораховані з бази даних 3 листопада 2026, 21:53 UTC.
🛠️ Практика: додайте шлюз до своєї черги
- Додайте поле
approvedу формат замовлення на роботу й усталено поставте false. - Напишіть команду промоції: їй потрібні файл, ім'я людини й причина. Вона дописує рядок у журнал і перемикає поле.
- Зробіть так, щоб черга відхиляла будь-яке замовлення, у якого поле false або хеш відрізняється від записаного в журналі.
- Приберіть усі глобальні перемикачі «увімкнути диспетчеризацію» з ваших визначень сервісів.
- Резервуйте бюджет замовлення під час постановки в чергу, а не під час запуску. Відмовляйтеся ставити в чергу, якщо ліміт буде перевищено.
- Позначайте тайм-аути й убиті запуски як невизначені та зупиняйте лінію, доки хтось їх не звірить.
✅ Перевірте себе
- Змініть затверджений файл на один символ. Черга відхилить його, бо хеш змінився.
- Спробуйте промотувати з порожнім ім'ям. Не вийде.
- Запустіть диспетчер без затверджених замовлень. Він нічого не зробить.
- Візьміть будь-яке замовлення за минулий тиждень і знайдіть, хто й коли його затвердив.
🚧 Коли це не працює
- Затвердження на автоматі. Якщо одна людина затверджує п'ятдесят замовлень за хвилину, їх ніхто не читає. Обмежте розмір пакета.
- Повільні лінії. Затвердження додає хвилини. Для крихітних задач лише на читання розгляньте постійне правило замість рішення щодо кожного замовлення.
- Затвердження не того. Людина бачить підсумок, а не завжди виклики інструментів. Показуйте у запиті хеш файлу й бюджет.
- Один затверджувач. Коли ця людина відсутня, лінія зупиняється. Призначте заступника.
- Агенти, що редагують журнал. Тримайте журнал затверджень поза будь-яким шляхом, куди агент може писати.
📊 Докази
| Що ми вимірювали | Токени задач, прив'язані до відбитків пакетів, і резервування бюджету в базі даних нашого транспорту |
| Коли | 3 листопада 2026, 21:53 UTC |
| Артефакт | Таблиці токенів задач і резервувань, а також проєктна нотатка для ізольованого виконавця в нашому приватному репозиторії |
| Обмеження | Підрахунки показують, що шлюз використовується, а не те, як часто промоцію було відхилено |
➡️ Далі
Пишіть саме замовлення разом із Розробка на основі специфікацій з наявними пакетами задач, а з застряглої лінії виходьте через Відновлення після невдалого, застряглого чи невизначеного запуску.
Джерела
- Розробка на основі специфікацій з наявними пакетами задач: написання замовлення.
- Відновлення після невдалого, застряглого чи невизначеного запуску: застряглі лінії.
- Витрати, бюджети й ліміти: бюджети.
- Політика використання AI та реєстр, які може впровадити невелика команда: кому що можна робити.
🔗 Зв'язки статті
Відкрити повний граф знань ↗Зв’язки опублікованих статей. Виберіть вузол, щоб відкрити статтю біля заголовка.
Зв’язки статей · клавіатура / текст
Та сама тема
- Векторна база — це мапа, а не джерело: що ми з'ясували про пошук
- Коли невідомо, скільки коштував виклик моделі: заморожування, потім звіряння
- Розбиття великого завдання для дешевої моделі: урок про 24 000 байтів
- Навички, інструменти MCP і правила: три способи дати агенту можливості
- Вісім помилок з shell і git, яких припускалися наші агенти, і правило для кожної
- Кілька агентів, один репозиторій: правила володіння з реальних інцидентів
Наступні кроки
Пов'язані матеріали
Векторна база — це мапа, а не джерело: що ми з'ясували про пошук
Векторна база знаходить уривки, близькі за змістом до вашого запиту. Вона не знає, які з них правдиві чи актуальні. Сприймайте кожен результат як вказівник: відкрийте названий файл, перевірте хеш і беріть числа з артефакту, а не зі знайденого абзацу.
AI agents and MCP explainedКоли невідомо, скільки коштував виклик моделі: заморожування, потім звіряння
Іноді виклик моделі перевищує час очікування, і ви не знаєте, чи провайдер списав кошти. Ніколи не записуйте це як нуль. Позначте витрату як непевну, зупиніть нові платні виклики й доручте названій людині звірити її з випискою провайдера. Виняток — відмови, що сталися до генерації.
AI agents and MCP explainedРозбиття великого завдання для дешевої моделі: урок про 24 000 байтів
Дешева модель добре дає раду з однією невеликою чітко окресленою роботою, але погано з великим нагромадженням. Ми обмежуємо завдання 24 000 байтами і відмовляємо більшим ще до виклику моделі. Діліть на одиниці — один файл або одна країна на завдання — і перевіряйте розмір до початку.
AI agents and MCP explainedНавички, інструменти MCP і правила: три способи дати агенту можливості
Агенти отримують можливості по-різному. Правило обмежує те, що вони роблять, навичка підказує, як виконати роботу, а інструмент MCP дозволяє викликати функцію. Кожен із трьох має власний ризик, тож фіксуйте всі три в реєстрі й перевіряйте тестом, що нічого не існує поза ним.
💬 Коментарі