src.core.error_framework module#
Marcus Error Handling Framework.
Comprehensive error handling system designed for autonomous agent environments. Provides structured error types, rich context, and intelligent recovery strategies.
- class src.core.error_framework.ErrorSeverity[source]#
Bases:
EnumError severity levels for prioritization and alerting.
- LOW = 'low'#
- MEDIUM = 'medium'#
- HIGH = 'high'#
- CRITICAL = 'critical'#
- class src.core.error_framework.ErrorCategory[source]#
Bases:
EnumHigh-level error categories for monitoring and classification.
- TRANSIENT = 'transient'#
- CONFIGURATION = 'configuration'#
- BUSINESS_LOGIC = 'business_logic'#
- INTEGRATION = 'integration'#
- SECURITY = 'security'#
- SYSTEM = 'system'#
- class src.core.error_framework.ErrorContext[source]#
Bases:
objectRich context information for error debugging and recovery.
- __init__(operation='', operation_id=<factory>, agent_id=None, task_id=None, agent_state=None, timestamp=<factory>, correlation_id=<factory>, system_state=None, integration_name=None, integration_state=None, user_context=None, custom_context=None)#
- class src.core.error_framework.RemediationSuggestion[source]#
Bases:
objectActionable remediation suggestions for autonomous agents.
- __init__(immediate_action=None, long_term_solution=None, fallback_strategy=None, retry_strategy=None, escalation_path=None)#
- exception src.core.error_framework.MarcusBaseError[source]#
Bases:
ExceptionBase exception class for Marcus-specific errors.
Provides rich context, categorization, and remediation suggestions for autonomous agent error handling.
- __init__(message, error_code=None, context=None, remediation=None, severity=ErrorSeverity.MEDIUM, retryable=False, cause=None)[source]#
- Parameters:
message (str)
error_code (str | None)
context (ErrorContext | None)
remediation (RemediationSuggestion | Dict[str, Any] | None)
severity (ErrorSeverity)
retryable (bool)
cause (Exception | None)
- exception src.core.error_framework.TransientError[source]#
Bases:
MarcusBaseErrorBase class for transient errors that can be automatically retried.
- exception src.core.error_framework.NetworkTimeoutError[source]#
Bases:
TransientErrorNetwork operation timed out.
Bases:
TransientErrorExternal service is temporarily unavailable.
- exception src.core.error_framework.RateLimitError[source]#
Bases:
TransientErrorRate limit exceeded for API calls.
- exception src.core.error_framework.TemporaryResourceError[source]#
Bases:
TransientErrorTemporary resource unavailability (memory, disk, etc.).
- exception src.core.error_framework.ConfigurationError[source]#
Bases:
MarcusBaseErrorBase class for configuration-related errors.
- exception src.core.error_framework.MissingCredentialsError[source]#
Bases:
ConfigurationErrorRequired API credentials are missing.
- exception src.core.error_framework.InvalidConfigurationError[source]#
Bases:
ConfigurationErrorConfiguration values are invalid.
- exception src.core.error_framework.MissingDependencyError[source]#
Bases:
ConfigurationErrorRequired dependency is missing.
- exception src.core.error_framework.EnvironmentError[source]#
Bases:
ConfigurationErrorEnvironment setup is incorrect.
- exception src.core.error_framework.BusinessLogicError[source]#
Bases:
MarcusBaseErrorBase class for business logic violations.
- exception src.core.error_framework.TaskAssignmentError[source]#
Bases:
BusinessLogicErrorError in task assignment logic.
- exception src.core.error_framework.WorkflowViolationError[source]#
Bases:
BusinessLogicErrorWorkflow rule violation.
- exception src.core.error_framework.ValidationError[source]#
Bases:
BusinessLogicErrorData validation failed.
- exception src.core.error_framework.StateConflictError[source]#
Bases:
BusinessLogicErrorSystem state conflict detected.
- exception src.core.error_framework.TaskValidationError[source]#
Bases:
BusinessLogicErrorTask implementation validation failed.
- exception src.core.error_framework.ProjectRootNotFoundError[source]#
Bases:
ConfigurationErrorCannot determine project root directory.
- exception src.core.error_framework.IntegrationError[source]#
Bases:
MarcusBaseErrorBase class for external integration errors.
- exception src.core.error_framework.KanbanIntegrationError[source]#
Bases:
IntegrationErrorKanban board integration error.
- exception src.core.error_framework.AIProviderError[source]#
Bases:
IntegrationErrorAI provider integration error.
- exception src.core.error_framework.AuthenticationError[source]#
Bases:
IntegrationErrorAuthentication failed for external service.
- exception src.core.error_framework.ExternalServiceError[source]#
Bases:
IntegrationErrorGeneric external service error.
- exception src.core.error_framework.SecurityError[source]#
Bases:
MarcusBaseErrorBase class for security-related errors.
- exception src.core.error_framework.AuthorizationError[source]#
Bases:
SecurityErrorAuthorization failed - insufficient permissions.
- exception src.core.error_framework.WorkspaceSecurityError[source]#
Bases:
SecurityErrorWorkspace security violation.
- exception src.core.error_framework.PermissionError[source]#
Bases:
SecurityErrorPermission denied for operation.
- exception src.core.error_framework.SystemError[source]#
Bases:
MarcusBaseErrorBase class for critical system errors.
- exception src.core.error_framework.ResourceExhaustionError[source]#
Bases:
SystemErrorSystem resource exhaustion.
- exception src.core.error_framework.CorruptedStateError[source]#
Bases:
SystemErrorSystem state corruption detected.
- exception src.core.error_framework.DatabaseError[source]#
Bases:
SystemErrorDatabase operation failed.
- exception src.core.error_framework.CriticalDependencyError[source]#
Bases:
SystemErrorCritical system dependency failure.
- src.core.error_framework.error_context(operation, agent_id=None, task_id=None, integration_name=None, custom_context=None)[source]#
Context manager for automatic error context injection.
- Return type:
- Parameters:
- Usage:
- with error_context(“create_task”, agent_id=”agent_123”, task_id=”task_456”):
# operations that might raise Marcus errors pass
- class src.core.error_framework.ErrorResponseFormatter[source]#
Bases:
objectFormats error responses for different output formats (MCP, JSON, etc.).
- static format_for_mcp(error, include_debug=False)[source]#
Format error for MCP protocol response.
- Return type:
- Parameters:
error (MarcusBaseError)
include_debug (bool)
- static format_for_logging(error)[source]#
Format error for structured logging.
- Return type:
- Parameters:
error (MarcusBaseError)
- static format_user_friendly(error)[source]#
Format error for user-friendly display.
- Return type:
- Parameters:
error (MarcusBaseError)
- src.core.error_framework.MarcusError#
alias of
MarcusBaseError