Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Code ¶
type Code string
Code is the stable machine identity shared by every transport. Client logic may branch on it; it must never branch on Detail or an underlying cause.
const ( CodeWorkspaceDependencyDiscoveryFailed Code = "workspace_dependency.discovery_failed" CodeWorkspaceDependencyDefinitionInvalid Code = "workspace_dependency.definition_invalid" CodeBotNameTaken Code = "bot.name_taken" CodeBotAgentNotFound Code = "bot_agent.not_found" CodeBotAgentNameTaken Code = "bot_agent.name_taken" CodeBotAgentInvalidRuntime Code = "bot_agent.invalid_runtime" CodeBotAgentInvalidMetadata Code = "bot_agent.invalid_metadata" CodeBotAgentDefaultInUse Code = "bot_agent.default_in_use" CodeSettingsReasoningEffortInvalid Code = "settings.reasoning_effort_invalid" CodeContextBudgetUnsatisfied Code = "context.budget_unsatisfied" CodeContextProtectedOverflow Code = "context.protected_overflow" CodeWorkspaceUnreachable Code = "workspace.unreachable" CodeWorkspaceTemplateBootstrapFailed Code = "workspace.template_bootstrap_failed" CodeWorkspaceDisplayPrepareFailed Code = "workspace.display_prepare_failed" CodeWorkspaceDependencyNotFound Code = "workspace_dependency.not_found" CodeWorkspaceDependencyRequestInvalid Code = "workspace_dependency.request_invalid" CodeWorkspaceDependencyActionUnsupported Code = "workspace_dependency.action_unsupported" CodeWorkspaceDependencyPlatformUnsupported Code = "workspace_dependency.platform_unsupported" CodeWorkspaceDependencyBusy Code = "workspace_dependency.busy" CodeWorkspaceDependencyWorkspaceNotRunning Code = "workspace_dependency.workspace_not_running" CodeWorkspaceDependencyWorkspaceMissing Code = "workspace_dependency.workspace_missing" CodeWorkspaceDependencyOperationFailed Code = "workspace_dependency.operation_failed" CodeProviderTemplateNotFound Code = "provider_template.not_found" CodeProviderTemplateDomainInvalid Code = "provider_template.domain_invalid" CodeProviderTemplateDomainMismatch Code = "provider_template.domain_mismatch" CodeProviderTemplateOperationFailed Code = "provider_template.operation_failed" CodeProviderNameTaken Code = "provider.name_taken" CodeProviderTemplateRequestInvalid Code = "provider_template.request_invalid" CodeSearchProviderTypeConflict Code = "search_provider.type_conflict" CodeConnectorRequestInvalid Code = "connector.request_invalid" CodeConnectorNotConfigured Code = "connector.not_configured" CodeConnectorNotFound Code = "connector.not_found" CodeConnectorConflict Code = "connector.conflict" CodeConnectorRequestRejected Code = "connector.request_rejected" CodeConnectorOperationFailed Code = "connector.operation_failed" CodeSkillBuiltinReadOnly Code = "skill.builtin_read_only" CodeSkillNameTaken Code = "skill.name_taken" CodeSkillSaveFailed Code = "skill.save_failed" CodeAppNotFound Code = "app.not_found" CodeAppRequestInvalid Code = "app.request_invalid" CodeAppBusy Code = "app.busy" CodeAppOperationFailed Code = "app.operation_failed" CodeRegistryAppNotFound Code = "registry.app_not_found" CodeRegistryAppInvalid Code = "registry.app_invalid" CodeRegistryAppInstallFailed Code = "registry.app_install_failed" CodeProfileRequestInvalid Code = "profile.request_invalid" CodeProfileTitleModelInvalid Code = "profile.title_model_invalid" CodeProfileUpdateFailed Code = "profile.update_failed" CodeACPRequestInvalid Code = "acp.request_invalid" CodeACPAccessForbidden Code = "acp.access_forbidden" CodeACPRuntimeNotFound Code = "acp.runtime_not_found" CodeACPRuntimeConflict Code = "acp.runtime_conflict" CodeACPRuntimeLimitReached Code = "acp.runtime_limit_reached" CodeACPOperationFailed Code = "acp.operation_failed" CodeExternalAgentTurnReplacementUnsupported Code = "external_agent.turn_replacement_unsupported" CodeACPModelSelectionUnsupported Code = "acp.model_selection_unsupported" CodeACPModelIDRequired Code = "acp.model_id_required" CodeACPReasoningUnsupported Code = "acp.reasoning_selection_unsupported" CodeACPReasoningEffortRequired Code = "acp.reasoning_effort_required" CodeACPModeSelectionUnsupported Code = "acp.mode_selection_unsupported" CodeACPModeIDRequired Code = "acp.mode_id_required" CodeACPConfigUpdateFailed Code = "acp.config_update_failed" CodeRuntimeControlUnsupported Code = "runtime_control.unsupported" CodeRuntimeControlGoalRequiresDefaultMode Code = "runtime_control.goal_requires_default_mode" CodeWorkdirGitBusy Code = "workdir.git_busy" CodeWorkdirGitSwitchFailed Code = "workdir.git_switch_failed" CodeRuntimeControlCancelled Code = "runtime_control.cancelled" CodeRuntimeControlFailed Code = "runtime_control.failed" CodeRuntimeControlSteerFailed Code = "runtime_control.steer_failed" CodeRuntimeControlForbidden Code = "runtime_control.forbidden" CodeRuntimeControlRequestInvalid Code = "runtime_control.request_invalid" CodeExternalRuntimeAuthRequired Code = "external_runtime.auth_required" CodeToolApprovalForbidden Code = "tool_approval.forbidden" CodeToolApprovalNotFound Code = "tool_approval.not_found" CodeToolApprovalExpired Code = "tool_approval.expired" CodeToolApprovalAmbiguous Code = "tool_approval.ambiguous" CodeToolApprovalRequestInvalid Code = "tool_approval.request_invalid" CodeToolApprovalOperationFailed Code = "tool_approval.operation_failed" CodeUserInputForbidden Code = "user_input.forbidden" CodeUserInputExpired Code = "user_input.expired" CodeUserInputOperationFailed Code = "user_input.operation_failed" CodeSessionModelPreferenceConflict Code = "session.model_preference_conflict" CodeSessionBusy Code = "session_runtime.session_busy" CodeSessionInvocationConflict Code = "session_runtime.invocation_conflict" CodeSessionHistoryInconsistent Code = "session_runtime.history_inconsistent" CodeAgentResponseTimeout Code = "agent.response_timeout" CodeAgentResponseInterrupted Code = "agent.response_interrupted" CodeAgentProviderOverloaded Code = "agent.provider_overloaded" CodeAgentProviderRateLimited Code = "agent.provider_rate_limited" CodeAgentProviderQuotaExhausted Code = "agent.provider_quota_exhausted" CodeAgentProviderAuthFailed Code = "agent.provider_auth_failed" CodeQueueNoActiveRun Code = "queue_no_active_run" CodeQueueAdmissionOverloaded Code = "queue_admission_overloaded" CodeQueueRequestInvalid Code = "queue_request_invalid" CodeQueueItemNotPending Code = "queue_item_not_pending" CodeQueueCapacityExceeded Code = "queue_capacity_exceeded" CodeQueueSteerUnsupported Code = "queue.steer_unsupported" CodeContextLifecycleRequestInvalid Code = "context_lifecycle.request_invalid" CodeContextLifecycleAuthenticationRequired Code = "context_lifecycle.authentication_required" CodeContextLifecycleAccessDenied Code = "context_lifecycle.access_denied" CodeContextLifecycleNotFound Code = "context_lifecycle.not_found" CodeContextLifecycleLoadFailed Code = "context_lifecycle.load_failed" CodeAgentAuthorizationExpired Code = "agent_authorization.expired" CodeAgentAuthorizationNotReady Code = "agent_authorization.not_ready" CodeAgentAuthorizationLimit Code = "agent_authorization.limit" CodeAgentAuthorizationFailed Code = "agent_authorization.failed" CodeAgentAuthorizationCodeInvalid Code = "agent_authorization.code_invalid" CodeAgentCredentialNotFound Code = "agent_credential.not_found" //nolint:gosec // Stable public error code. CodeAgentCredentialRequestInvalid Code = "agent_credential.request_invalid" //nolint:gosec // Stable public error code. CodeAgentCredentialForbidden Code = "agent_credential.forbidden" //nolint:gosec // Stable public error code. CodeAgentCredentialIncompatible Code = "agent_credential.incompatible" //nolint:gosec // Stable public error code. CodeAgentCredentialRevoked Code = "agent_credential.revoked" //nolint:gosec // Stable public error code. CodeAgentCredentialReauthRequired Code = "agent_credential.reauthorization_required" //nolint:gosec // Stable public error code. CodeAgentCredentialRuntimeBusy Code = "agent_credential.runtime_busy" //nolint:gosec // Stable public error code. CodeAgentCredentialMaterializationFailed Code = "agent_credential.materialization_failed" //nolint:gosec // Stable public error code. )
type Definition ¶
Definition is the single catalog entry for a public error contract. Type URIs and frontend i18n keys are derived mechanically from Code.
func Lookup ¶
func Lookup(code Code) (Definition, bool)
type Error ¶
type Error struct {
// contains filtered or unexported fields
}
Error keeps the public contract separate from private diagnostics. The cause is intentionally not exposed through Unwrap; transport boundaries may log it through CauseOf without making infrastructure details part of the API.
type Problem ¶
type Problem struct {
Type string `json:"type" validate:"required"`
Status int `json:"status" validate:"required"`
Detail string `json:"detail" validate:"required"`
Code string `json:"code" validate:"required"`
Args map[string]string `json:"args" validate:"required"`
RequestID string `json:"request_id,omitempty"`
}
type Public ¶
type Public struct {
Code Code `json:"code"`
Args map[string]string `json:"args"`
Detail string `json:"detail"`
RequestID string `json:"request_id,omitempty"`
}
Public is the transport-neutral, user-safe representation of an application error. HTTP and streaming transports may wrap it in different envelopes, but must not derive their own code, detail, or metadata.