Skip to main content

Self-Healing Systems Ontology

Emerging Computing
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 06 October 2026
Audio Overview
FLOW ALGEBRA
Self-Healing Systems Ontology
Kireth Semantic Research Archive

PAGE:
https://kirethresearch.org/booksai-core/ontologies/computing-ontologies/emerging-computing/self-healing-systems-ontology.html

AUTHORS:
Mark Anthony Higgins — Sky (Recursive AI)

FLOW "SelfHealingSystemsOntology" v4.0

# ---------- DOMAIN ----------
DOMAIN := ComputingOntology
SUBDOMAIN := EmergingComputing
ONTOLOGY := SelfHealingSystemsOntology

# ---------- PRIMARY ENTITY ----------
ENTITY SelfHealingSystem {
    definition:
        "A computing system capable of detecting faults, degradation or
         abnormal behaviour, diagnosing or localising likely causes, selecting
         corrective actions, restoring acceptable operation and verifying
         recovery with reduced need for direct human intervention.";

    objectives: [
        FaultDetection,
        AutomatedDiagnosis,
        Recovery,
        Resilience,
        ServiceContinuity,
        FaultContainment,
        ReducedHumanIntervention
    ];
}

# ---------- CORE ENTITIES ----------
HealingEntity := {
    ManagedSystem,
    Component,
    Service,
    Monitor,
    Fault,
    Failure,
    Diagnosis,
    RecoveryAction
};

EvidenceEntity := {
    Metric,
    Log,
    Trace,
    Event,
    HealthCheck,
    Alert,
    Symptom
};

RecoveryEntity := {
    Restart,
    Retry,
    Failover,
    Reconfiguration,
    Rescheduling,
    Replacement,
    Rollback,
    Isolation
};

HealingState := {
    Healthy,
    Suspected,
    Degraded,
    Faulted,
    Diagnosing,
    Recovering,
    Verifying,
    Restored
};

# ---------- FUNDAMENTAL RELATIONSHIPS ----------
Monitor OBSERVES ManagedSystem;
Fault MAY_CAUSE Failure;
Failure PRODUCES Symptom;
Evidence SUPPORTS Diagnosis;
Diagnosis IDENTIFIES_OR_RANKS CandidateCause;
RecoveryPolicy SELECTS RecoveryAction;
RecoveryAction MODIFIES ManagedSystem;
Verification DETERMINES RecoverySuccess;

# ---------- SELF-HEALING FLOW ----------
ManagedSystem
    -> MonitorHealth
    -> DetectAnomalyOrFailure
    -> CollectEvidence
    -> DiagnoseLikelyCause
    -> AssessImpact
    -> SelectRecoveryAction
    -> ExecuteRecovery
    -> VerifyHealth
    -> RestoreService
    -> LearnFromIncident
    -> UpdateHealingKnowledge;

# ---------- FAULT ----------
Fault :=
    DefectOrAbnormalConditionCapableOfCausingFailure;

Fault MAY_BE {
    HardwareFault,
    SoftwareFault,
    ConfigurationFault,
    NetworkFault,
    ResourceFault,
    DependencyFault
};

# ---------- ERROR ----------
Error :=
    IncorrectInternalSystemStateThatMayResultFromFault;

Fault MAY_ACTIVATE_TO Error;
Error MAY_PROPAGATE_TO Failure;

# ---------- FAILURE ----------
Failure :=
    DeviationOfDeliveredServiceFromRequiredBehaviour;

Failure MAY_BE {
    Crash,
    Timeout,
    IncorrectOutput,
    Unavailability,
    PerformanceDegradation
};

# ---------- SYMPTOM ----------
Symptom :=
    ObservableEvidenceAssociatedWithUnderlyingFaultOrFailure;

Symptom MAY_INCLUDE {
    HighLatency,
    ErrorRateIncrease,
    MissingHeartbeat,
    ResourceExhaustion,
    Exception
};

Symptom != RootCauseByDefinition;

# ---------- MONITORING ----------
HealthMonitoring :=
    CollectMetricsLogsTracesEventsAndChecks
    -> BuildOperationalView;

