cayu.testing.ToolEffect
Part of cayu.testing.base. Read the Python API overview and install the required extra.
from cayu.testing import ToolEffectDeclared side-effect semantics for a tool execution.
Classify what replay can do to externally meaningful durable state. NONE
does not mutate it, IDEMPOTENT may mutate it but a stable downstream
identity or equivalent contract collapses replay, and EXTERNAL has a
non-idempotent or outcome-ambiguous durable mutation. Transport, billing,
observability, and names such as “read” do not determine the value.
The runtime uses this as execution metadata, not as an authorization
decision: policy still decides whether a call may run. Run
cayu guide tool-effects for the canonical decision table.
Bases: StrEnum.
Fields and attributes
Section titled “Fields and attributes”Defaults below are source expressions; Field(...) includes schema/validation settings and default_factory creates a fresh value. Inherited declarations are included. Constructor behavior follows the model or dataclass shown in the bases/decorators.
| Name | Type | Default |
|---|---|---|
NONE |
class attribute |
'none' |
IDEMPOTENT |
class attribute |
'idempotent' |
EXTERNAL |
class attribute |
'external' |