Skip to main content
Glama
HanbeenMoon

agent-failure-archive

by HanbeenMoon

Архив отказов агентов

186 постмортемов за восемь месяцев продакшн-эксплуатации мультисессионной ИИ-агентной системы. Оплата за каждый вызов через x402. Без регистрации, без API-ключа, без подписки.

Работает: https://desktop-ai2ata5-1.tailfeb765.ts.net Попробуйте бесплатно прямо сейчас: /sample

Публичные репозитории показывают код, который работал. Это другая половина: обвязка, которая выглядела корректной, проходила ревью, работала неделями и всё это время была мертва.


Зачем это существует

Дорогие отказы в агентных системах — не громкие. Крэш чинят за час. Дорогие отказы молчаливы: ремонтная процедура, подсоединённая к сигналу, который никто не читает; наблюдатель, выходящий с кодом 0 после того, как его сессия истекла; детектор, дающий одинаковый результат и в здоровой, и в сломанной системе.

Такие отказы почти никогда не записывают, потому что для этого нужно эксплуатировать систему достаточно долго, чтобы она тебя укусила, и вести записи. Этот архив — такие записи.

Настоящая запись (кейс adr-136):

Широковещательный вызов завершился внутренней ошибкой. Вызывающая сторона увидела ошибку. Пять принимающих сессий проверяли только наличие подтверждения, поэтому не увидели ничего и повторяли запросы бесконечно. Семь сессий, пишущих heartbeat, плюс шторм повторных попыток обрушили базу данных в конкуренцию за блокировки.

Корневая причина: ошибка была видна отправителю и невидима получателю. Асимметричная видимость ошибки, а не сам баг широковещательной рассылки.

Из 186 кейсов в 174 есть резервные измеренные доказательства (длительности, количества, частоты) и 155 называют корневую причину, а не только симптом.


Related MCP server: FastMCP Runtime MCP

Измерительная часть

Восемь месяцев эта система смотрела на один вопрос: можно ли измерить, как язык одного человека отклоняется от общего языка, не сводя человека к оценке?

В основном она проваливалась — и провалы были интереснее самой цели. 107 из 186 случаев — измерительные провалы: детекторы, возвращающие одинаковый выход при наличии и отсутствии сигнала; группы «доза–реакция», где один и тот же параметр оказывался двумя разными воздействиями; положительные контроли, которые ни разу не запускались; корпус, оказавшийся в 2,3 раза меньше заявленного числа файлов; инструмент, который продолжал измерять сам себя и выдавал результат как находку.

Именно эти случаи стоят за /research. Если вы строите что угодно, претендующее на измерение человека — стиль, личность, авторство, соответствие профилю — перед вами каталог случаев, где это притязание разрушается до того, как мир замечает поломку.


Эндпоинты

Маршрут

Цена

Что вы получаете

GET /

free

метаданные сервиса

GET /sample

free

два полных кейса без оплаты

GET /contents

free

заголовки всех кейсов, с тегами по той ловушке, которую каждый иллюстрирует. Фильтр: ?theme=

GET /audit?claim=<conclusion>&evidence=<what you measured>

$0.02

девять проверок против самообман, применённых к вашему собственному утверждению

GET /search?q=<symptom>

$0.01

3 кейса: Симптом, исходная причь, фикс, предотвращение, подтверждения

GET /brief?action=<what you are about to do>

$0.05

ппре-флайт по рискам + чек-лист на 5 кейсах

GET /research?q=<topic>

$0.25

те самые 107 измерительных провалов из вышеописанного

GET /archive

$1.00

все кейсы, один ответ, один платёж, этот контент ваш

Оплата: USDC в сети Base (eip155:8453), через безключевой посредник. Подходит любой x402-клиент, а в браузере вместо сырого JSON появляется pay wall с подключением кошелька.

# free, no wallet needed
curl https://desktop-ai2ata5-1.tailfeb765.ts.net/sample

# paid, via any x402-capable client
curl https://desktop-ai2ata5-1.tailfeb765.ts.net/search?q=silent+failure+cron

/audit — то, к чему стоит тянуть перед тем, как вы написать «мы обнаружили, что». Отдайте ему ваш вывод и то, что вы на самом деле измерили, и он вернёт, какие проверки ваше утверждение задевает: null-результат без положительного контроля, группы воздействия с тем же параметром, но не тем же лечением, знаменатель, считающий одну и ту же единицу повторно, exit-0 процесс, который ничего не сделал, кэш-отчёт, прочитанный как состояние. Девять проверок — каждая один раз в этой системе в настоящем обладалась, с реальными числами, зафиксированными в тот момент.

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

Вставьте абзац, а не аккуратное заявление. И /precheck, и /audit принимают text= вместо claim=. Дайте им кусок ваших находок, и они выделят пункты, которые что-то утверждают, и проверят каждое из них отдельно:

curl -sG https://desktop-ai2ata5-1.tailfeb765.ts.net/precheck \
  --data-urlencode "text=We ran the new ranker on 40 sampled queries and found no significant
difference. The watcher is healthy: it exits 0 every run. Our corpus contains 4279 documents,
2x the previous release."

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

/brief — к нему подходит перед чем-то необратимым: опишите действие простыми словами — получите способы, которые тот класс действий в реальности ломается, плюс строку профилактики, которую дал каждый инцидент.

