Files
gozerosandCursor 0c45b86d67 chore: 初始化 eightbf-analysis-go(对齐 Java 会商作业服务)
Go 实现 /api/v1/analysis 契约、Demo/Live Worker、DeerFlow SSE;含设计文档与冒烟脚本。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-11-03 00:13:46 +08:00

24 lines
659 B
Go

package service
import "errors"
// 业务错误:HTTP 层按类型映射 403/400。
var (
ErrForbidden = errors.New("forbidden")
ErrBadState = errors.New("bad state")
ErrBadArg = errors.New("bad argument")
)
// BizError 带给人看的文案。
type BizError struct {
Kind error
Msg string
}
func (e *BizError) Error() string { return e.Msg }
func (e *BizError) Unwrap() error { return e.Kind }
func Forbidden(msg string) error { return &BizError{Kind: ErrForbidden, Msg: msg} }
func BadState(msg string) error { return &BizError{Kind: ErrBadState, Msg: msg} }
func BadArg(msg string) error { return &BizError{Kind: ErrBadArg, Msg: msg} }