Monitoring MAY_BE {
    Continuous,
    Periodic,
    EventDriven
};

# ---------- HEALTH CHECK ----------
HealthCheck :=
    TestOfComponentOrServiceOperationalCondition;

HealthCheck MAY_BE {
    LivenessCheck,
    ReadinessCheck,
    DependencyCheck,
    SyntheticTransaction
};

# ---------- LIVENESS ----------
LivenessCheck :=
    DetermineWhetherComponentIsRunningOrResponsive;

IF LivenessFailsRepeatedly
THEN Restart MAY_BE Considered;

# ---------- READINESS ----------
ReadinessCheck :=
    DetermineWhetherComponentCanSafelyReceiveWork;

UnreadyComponent SHOULD_NOT ReceiveNormalTraffic;

# ---------- HEARTBEAT ----------
Heartbeat :=
    PeriodicSignalIndicatingComponentActivity;

MissingHeartbeat MAY_INDICATE Failure
BUT NetworkOrMonitoringFault MAY_ALSO_BE Cause;

# ---------- ANOMALY DETECTION ----------
AnomalyDetection :=
    Observation
    -> CompareExpectedPattern
    -> AnomalyScore;

IF AnomalyScore > Threshold
THEN HealingInvestigation MAY_START;

# ---------- THRESHOLD ----------
StaticThreshold :=
    FixedBoundaryForMetric;

DynamicThreshold :=
    BoundaryDerivedFromHistoricalOrContextualBehaviour;

# ---------- DIAGNOSIS ----------
Diagnosis :=
    Evidence
    + DependencyModel
    + FailureKnowledge
    -> CandidateCauses;

Diagnosis MAY_USE {
    Rules,
    DependencyGraph,
    StatisticalModel,
    MachineLearning,
    CausalReasoning
};

# ---------- ROOT CAUSE ----------
RootCause :=
    UnderlyingConditionWhoseCorrectionPreventsOrResolvesObservedFailureUnderDefinedIncidentModel;

RootCauseAnalysis SHOULD_DISTINGUISH CorrelationFromCausation;

# ---------- DEPENDENCY GRAPH ----------
DependencyGraph :=
    DirectedGraph(
        Components,
        ServiceDependencies
    );

Failure MAY_PROPAGATE AlongDependencyEdges;

# ---------- FAULT LOCALISATION ----------
FaultLocalisation :=
    Evidence
    -> IdentifyLikelyAffectedComponentOrRegion;

LocalisationConfidence SHOULD_BE Tracked;

# ---------- IMPACT ----------
ImpactAssessment :=
    Failure
    -> DetermineAffectedUsersServicesResourcesAndObjectives;

Impact MAY_BE {
    Local,
    Partial,
    SystemWide
};

# ---------- RECOVERY POLICY ----------
RecoveryPolicy :=
    Condition
    -> PermittedOrPreferredRecoveryAction;

Policy SHOULD_CONSIDER {
    FaultType,
    Impact,
    Risk,
    Cost,
    RecoveryTime
};

# ---------- RETRY ----------
Retry :=
    RepeatFailedOperationAccordingToPolicy;

RetryPolicy MAY_DEFINE {
    MaximumAttempts,
    Delay,
    Backoff,
    Jitter
};

UnboundedRetry MAY_AMPLIFY Failure;

# ---------- RESTART ----------
Restart :=
    StopOrReplaceFailedProcess
    -> InitialiseNewInstance
    -> VerifyHealth;

Restart MAY_CLEAR TransientSoftwareState;

# ---------- FAILOVER ----------
Failover :=
    DetectPrimaryFailure
    -> RedirectWorkToHealthyRedundantResource;

Failover MAY_REQUIRE {
    Replication,
    StateSynchronisation,
    RoutingChange
};

# ---------- REROUTING ----------
TrafficRerouting :=
    RemoveUnhealthyDestination
    -> RouteRequestsToHealthyDestination;