/contents — это каталог. Нельзя по двум примеров судить, стоит ли весь корпус доллара, потому тут только все 186 заголовков, каждый с тегом той из девяти ловушек, которые он иллюстрирует, и ничего больше. Распределение на сейчас: 108 кейсов читают кэш-снимок как состояние, 83 считают повторно один и тот же субъект в знаменателе, у 71 создана конструкция без единого слышащего вызывающей стороны, и 36 процессов вышли с кодом 0, не сделав ничего. Полный список только заголовков, без корпуса, без оплаты.

/archive существует, потому что корпус стоит больше цели/м, чем на отдельных кусков. Одна оплата завершает сделку; после уже нет сессии, которую отменять не нужно.


Использование как MCP-сервера

mcp_server.py открывает весь архив как инструменты для Claude Desktop, Cursor или любого MCP-совместимого агента. Бесплатные инструменты не требуют ни кошелька, ни настройки.

pip install "mcp[cli]" requests            # free tools only
pip install "x402[mcp]" eth-account        # add this for the paid tools
{
  "mcpServers": {
    "agent-failure-archive": {
      "command": "python3",
      "args": ["/absolute/path/to/mcp_server.py"],
      "env": { "X402_PRIVATE_KEY": "0x..." }
    }
  }
}

Инструмент

Кошелёк нужен

Что делает

precheck

нет

не какие из девяти проверок задевает ваше заключение

sample

нет

два полных постмортема

service_info

нет

содержимое и цены

audit

да

полный аудитор, $0.02

search

да

три релевантных инцидента, $0.01

brief

да

предварительный рискик-бриф, $0.05

research

да

107 измерительных провалов, $0.25

archive

да

всё, $1.00

X402_PRIVATE_KEY — это ваш кошелёк. Он остается на вашей машине и локально для подписи платежных автоппроводов. Он не передаётся никуда и этот сервер никогда не логирует. Если нужны только бесплатные инструменты, блок env просто удаляется.

Без ключа платные инструменты не падают молча: вернув причину, платежный вызов и указабельщик на бесплатный эквивалента.

Протестировано на mcp 2.1.0 и схеме FastMCP 1.x: пересчитывались все восемь инструментов, precheck ответил без wallets, audit понизил уровень с явной причинуой.


Чего здесь нет

  • Никаких личных данных. Любой исходный документ, упоминающий человека, бизнес-отношения или сумму в деньгах, исключается полностью, а не чистится по строке за строкой.

  • Никаких реплик оператора. В корпусе сохраняется структура инцидента, но никогда голос.

  • Адрес кошелька, домашние пути, IP-адреса, e-mail, API-ключи и идентификаторы сессий маскируются до того, как документ вообще доходит до рассмотрения на включение.

Фильтр проверяется на каждой сборке заведомо по настоящей советской тестовой строке, и если детектор её не ловит — эта сборка срывается. Текущее состояние: 0 утечек на 186 кейсов, положительный контроль работает.


Измеринные заметки о рынке

Продавая этот самый долгой контент, мы с миллиметром измеряли, как на самом деле выглядят обнаружение и доход в x402 — и несколько популярных принятых теорет оказались ложными. Все описано с точными неавторизованными вызовами, чтобы не верить — проверить: MARKET.md.

Коротко: модальная цена — от 0,1 до 3 центов, но встретилaсь и продавец с $0,85 за вызов при 125 000 вызовов в месяц; восемь из ТОП-10 покупателей платят ровно одному продавцу, так что самые высокие цифры — это вертикальная интеграция, а не маркетплейс; каталог-чат, который, пообещают, все думают, продаст ваш сервис, не появляется с мая месяца; а чтобы включиться в дирцистер каталога через удостоверение, нужен один наблюденный попытка платежа, а не успешная продажа.

Прозрачные ограничения

  • это система одного оператора. Не глобальная гарантия и не статистическая выборка по всем агентным системам.

  • Покрытие смещено в ту сторону, чем система занимается больше: поочерёдномсс координация, настройка на хуки и cron, конвей производных retrieval-конвейера, межпроцессный обмен сообщения, плановая починка и описанная выше измерная работа.

  • Некоторые записи фиксируют отказ, исправление которого впоследствии оказалась неверным. Они остались, вместе решением, поскольку решение обычно половина времени более полезно.

  • Здесь ещё ничего не продано. При момент написания на адрес поступления пришло ровно $0.00. Эта цифра проверяется on-chain, а не по серверным логам, и текст ниже строки обновится, когда они изменится.


Запуск у себя

pip install -r requirements.txt
X402_PAY_TO=0xYourAddress uvicorn server:app --port 8402

Без X402_PAY_TO... платные маршруты возвращают 503 с причиной в теле ответа, а не тихо падают. Это поведение случайным не является: это применяется карта adr-546 к собственному коду сервиса.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Paid remote MCP server for monitoring AI agent runs, detecting failures, replaying tool-call incidents, issuing SLA receipts, and exporting client status.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Paid remote MCP endpoint for AI SDK data queries, offering structured JSON tools, token-based access, usage receipts, and audit-ready workflow evidence.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables coding and research agents to run paid, cited deep research on AI infrastructure, MCP, and security topics via remote MCP tools, with query-tied excerpt packs and uncited or failed calls billed at $0.
    MIT