# FAILSAFE_SYSTEM.md — Sistema de Protección del Organismo 4GatosCoin

El **Sistema Failsafe** es el mecanismo de defensa del organismo 4GatosCoin.  
Su función es detectar errores, aislarlos, evitar propagación, proteger el estado global y restaurar coherencia técnica y narrativa.

Es el sistema inmunológico del organismo.

---

# 1. Objetivos del Sistema Failsafe

- prevenir colapsos  
- evitar loops infinitos  
- evitar duplicación de eventos  
- proteger el estado global  
- aislar órganos dañados  
- detectar anomalías  
- restaurar coherencia  
- registrar incidentes  
- permitir recuperación rápida  

---

# 2. Tipos de Fallos que Debe Manejar

| Tipo | Descripción |
|------|-------------|
| Fallos de órgano | energía, gestos, territorio, avatar, etc. |
| Fallos de sincronización | estado global desalineado |
| Fallos de narrativa | ecos incoherentes, loops narrativos |
| Fallos de temporada | reglas rotas o inconsistentes |
| Fallos de ciclo | umbrales incorrectos |
| Fallos de ritual | activaciones incorrectas |
| Fallos de semilla | rarezas imposibles |
| Fallos de latido | ritmo fuera de rango |
| Fallos de API | endpoints caídos |
| Fallos de base de datos | desconexiones, timeouts |
| Fallos de OTT | desincronización visual |

---

# 3. Componentes del Sistema Failsafe

## 3.1. Detector de Anomalías
Ubicación:

```
lib/failsafe/anomalyDetector.ts
```

Detecta:

- ráfagas de gestos  
- energía imposible  
- ciclos fuera de rango  
- narrativa incoherente  
- loops de eventos  
- duplicación de logs  

---

## 3.2. Aislador de Órganos
Ubicación:

```
lib/failsafe/isolate.ts
```

Permite:

- aislar energía  
- aislar territorio  
- aislar narrativa  
- aislar avatar  
- aislar rituales  

Cuando un órgano falla, se aísla y se usa su **estado anterior estable**.

---

## 3.3. Restaurador de Estado Global
Ubicación:

```
lib/failsafe/restoreGlobalState.ts
```

Permite:

- restaurar energía  
- restaurar territorio  
- restaurar ciclos  
- restaurar temporada  
- restaurar narrativa  
- restaurar latido  

Usa snapshots:

```
snapshots/globalState/
```

---

## 3.4. Registro de Incidentes
Ubicación:

```
models/Incident.ts
```

Ejemplo:

```json
{
  "type": "energy_spike",
  "value": 9999,
  "timestamp": 1700000000,
  "resolved": false
}
```

---

## 3.5. Modo Seguro (Safe Mode)
Cuando el organismo detecta un fallo grave:

- desactiva rituales  
- congela ciclos  
- congela temporada  
- congela territorio  
- reduce latido  
- bloquea gestos de alto impacto  

---

# 4. Flujo del Sistema Failsafe

```
Anomalía → Detección → Aislamiento → Restauración → Registro → Normalización
```

### 4.1. Detección
El detector identifica un patrón anómalo.

### 4.2. Aislamiento
El órgano afectado se desconecta temporalmente.

### 4.3. Restauración
Se restaura el último estado estable.

### 4.4. Registro
Se crea un incidente.

### 4.5. Normalización
El organismo vuelve a su ritmo normal.

---

# 5. Ejemplos de Fallos y Respuestas

## 5.1. Pico de Energía Inesperado
```
energía = 9999
```

Respuesta:

- aislar energía  
- restaurar energía previa  
- registrar incidente  
- activar safe mode  

---

## 5.2. Loop de Gestos
```
pulso_vocal ejecutado 200 veces en 5 segundos
```

Respuesta:

- bloquear gestos  
- aislar gestos  
- registrar incidente  

---

## 5.3. Narrativa Incoherente
```
eco negativo o imposible
```

Respuesta:

- aislar narrativa  
- restaurar patrones  
- registrar incidente  

---

## 5.4. Territorio Corrupto
```
dominancia < 0 o > 100
```

Respuesta:

- aislar territorio  
- restaurar snapshot  
- registrar incidente  

---

# 6. Integración con Otros Órganos

### 6.1. Con Estado Global
El failsafe protege el estado global ante corrupción.

### 6.2. Con Eventos
El failsafe puede bloquear propagación.

### 6.3. Con Narrativa
El failsafe evita loops narrativos.

### 6.4. Con Temporadas
El failsafe puede congelar temporada.

### 6.5. Con Rituales
El failsafe puede desactivar rituales.

---

# 7. Panel DevWeb3 del Failsafe

Ubicación:

```
app/devweb3/failsafe/
```

Permite:

- ver incidentes  
- ver órganos aislados  
- restaurar manualmente  
- activar safe mode  
- desactivar safe mode  

---

# 8. Roadmap del Sistema Failsafe

- failsafe narrativo avanzado  
- failsafe territorial dinámico  
- failsafe de avatar visual  
- failsafe de temporadas vivas  
- failsafe de ecos globales  
- failsafe predictivo (IA)  

---

# 9. Licencia
Proyecto interno.  
Acceso restringido a desarrolladores autorizados.