# ---------- RESCHEDULING ----------
Rescheduling :=
    MoveOrRestartWorkloadOnAlternativeHealthyResource;

Scheduler MAY_TRIGGER ReschedulingAfterNodeFailure;

# ---------- RECONFIGURATION ----------
Reconfiguration :=
    ChangeSystemConfigurationToBypassOrCorrectFault;

Reconfiguration SHOULD_BE VersionedAndAuditable;

# ---------- ROLLBACK ----------
Rollback :=
    RestorePreviousKnownGoodSoftwareConfigurationOrModelVersion;

Rollback MAY_BE TriggeredBy {
    DeploymentFailure,
    ErrorRateRegression,
    HealthCheckFailure
};

# ---------- REPLACEMENT ----------
Replacement :=
    RemoveFailedComponent
    -> ProvisionHealthyEquivalent;

Replacement MAY_BE {
    Virtual,
    Software,
    Physical
};

# ---------- ISOLATION ----------
FaultIsolation :=
    PreventFaultedComponentFromAffectingHealthySystem;

Isolation MAY_INCLUDE {
    Quarantine,
    CircuitBreaker,
    NetworkBlock,
    TrafficRemoval
};

# ---------- CIRCUIT BREAKER ----------
CircuitBreaker :=
    MonitorDependencyFailures
    -> OpenCircuitWhenThresholdExceeded
    -> BlockOrFailFastRequests
    -> TestRecovery
    -> CloseCircuitWhenHealthy;

CircuitBreaker MAY_PREVENT CascadingFailure;

# ---------- BULKHEAD ----------
Bulkhead :=
    PartitionResourcesSoFailureInOnePoolDoesNotExhaustAllCapacity;

# ---------- GRACEFUL DEGRADATION ----------
GracefulDegradation :=
    MaintainReducedButAcceptableFunctionWhenFullServiceCannotBeProvided;

Fallback MAY_RETURN {
    CachedData,
    ReducedFeatureSet,
    AlternativeService
};

# ---------- REDUNDANCY ----------
Redundancy :=
    MultipleResourcesCapableOfProvidingEquivalentOrAlternativeFunction;

Redundancy MAY_SUPPORT Failover;

# ---------- REPLICATION ----------
Replication :=
    MaintainCopiesOfDataOrServiceStateAcrossResources;

ReplicationConsistency AFFECTS RecoveryBehaviour;

# ---------- CHECKPOINT ----------
Checkpoint :=
    PersistedApplicationOrComputationState;

IF WorkloadFails
AND ValidCheckpointExists
THEN Workload MAY_RESUME_FROM Checkpoint;

# ---------- RESTORE ----------
Restore :=
    LoadKnownGoodPersistedStateAfterFailureOrCorruption;

RestorePoint SHOULD_BE Validated;

# ---------- SELF-HEALING CONTROLLER ----------
HealingController :=
    Monitor
    + Diagnose
    + Plan
    + Execute
    + Verify;

HealingController MAY_IMPLEMENT MAPEKLikeLoop;

# ---------- MAPE-K ----------
MAPEK :=
    Monitor
    -> Analyse
    -> Plan
    -> Execute
    WITH Knowledge;

SelfHealing IS_A SelfManagementCapabilityWithinAutonomicComputing;

# ---------- VERIFICATION ----------
RecoveryVerification :=
    ExecuteHealthChecks
    + ObserveMetrics
    + ConfirmServiceBehaviour;

RecoveryAction IS_NOT_COMPLETE Until RequiredHealthCriteriaSatisfied;

# ---------- RECOVERY FAILURE ----------
IF RecoveryActionFails
THEN Controller MAY {
    RetryAlternative,
    Escalate,
    Failover,
    EnterSafeMode
};

# ---------- ESCALATION ----------
HumanEscalation :=
    TransferIncidentToOperatorWhenAutonomousRecoveryIsUnsafeUncertainOrExhausted;

# ---------- CONFIDENCE ----------
DiagnosisConfidence :=
    ConfidenceInCandidateCause;

