Files
Agent-System/internal/projectworkflow/errors.go
T
weichenandCursor 28478bdca5 fix(db): enforce global unique project names across creators
Replace per-creator name uniqueness with a global index among
non-retired projects, and reject cross-user duplicate creates with 409.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 09:10:55 +00:00

33 lines
1.5 KiB
Go

package projectworkflow
import "errors"
var (
// ErrUnauthenticated 未提供认证 Token 或会话已失效
ErrUnauthenticated = errors.New("unauthenticated: valid authentication token required")
// ErrForbiddenNotCreator 仅项目创建人有权切换工作流或配置
ErrForbiddenNotCreator = errors.New("forbidden: only project creator can switch active workflow")
// ErrProjectNotFound 指定项目不存在或无权访问
ErrProjectNotFound = errors.New("project not found")
// ErrWorkflowNotFound 工作流未定义或未在当前项目启用
ErrWorkflowNotFound = errors.New("workflow definition not found or disabled for project")
// ErrConcurrentConflict 乐观锁版本冲突 (workflow_selection_version 不匹配)
ErrConcurrentConflict = errors.New("conflict: workflow selection version mismatch")
// ErrPrerequisiteNotMet 前置条件未满足 (例如缺少已批准的上游需求规格书)
ErrPrerequisiteNotMet = errors.New("precondition failed: prerequisite upstream document not satisfied")
// ErrInvalidInput 输入参数不合法
ErrInvalidInput = errors.New("invalid parameter: required field missing or malformed")
// ErrDuplicateProjectName 全局已存在同名活跃项目
ErrDuplicateProjectName = errors.New("duplicate project name")
// ErrLegacySwitchBlocked 已启用实例化工作流治理,禁止旧式即时切换
ErrLegacySwitchBlocked = errors.New("legacy workflow switch blocked: use project settings activation flow")
)