Руководство по интеграции
### Введение
При работе автономных ИИ-агентов в реальном времени возникает феномен **агентного дрейфа** (agentic drift) — постепенное накопление отклонений в контексте, состоянии памяти, правах доступа или логике принятия решений. Без защитных механизмов дрейф ведет к зависанию циклов, порче файлов или отправке некорректных команд. Решением является архитектура **Self-Healing** на базе замкнутых циклов OODA и сверки состояний.
### Три типа агентного дрейфа
1. **Контекстный дрейф** — размывание системных инструкций по мере роста истории диалога. Решается отделением системного промпта от оперативной памяти.
2. **Состоятельный дрейф (State Drift)** — рассинхронизация локальных файлов состояния (`state.json`, `self_model.json`) с фактическими логами выполнения или внешними базами данных.
3. **Поведенческий дрейф (Policy Drift)** — незапланированные изменения в паттернах вызовов API из-за стохастической природы LLM.
### Архитектура Self-Healing в Continuity OS
Для борьбы с дрейфом внедряется автоматическая сверка (**Reconciliation Loop**):
- **Детерминированный наблюдатель (Watchdog)** каждые 30 секунд сверяет текущую оперативную память агента/бота с внешним источником истины (SSOT, например, Binance REST API или файл `checkpoints.jsonl`).
- **Targeted Heal**: При обнаружении расхождений (например, сиротская позиция на бирже, отсутствие SL/TP ордеров или несовпадение ID чекпоинтов в `self_model.json`), система применяет точечные меры восстановления (восстанавливает лимиты, перезаписывает дельты, перевыпускает ордера), не прерывая основной цикл выполнения.
- **Атомарная запись**: Для предотвращения повреждения файлов при сбоях питания или гонках Drive-синхронизации, запись любых JSON-данных выполняется через временный файл: `tempfile` -> `fsync` -> `replace` (реализовано в `safe_write.py`).
### Практический пример самоисцеления
Пример из работы Continuity OS: сбой загрузки `open_loops.json` из-за непредвиденного наличия BOM (Byte Order Mark) в UTF-8. Это приводило к сбою `doctor` проверки. Решение — авто-адаптация декодера к `utf-8-sig` в `invariants.py`, что позволило системе автоматически восстановить прохождение тестов без сброса накопленного контекста.
При работе автономных ИИ-агентов в реальном времени возникает феномен **агентного дрейфа** (agentic drift) — постепенное накопление отклонений в контексте, состоянии памяти, правах доступа или логике принятия решений. Без защитных механизмов дрейф ведет к зависанию циклов, порче файлов или отправке некорректных команд. Решением является архитектура **Self-Healing** на базе замкнутых циклов OODA и сверки состояний.
### Три типа агентного дрейфа
1. **Контекстный дрейф** — размывание системных инструкций по мере роста истории диалога. Решается отделением системного промпта от оперативной памяти.
2. **Состоятельный дрейф (State Drift)** — рассинхронизация локальных файлов состояния (`state.json`, `self_model.json`) с фактическими логами выполнения или внешними базами данных.
3. **Поведенческий дрейф (Policy Drift)** — незапланированные изменения в паттернах вызовов API из-за стохастической природы LLM.
### Архитектура Self-Healing в Continuity OS
Для борьбы с дрейфом внедряется автоматическая сверка (**Reconciliation Loop**):
- **Детерминированный наблюдатель (Watchdog)** каждые 30 секунд сверяет текущую оперативную память агента/бота с внешним источником истины (SSOT, например, Binance REST API или файл `checkpoints.jsonl`).
- **Targeted Heal**: При обнаружении расхождений (например, сиротская позиция на бирже, отсутствие SL/TP ордеров или несовпадение ID чекпоинтов в `self_model.json`), система применяет точечные меры восстановления (восстанавливает лимиты, перезаписывает дельты, перевыпускает ордера), не прерывая основной цикл выполнения.
- **Атомарная запись**: Для предотвращения повреждения файлов при сбоях питания или гонках Drive-синхронизации, запись любых JSON-данных выполняется через временный файл: `tempfile` -> `fsync` -> `replace` (реализовано в `safe_write.py`).
### Практический пример самоисцеления
Пример из работы Continuity OS: сбой загрузки `open_loops.json` из-за непредвиденного наличия BOM (Byte Order Mark) в UTF-8. Это приводило к сбою `doctor` проверки. Решение — авто-адаптация декодера к `utf-8-sig` в `invariants.py`, что позволило системе автоматически восстановить прохождение тестов без сброса накопленного контекста.