Errors and Validation#
Primary Exceptions#
ValidationException: invalid request payloads or unsupported method data.
EmptyPoolException: method needs items/users but pool is empty.
DrawExhaustedException: draw flow cannot produce a valid result.
DrawException: generic draw base type.
PSR-6 Specific Exception#
InvalidCacheKeyException implements Psr\Cache\InvalidArgumentException for invalid cache keys in the built-in memory pool.
Validation Patterns#
Common checks performed by handlers:
required method string
required items where applicable
required candidates for grand and campaign methods
numeric/positive weights in weighted methods
method-specific required item keys
strict lucky amountMode to payload matching
Partial Results vs Exceptions#
Under-fulfillment is often returned as a valid response rather than thrown exception.
Inspect response metadata:
meta.fulfilled
meta.partialReason
meta.unfilledCount
Troubleshooting Checklist#
Confirm request method name is supported.
Confirm required fields for that method are present.
Confirm item schema matches method requirements.
For campaign runs, verify rule constraints and eligibility callback logic.
For reproducibility, verify seed usage and request fingerprints.