Перейти до вмісту
← Назад до блогу

Аудит-лог відповідає лише на одне з чотирьох питань стека довіри

У серпні 2026 я читав огляд KYA-підходів (arXiv 2605.25376) і звіряв із ним власні таблиці викликів інструментів. Огляд фіксує три незакриті розриви: ідентичність агента, походження даних, перевірювані поведінкові контракти. Мої таблиці закривали рівно одне з чотирьох питань.

Screenshot: ескіз журналу викликів, колонки call_id, mandate_id, depth, spend_cap, ts.

Чотири питання

IDENTITY   хто діє?
AUTHORITY  хто дозволив і в яких межах?
EVIDENCE   що сталося?
ASSURANCE  чи було правильно і хто платить за помилку?

Audit trail, lineage, redaction, retention закривають третє питання. Observability-платформи додали ці поверхні у 2025–2026, ціни впали, аудит став commodity. На інші три питання готових відповідей немає.

Ідентичність: ім'я, яке переживе ротацію ключа

Агенту потрібен стабільний ідентифікатор, не прив'язаний до одного API-ключа чи гаманця. W3C DID і Verifiable Credentials выиграли війну форматів, ERC-8004 додала on-chain passport. Якщо логуєте виклики за id ключа, кожна ротація переписує історію. Ці стандарти ставлять поруч гроші та правила: дизайнерський бік цієї межі розбираю у пості Дизайн для Web3: де довіра зустрічається з регуляцією.

Повноваження: мандат, а не політика в конфігу

Мандат це підписаний артефакт, який можна пред'явити третій стороні: хто видав, що дозволено, коли спливає. Ланцюг Google AP2 (Intent → Cart → Payment) переноситься як W3C VC, UCAN, ZCAP-LD і macaroons розв'язують ту саму задачу у capability-системах. Схема на один файл: tool_calls.mandate_id посилається на рядок мандата, scope лежить у JSONB (дозволені інструменти, ліміт витрат, вікно часу). Після цього рядок approved у базі стає посиланням на підписаний документ.

Ланцюг делегування: так не вміє ніхто

Людина → агент A → агент B → агент C. Хто дозволив фінальний виклик? Огляд стандартів ідентичності (arXiv 2604.23280) відповідає: жодна production-система. Робочий ланцюг тримає три властивості: кожне ланко підписує, кожне ланко звужує scope, відклик у корені каскадом гасить усі листя. Теорію можна не розв'язувати. Достатньо чесно записувати ланцюг і вміти відповісти «depth=3, root principal=P». Зараз так не вміє майже ніхто.

Перевірність: диспути і кнопка стоп

Розрахунки x402 остаточні, chargeback немає. Коли інструмент узяв $0.05 і повернув сміття, сьогодні не відбувається нічого. Потрібні три частини: escrow із таймаутом, протокол диспуту з доказами з журналу, автоматичний арбітраж для мікроплатежів, бо за один цент вручну не сперечаються. Журнал перестає бути папером і стає доказом. Всередині інтерфейсу дешева версія цього доказу: видима впевненість моделі. Розбираю у пості Glass-box AI: показую впевненість моделі щоб люди довіряли.

Друга половина assurance: зупинка. Агента, який збожеволів о третій ночі, можна спіймати лише стопом до наступного виклику, тому затримка відклику — метрика, яку можна продавати: секунди або хвилини.

Нудне беріть готовим

Ротація ключів: GCP KMS. Trusted time: NTP плюс зовнішній сервіс штампів, без підписаних міток часу порядок подій недоказовий. Адаптери AP2, ERC-8004, MCP-I, Visa TAP, Mastercard Agent Pay: тонкі, по одному на протокол, поки стандарти воюють. Jurisdiction resolver: спершу звичайна таблиця правил. Таку таблицю я тримаю поза моделлю: навіщо їй окремий шар розбираю у пості Чому вашому ШІ-агенту потрібен комплаєнс-шар.

Я збираю agent-facing поверхні й тримаю докази на кожен виклик. Форма контакту є на сайті.

Проєкт: Дашборд комплаєнсу для ШІ-команд

Прочитали? До справи

Ці методи я застосовую на платних проєктах. Подивіться, у скільки це обходиться.