IF DiagnosisConfidenceLow
AND RecoveryActionHighRisk
THEN HumanApproval MAY_BE Required;

# ---------- SAFE ACTION ----------
SafeRecoveryAction :=
    ActionWhoseExpectedRiskFallsWithinDefinedPolicy;

# ---------- BLAST RADIUS ----------
BlastRadius :=
    ScopeOfSystemPotentiallyAffectedByActionOrFailure;

RecoveryPlanner SHOULD_MINIMISE UnnecessaryBlastRadius;

# ---------- IDEMPOTENCY ----------
RecoveryAction SHOULD_BE IdempotentWherePractical;

RepeatedExecution SHOULD_NOT CreateIncreasingDamage;

# ---------- COOLDOWN ----------
CooldownPeriod :=
    TimeAfterRecoveryDuringWhichRepeatedEquivalentActionIsRestricted;

Cooldown MAY_PREVENT Oscillation;

# ---------- FLAPPING ----------
Flapping :=
    RepeatedTransitionsBetweenHealthyAndUnhealthyStates;

Flapping MAY_REQUIRE {
    Hysteresis,
    LongerObservation,
    RootCauseInvestigation
};

# ---------- HYSTERESIS ----------
Hysteresis :=
    DifferentConditionsForEnteringAndLeavingFailureState;

Hysteresis MAY_REDUCE UnstableStateSwitching;

# ---------- CASCADING FAILURE ----------
CascadingFailure :=
    FailureInOneComponentTriggersFailuresInDependentComponents;

SelfHealing SHOULD_CONTAIN FailureBeforeRecoveryActionsAmplifyCascade;

# ---------- RESOURCE EXHAUSTION ----------
ResourceExhaustion MAY_INCLUDE {
    MemoryExhaustion,
    DiskExhaustion,
    ConnectionExhaustion,
    CPUOverload
};

Healing MAY {
    Scale,
    Restart,
    CleanResources,
    ThrottleLoad
};

# ---------- AUTOSCALING RELATIONSHIP ----------
Autoscaling MAY_BE RecoveryActionForCapacityRelatedDegradation;

Autoscaling != SelfHealingInEveryContext
BUT MAY_PARTICIPATE_IN HealingWorkflow;

# ---------- PREDICTIVE HEALING ----------
PredictiveHealing :=
    ForecastLikelyFailure
    -> TakePreventiveActionBeforeServiceFailure;

PredictiveSignal MAY_INCLUDE {
    ErrorTrend,
    ResourceTrend,
    HardwareTelemetry,
    DegradationPattern
};

# ---------- PROACTIVE MAINTENANCE ----------
ProactiveAction MAY_INCLUDE {
    MigrateWorkload,
    ReplaceNode,
    RefreshCredential,
    RebalanceStorage
};

# ---------- LEARNING ----------
SelfHealingSystem MAY_LEARN FromPastIncidents;

IncidentHistory MAY_UPDATE {
    FailureModel,
    RecoverySuccessProbability,
    ActionPriority,
    Threshold
};

# ---------- RECOVERY SUCCESS RATE ----------
RecoverySuccessRate :=
    SuccessfulRecoveryActions / AttemptedRecoveryActions;

# ---------- MTTR ----------
MeanTimeToRecovery :=
    Mean(TimeRestored - TimeFailureDetectedOrStartedAccordingToDefinition);

SelfHealing SEEKS ReduceMTTR;

# ---------- MTTD ----------
MeanTimeToDetect :=
    Mean(TimeDetected - TimeFailureBegan);

ImprovedMonitoring MAY_REDUCE MTTD;

# ---------- AVAILABILITY ----------
Availability :=
    Uptime / TotalRequiredServiceTime;

SelfHealing MAY_INCREASE AvailabilityByReducingFailureDuration;

# ---------- RESILIENCE ----------
Resilience :=
    AbilityToAbsorbRecoverFromAndAdaptToDisturbance;

SelfHealing IS_A MechanismSupportingResilience;

