@sailboat-computer/resilience
Version:
Enhanced resilience patterns for sailboat computer v3 with marine-specific adaptations
37 lines (31 loc) • 1.56 kB
text/typescript
/**
* Marine-specific constants for resilience package
*/
import { common } from '@sailboat-computer/sailboat-types';
// Re-export types from sailboat-types
export type OperationalContextType = common.OperationalContext;
export type MarineFailureTypeType = common.MarineFailureType;
export type CircuitBreakerStateType = common.CircuitBreakerState;
// Re-export constants from common namespace
export const OperationalContext = {
SAILING: 'context_sailing' as common.OperationalContext,
MOTORING: 'context_motoring' as common.OperationalContext,
ANCHORED: 'context_anchored' as common.OperationalContext,
DOCKED: 'context_docked' as common.OperationalContext,
MAINTENANCE: 'context_maintenance' as common.OperationalContext,
EMERGENCY: 'context_emergency' as common.OperationalContext
};
export const MarineFailureType = {
SENSOR_FAILURE: 'marine_sensor_failure' as common.MarineFailureType,
CONNECTIVITY_LOSS: 'marine_connectivity_loss' as common.MarineFailureType,
POWER_FLUCTUATION: 'marine_power_fluctuation' as common.MarineFailureType,
DATA_QUALITY: 'marine_data_quality' as common.MarineFailureType,
TIMEOUT: 'marine_timeout' as common.MarineFailureType,
RESOURCE_EXHAUSTION: 'marine_resource_exhaustion' as common.MarineFailureType,
ENVIRONMENTAL: 'marine_environmental' as common.MarineFailureType
};
export const CircuitBreakerState = {
CLOSED: 'circuit_closed' as common.CircuitBreakerState,
OPEN: 'circuit_open' as common.CircuitBreakerState,
HALF_OPEN: 'circuit_half_open' as common.CircuitBreakerState
};