package task

import (
	"strings"

	"github.com/tidbcloud/AgentTeam/internal/api"
	"github.com/tidbcloud/AgentTeam/internal/store/taskboard"
)

var ErrConflict = taskboard.ErrConflict

type requestError struct {
	kind    error
	message string
}

func (err requestError) Error() string {
	return err.message
}

func (err requestError) Unwrap() error {
	return err.kind
}

func badRequest(message string) error {
	trimmed := strings.TrimSpace(message)
	if trimmed == "" {
		trimmed = "bad request"
	}
	return requestError{kind: api.ErrBadRequest, message: trimmed}
}