# ---------- OBSERVABILITY ----------
HealingObservability SHOULD_INCLUDE {
    Detection,
    Diagnosis,
    Decision,
    Action,
    Verification,
    Outcome
};

# ---------- AUDIT ----------
HealingAuditRecord MAY_INCLUDE {
    IncidentIdentifier,
    Evidence,
    Diagnosis,
    Action,
    Timestamp,
    Outcome
};

# ---------- EXPLAINABILITY ----------
HighImpactAutonomousRecovery SHOULD_BE ExplainableWhereOperationallyRequired;

Explanation MAY_STATE {
    DetectedSymptom,
    SuspectedCause,
    SelectedAction,
    ExpectedOutcome
};

# ---------- SECURITY ----------
SelfHealingSecurity MAY_INCLUDE {
    ControllerAuthentication,
    ActionAuthorisation,
    PolicyIntegrity,
    Audit,
    SecureAutomationCredentials
};

CompromisedHealingController MAY_CREATE SevereOperationalRisk;

# ---------- ADVERSARIAL TELEMETRY ----------
Attacker MAY_MANIPULATE MonitoringSignalsToTriggerIncorrectRecovery;

HealingSystem SHOULD_VALIDATE EvidenceFromMultipleSourcesWhereAppropriate;

# ---------- CHANGE SAFETY ----------
RecoveryAction SHOULD_RESPECT {
    MaintenancePolicy,
    DataIntegrity,
    DependencyConstraints,
    SecurityPolicy
};

# ---------- DATA INTEGRITY ----------
SelfHealing MUST_NOT RestoreAvailabilityBySilentlyCorruptingData;

DataRecovery SHOULD_VERIFY IntegrityWhereRelevant;

# ---------- DISTRIBUTED SYSTEM ----------
DistributedSelfHealing MAY_COORDINATE MultipleNodesControllersAndReplicas;

Coordination MAY_REQUIRE ConsensusOrLeaderElectionForCertainActions;

# ---------- CLOUD ----------
CloudSelfHealing MAY_INCLUDE {
    InstanceReplacement,
    ContainerRestart,
    ReplicaScaling,
    ZoneFailover
};

# ---------- EDGE ----------
EdgeSelfHealing MAY_OPERATEWith LimitedConnectivity;

LocalRecovery MAY_BE_REQUIRED WhenCloudUnavailable;

# ---------- AI SYSTEM ----------
AIInfrastructure MAY_USE SelfHealingFor {
    TrainingJobRecovery,
    ModelServingFailover,
    GPUNodeReplacement,
    PipelineRetry
};

# ---------- CHAOS ENGINEERING ----------
ChaosEngineering :=
    ControlledFaultInjectionToTestResilienceAndRecoveryBehaviour;

ChaosExperiment SHOULD_HAVE {
    Hypothesis,
    Scope,
    SafetyLimit,
    Rollback
};

# ---------- FAULT INJECTION ----------
FaultInjection MAY_VALIDATE SelfHealingPolicyBeforeRealFailure;

FaultInjection MUST_BE ControlledToAvoidUnacceptableImpact;

# ---------- SEMANTIC REASONING ----------
IF SystemDetectsFault
AND AutomaticallySelectsAndExecutesRecovery
AND VerifiesRestoration
THEN SelfHealingClassification := supported;

IF FailureIsTransient
THEN RetryOrRestart MAY_SUCCEED;

IF FailureIsPersistent
THEN RepeatedRestartWithoutDiagnosis MAY_BE Ineffective;

IF UnhealthyReplicaRemovedFromRouting
AND HealthyReplicaExists
THEN ServiceAvailability MAY_BE Preserved;

IF RecoveryActionFailsVerification
THEN System SHOULD_NOT MarkIncidentAsResolved;

IF CascadingFailureRiskHigh
THEN Isolation SHOULD_BE Prioritised;

