adk_failure (erlang_adk v0.7.0)

View Source

Structural, secret-free failure values for public runtime boundaries.

Failure reasons and stacktraces are attacker/provider controlled and may contain credentials, request bodies, or arbitrary user data. This module deliberately classifies those terms instead of redacting selected keys. Only bounded component/operation/class/status/correlation metadata survives.

Summary

Types

failure/0

-type failure() :: {adk_failure, map()}.

Functions

callback_value(Component, Operation, Failure)

-spec callback_value(term(), term(), term()) -> term().

exception(Component, Operation, Class, Reason)

-spec exception(term(), term(), term(), term()) -> failure().

external(Component, Operation, Reason)

-spec external(term(), term(), term()) -> failure().

is_failure(_)

-spec is_failure(term()) -> boolean().

log_metadata(Component, Operation, Failure)

-spec log_metadata(term(), term(), term()) -> map().

model_response(Component, Operation, Reason)

-spec model_response(term(), term(), term()) -> map().

sanitize(Component, Operation, Failure)

-spec sanitize(term(), term(), term()) -> failure().