Skip to content

Latest commit

 

History

History
34 lines (26 loc) · 2.33 KB

File metadata and controls

34 lines (26 loc) · 2.33 KB

Контракт ошибок CLI

Корневая команда agent-lifecycle возвращает JSON-ошибку с кодом завершения 2, если ожидаемую операцию нельзя выполнить. Конверт использует схему agent-lifecycle-error.v1 и не раскрывает трассировку, текст исключения, абсолютные пути или содержимое входного файла.

Английская версия находится в английской документации.

Стабильные коды ошибок

Код Значение
cli-io-error Входной или выходной файл нельзя прочитать или записать.
cli-invalid-encoding Входной файл не содержит корректный UTF-8 текст.
cli-invalid-json Входной файл не является корректным JSON.
cli-json-depth-exceeded Вложенность JSON превышает безопасный предел.
cli-unexpected-error На корневую границу вышла непредвиденная внутренняя ошибка.

Существующие ошибки доменов сохраняют свои стабильные коды и сообщения. Корневая граница преобразует только исключения, которые ещё не являются LifecycleError.

Пример

{"code":"cli-io-error","details":{},"message":"CLI input or output could not be read or written","schemaVersion":"agent-lifecycle-error.v1"}

Автоматизация должна проверять code и schemaVersion, а не текст сообщения. Ошибки синтаксиса команд, созданные argparse, сохраняют обычное поведение SystemExit. Исключения KeyboardInterrupt и SystemExit, возникшие внутри приложения, также сохраняются и не превращаются в ошибку жизненного цикла.