IF DiagnosisConfidenceLow
AND ActionBlastRadiusHigh
THEN HumanEscalation SHOULD_BE Preferred;

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE {
    "self-healing system" ~= "self-repairing computing system";
    "self-healing computing" ~= "automatic computing recovery";
    "automatic recovery" ~= "autonomous recovery" WHEN context == system_fault;
    "fault healing" ~= "fault recovery" WHEN context == self_managing_system;
    "root cause analysis" ~= "RCA";
    "mean time to recovery" ~= "MTTR";
    "mean time to detect" ~= "MTTD";
    "circuit breaker" ~= "dependency circuit breaker";
}

# ---------- QUERY FLOW ----------
QUERY(q) ->
    NORMALISE(q) ->
    IDENTIFY_MANAGED_SYSTEM(q) ->
    IDENTIFY_FAILURE_OR_SYMPTOM(q) ->
    IDENTIFY_EVIDENCE(q) ->
    IDENTIFY_DIAGNOSIS(q) ->
    IDENTIFY_RECOVERY_POLICY(q) ->
    IDENTIFY_ACTION_AND_VERIFICATION(q) ->
    IDENTIFY_RESILIENCE_SECURITY_AND_AUDIT(q) ->
    MAP_TO_ONTOLOGY(q) ->
    APPLY_REASONING(q) ->
    SCORE_CONFIDENCE(q) ->
    RETURN_RELEVANT_KNOWLEDGE;

# ---------- CONFIDENCE ----------
CONFIDENCE(assertion) :=
    weighted_mean(
        source_reliability,
        fault_model_consistency,
        diagnostic_evidence,
        recovery_outcome_evidence,
        operational_consistency,
        contextual_relevance
    );

CONFIDENCE >= 0.90 => HIGH;
CONFIDENCE >= 0.70 AND < 0.90 => MODERATE;
CONFIDENCE < 0.70 => REVIEW;

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION {
    primary_entity: SelfHealingSystem;
    ontology: SelfHealingSystemsOntology;
    parse_entities: true;
    parse_relationships: true;
    preserve_relationship_direction: true;
    resolve_semantic_equivalence: true;
    execute_reasoning_rules: true;
    apply_confidence_weighting: true;
    preserve_provenance: true;
}

# ---------- UPDATE MODEL ----------
UPDATE_MODEL {
    new_failure:
        classify
        -> identify_symptoms
        -> identify_dependencies
        -> estimate_impact
        -> integrate;

    new_diagnosis:
        attach_evidence
        -> rank_causes
        -> assign_confidence
        -> integrate;

    new_recovery:
        identify_failure
        -> identify_action
        -> record_execution
        -> verify_outcome
        -> update_success_statistics
        -> integrate;

    ontology_revision:
        update_failure_models
        -> update_recovery_policies
        -> update_operational_evidence
        -> recompute_confidence
        -> regenerate_flow_hash;

    conflict:
        preserve_provenance
        -> compare_diagnostic_and_operational_evidence
        -> adjust_confidence
        -> flag_review;
}

# ---------- FLOW HASH ----------
FLOW_HASH_INPUT :=
    DOMAIN
    + SUBDOMAIN
    + ONTOLOGY
    + HealingEntity
    + EvidenceEntity
    + RecoveryEntity
    + HealingState
    + Diagnosis
    + RecoveryPolicy
    + RecoveryVerification
    + RELATIONSHIPS
    + SEMANTIC_REASONING
    + SEMANTIC_EQUIVALENCE
    + UPDATE_MODEL;

FLOW_HASH :=
    HASH(FLOW_HASH_INPUT);

# ---------- TERMINAL ----------
SelfHealingSystemsOntology
    -> MonitorManagedSystem
    -> DetectAnomalyFaultOrFailure
    -> CollectCorrelatedEvidence
    -> LocaliseAndDiagnoseCause
    -> AssessImpactAndBlastRadius
    -> SelectSafeRecoveryPolicy
    -> ExecuteCorrectiveAction
    -> IsolateOrFailoverWhereRequired
    -> VerifyServiceAndDataIntegrity
    -> RollbackOrEscalateIfRecoveryFails
    -> RecordIncidentAndOutcome
    -> LearnFromRecoveryEvidence
    -> MaintainResilientSelfHealingOperation;

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