Overview
AlwaysTrueCondition allows anyone to call the action, no restrictions applied. Type: Singleton, CREATE2 (deployed once, reused by all operators) Address (all supported chains):0x2ef2A6162aEF9Df1022ff51c011af94D99AB4904
Logic
When to Use
| Slot | Use Case |
|---|---|
AUTHORIZE_PRE_ACTION_CONDITION | Let anyone create payments (common for marketplace/e-commerce) |
AlwaysTrueCondition vs address(0)
Both allow any caller, but there’s a subtle difference:
address(0) | AlwaysTrueCondition | |
|---|---|---|
| Behavior | Skips condition check entirely | Calls check() which returns true |
| Gas | Slightly cheaper (no external call) | Minimal overhead (~200 gas) |
| Intent | ”No condition configured" | "Explicitly open to all” |
address(0) when you simply don’t need a condition. Use AlwaysTrueCondition when you want to make the “open access” intent explicit in your configuration.
Gas
Cost: Minimal,pure function returning a constant.
Next Steps
PayerCondition
Restrict to payer only.
Examples
See configurations using AlwaysTrueCondition.
