MCPcopy Create free account
hub / github.com/compozy/agh / statusForWorkspaceError

Function statusForWorkspaceError

internal/api/core/session_workspace.go:130–150  ·  view source on GitHub ↗

StatusForWorkspaceError maps workspace-domain errors to transport statuses.

(err error)

Source from the content-addressed store, hash-verified

128
129// StatusForWorkspaceError maps workspace-domain errors to transport statuses.
130func statusForWorkspaceError(err error) int {
131 switch {
132 case errors.Is(err, context.Canceled):
133 return statusClientClosedRequest
134 case errors.Is(err, workspacepkg.ErrWorkspaceNotFound):
135 return http.StatusNotFound
136 case errors.Is(err, workspacepkg.ErrWorkspaceRootMissing):
137 return http.StatusGone
138 case errors.Is(err, workspacepkg.ErrWorkspaceNameTaken),
139 errors.Is(err, workspacepkg.ErrWorkspacePathTaken),
140 errors.Is(err, workspacepkg.ErrWorkspaceHasSessions),
141 errors.Is(err, workspacepkg.ErrWorkspaceHasActiveSessions):
142 return http.StatusConflict
143 case errors.Is(err, aghconfig.ErrSandboxProfileNotFound):
144 return http.StatusBadRequest
145 case errors.Is(err, workspacepkg.ErrWorkspaceResolverUnavailable):
146 return http.StatusServiceUnavailable
147 default:
148 return http.StatusInternalServerError
149 }
150}
151
152// StatusForSessionError maps session and workspace-domain errors to transport statuses.
153func statusForSessionError(err error) int {

Callers 2

StatusForWorkspaceErrorFunction · 0.70

Calls 1

IsMethod · 0.45

Tested by 1