Documentation
¶
Index ¶
- Constants
- type ChallengeError
- func ErrChallengeNotFound(challengeID string) *ChallengeError
- func ErrConfigInvalid(reason string) *ChallengeError
- func ErrDatabaseError(operation string, err error) *ChallengeError
- func ErrGoalAlreadyClaimed(goalID string) *ChallengeError
- func ErrGoalNotCompleted(goalID string) *ChallengeError
- func ErrGoalNotFound(goalID string) *ChallengeError
- func ErrInsufficientGoals(available, requested int) *ChallengeError
- func ErrRewardGrantFailed(rewardType, rewardID string, err error) *ChallengeError
- func ErrValidationFailed(field, reason string) *ChallengeError
- func NewChallengeError(code, message string, err error) *ChallengeError
Constants ¶
const ( // Domain errors ErrCodeGoalNotFound = "GOAL_NOT_FOUND" ErrCodeChallengeNotFound = "CHALLENGE_NOT_FOUND" ErrCodeGoalAlreadyClaimed = "GOAL_ALREADY_CLAIMED" ErrCodeGoalNotCompleted = "GOAL_NOT_COMPLETED" ErrCodeInvalidStatus = "INVALID_STATUS" // Database errors ErrCodeDatabaseError = "DATABASE_ERROR" ErrCodeTransactionFailed = "TRANSACTION_FAILED" // Config errors ErrCodeConfigInvalid = "CONFIG_INVALID" ErrCodeConfigNotFound = "CONFIG_NOT_FOUND" // AGS integration errors ErrCodeRewardGrantFailed = "REWARD_GRANT_FAILED" ErrCodeAuthFailed = "AUTH_FAILED" // Validation errors ErrCodeValidationFailed = "VALIDATION_FAILED" ErrCodeInvalidInput = "INVALID_INPUT" // M4: Goal selection errors ErrCodeInsufficientGoals = "INSUFFICIENT_GOALS" )
Error codes for the challenge service.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ChallengeError ¶
ChallengeError represents an error in the challenge service.
func ErrChallengeNotFound ¶
func ErrChallengeNotFound(challengeID string) *ChallengeError
ErrChallengeNotFound returns an error when a challenge is not found.
func ErrConfigInvalid ¶
func ErrConfigInvalid(reason string) *ChallengeError
ErrConfigInvalid returns an error for invalid configuration.
func ErrDatabaseError ¶
func ErrDatabaseError(operation string, err error) *ChallengeError
ErrDatabaseError wraps database errors.
func ErrGoalAlreadyClaimed ¶
func ErrGoalAlreadyClaimed(goalID string) *ChallengeError
ErrGoalAlreadyClaimed returns an error when attempting to claim an already claimed goal.
func ErrGoalNotCompleted ¶
func ErrGoalNotCompleted(goalID string) *ChallengeError
ErrGoalNotCompleted returns an error when attempting to claim an incomplete goal.
func ErrGoalNotFound ¶
func ErrGoalNotFound(goalID string) *ChallengeError
ErrGoalNotFound returns an error when a goal is not found.
func ErrInsufficientGoals ¶ added in v0.10.2
func ErrInsufficientGoals(available, requested int) *ChallengeError
ErrInsufficientGoals returns an error when not enough goals are available for selection.
func ErrRewardGrantFailed ¶
func ErrRewardGrantFailed(rewardType, rewardID string, err error) *ChallengeError
ErrRewardGrantFailed returns an error when reward grant fails.
func ErrValidationFailed ¶
func ErrValidationFailed(field, reason string) *ChallengeError
ErrValidationFailed returns a validation error.
func NewChallengeError ¶
func NewChallengeError(code, message string, err error) *ChallengeError
NewChallengeError creates a new ChallengeError.
func (*ChallengeError) Error ¶
func (e *ChallengeError) Error() string
func (*ChallengeError) Unwrap ¶
func (e *ChallengeError) Unwrap() error