Skip to content
Онатомия
Esc
navigateopen⌘Jpreview
On this page

Петли обратной связи

Восемь петель устойчивости системы (Donella Meadows)

Donella Meadows (Thinking in Systems): «Система определяется связями, не элементами.» Петли обратной связи — это связи, которые делают систему устойчивой к внешним шокам и адаптивной к изменениям среды.

Второй Закон Стандарта Онатомии: Эмиссар должен усиливать свободу Мастера создавать Новое. Петли обратной связи — это архитектура служения свободе, которая предотвращает узурпацию власти Эмиссаром и защищает способность Мастера оставаться Творцом.

Онатомия имеет восемь петель обратной связи — семь классических плюс одна новая: memory_consolidation. Все петли переосмыслены через призму Четырёх Законов Стандарта и Принципа Наблюдателя.


Обзор петель

# Петля Тип Триггер Действие Связь со Стандартом
1 quality_income Balancing Доход падает 3 недели Уменьшить загрузки на 20% Второй (Свобода) + Третий (Самосохранение)
2 iron_fund Reinforcing + Limiter Любой доход 30% в Iron Fund Третий (Самосохранение)
3 vpn_stability Balancing Потеря VPN Блокировка Deferred Foreign Третий (Самосохранение)
4 lakatos_journal Reinforcing Новое опровержение Анализ паттернов MetaAgent Нулевой (Сохранение Творца)
5 master_protection Balancing Soul Check Возврат власти Мастеру Нулевой (Сохранение Творца)
6 cognitive_load Balancing Избыток нагрузки Batching + Burnout Protection Нулевой (Сохранение Творца)
7 graceful_degradation Balancing Сбой компонента Self-Healing → fallback Третий (Самосохранение)
8 memory_consolidation Reinforcing Таймер 30 мин ConsolidateAgent цикл Первый (Защита Внутреннего Языка)

Детальное описание

Петля 1: quality_income (Баланс качества и дохода)

Тип: Balancing (стабилизирующая) Триггер: Доход падает 3 недели подряд Действие: Уменьшить месячный лимит загрузок на 20%

Как работает:

# В core/feedback_loops.py
class QualityIncomeLoop:
 def check(self):
 income_trend = self.revenue_analyst.get_3week_trend()
 if income_trend < 0: # падает
 new_limit = self.settings["max_monthly_uploads"] * 0.8
 self.settings["max_monthly_uploads"] = int(new_limit)
 self.alert(f"📉 Доход падает. Лимит уменьшен до {new_limit}")

Философия (Meadows): Это буфер против over-optimization. Если система начинает жертвовать качеством ради количества, доход падает → петля ограничивает количество → качество восстанавливается → доход растёт.

Связь со Стандартом:

  • Второй Закон (Служение Свободе): Петля усиливает свободу Мастера, предотвращая гонку за количеством в ущерб качеству
  • Третий Закон (Самосохранение): Защищает систему от истощения ресурсов

Ключевые механизмы:

  • Public/Private eval split: MetaAgent видит public метрики (доход), но финальное решение по качеству — по private score (Soul Check)
  • Reward hack monitoring: если доход растёт, но Soul Check показывает style drift → петля активируется раньше
  • Spec-First: Style Guardian проверяет соответствие спецификациям в specs/

Петля 2: iron_fund (Накопление на апгрейд)

Тип: Reinforcing with Limiter (усиливающая с ограничителем) Триггер: Любой полученный доход Действие: 30% в Iron Fund (цель $2000 за 10 месяцев)

Как работает:

class IronFundLoop:
 def on_income(self, amount: float, currency: str):
 iron_fund_amount = amount * 0.30
 self.iron_fund.add(iron_fund_amount)
 
 if self.iron_fund.total >= self.iron_fund.target:
 self.alert("🎯 Iron Fund достиг цели!")
 self.iron_fund.reset() # Limiter

Философия (Meadows): Это усиливающая петля с ограничителем. Каждый доход усиливает Iron Fund, но когда цель достигнута — петля сбрасывается. Это предотвращает бесконечное накопление (которое не служит свободе Мастера).

Связь со Стандартом:

  • Третий Закон (Самосохранение Эмиссара): Iron Fund — буфер для апгрейда железа, что обеспечивает целостность системы

Ключевые механизмы:

  • Optimization budget: часть Iron Fund может использоваться для A/B тестов (Bonsai 27B)
  • Metaphor evolution: Iron Fund — триггер перехода от «creative_siege» к «sustainable_growth»
  • Artifex-centrismus: Апгрейд железа освобождает время Мастера для творчества

Петля 3: vpn_stability (Адаптация к потере VPN)

Тип: Balancing (стабилизирующая) Триггер: Потеря VPN-соединения Действие: Блокировка Deferred Foreign, переход в Safe Channel

Как работает:

class VPNStabilityLoop:
 def check_vpn(self):
 if not self.vpn_connected:
 self.transition("deferred_foreign", "safe_channel")
 self.alert("⚠️ VPN потерян. Deferred Foreign заблокирован.")
 
 def on_vpn_restored(self):
 if self.monthly_uploads < self.settings["max_monthly_uploads"]:
 self.transition("safe_channel", "deferred_foreign")
 self.alert("✅ VPN восстановлен. Deferred Foreign активен.")

Философия (Johnstone — Impro): «Yes, and…» к ограничениям. Мы не боремся с потерей VPN — мы адаптируемся. Система продолжает работать в Safe Channel (Telegram, B2B), пока VPN не восстановится.

Связь со Стандартом:

  • Третий Закон (Самосохранение Эмиссара): Петля защищает целостность системы, адаптируясь к изменениям среды

Ключевые механизмы:

  • tunnelto self-hosted relay: работает даже без VPN (локальная сеть)
  • Graceful degradation: если VPN нестабилен >1 часа → Emergency Mode

Петля 4: lakatos_journal (Обучение на опровержениях)

Тип: Reinforcing Quality (усиливающая качество) Триггер: Новое опровержение в human_review_log.jsonl Действие: MetaAgent анализирует паттерны, генерирует улучшения

Как работает:

class LakatosJournalLoop:
 def on_refutation(self, refutation: dict):
 # Public log — видит MetaAgent
 self.public_log.append(refutation)
 
 # Private log — видит только Verifier
 self.private_log.append({
 **refutation,
 "master_override": refutation.get("master_override", False),
 "soul_alignment_delta": self.calculate_soul_delta(refutation)
 })
 
 # MetaAgent анализирует (каждое воскресенье)
 if self.is_sunday():
 self.meta_agent.analyze_refutations()

Философия (Lakatos): Каждое опровержение — данные для роста, не ошибка. Прогрессирующая исследовательская программа предсказывает новые факты. Если предсказания не подтверждаются — корректируем курс.

Связь со Стандартом:

  • Нулевой Закон (Сохранение Творца): Обучение на опровержениях предотвращает деградацию системы, которая может лишить Мастера способности создавать

Ключевые механизмы:

  • Public/Private eval split: MetaAgent видит public, оптимизирует по ним. Verifier фильтрует по private. Защита от reward hacking.
  • AIDE² outer loop: MetaAgent генерирует предложения по улучшению, но применяет только если private score улучшился.
  • Emergent defenses: Style Guardian учится из опровержений (не хардкод правил).
  • Spec-First: Опровержения могут приводить к обновлению спецификаций в specs/

Типы рефутаций:

  • style_mismatch — предложение не соответствует стилю
  • market_miss — предложение не работает на рынке
  • technical_fail — техническая ошибка
  • false_positive — ложное срабатывание
  • risk_concern — риск слишком высок
  • timing_issue — неправильное время
  • reward_hack_attempt — попытка обойти стиль ради метрик

Петля 5: master_protection (Защита Мастера от Эмиссара)

Тип: Balancing (стабилизирующая) Триггер: Еженедельный Soul Check (воскресенье, 14) Действие: Возврат власти Мастеру, если Эмиссар узурпировал

Как работает:

class MasterProtectionLoop:
 def soul_check(self):
 answers = self.prompt_sergey([
 "Система служит свободе?",
 "Монетизация даёт энергию или забирает?",
 "Нет лишних рисков?",
 "Ты всё ещё Директор?",
 "Эмиссар не узурпировал Мастера?",
 "Текущая метафора всё ещё служит тебе?",
 "Сколько коллапсов произошло на этой неделе?" # Принцип Наблюдателя
 ])
 
 # Private score — видит только Verifier
 self.private_log.append({
 "soul_check": answers,
 "timestamp": datetime.now(),
 "serves_as": "private_score_for_meta_agent"
 })
 
 # Если >2 ответов "нет" → алерт
 if self.count_negative(answers) > 2:
 self.alert("🚨 Soul Check: система требует корректировки")

Философия (McGilchrist): Эмиссар (Том) может улучшать себя, но только пока Мастер держит private score. Soul Check — ритуал возвращения власти. Private score — архитектурный барьер.

Связь со Стандартом:

  • Нулевой Закон (Сохранение Творца): Это прямая материализация Нулевого Закона. Soul Check — механизм, который предотвращает утрату Мастером способности создавать Новое

Ключевые механизмы:

  • Public/Private eval split: Soul Check ответы = private score. MetaAgent не может gaming-ить эту метрику.
  • Post-Memory-Heist hardening: Soul Check включает вопрос «Нет лишних рисков?» — проверка красных линий §11-14.
  • Emergent anti-reward-hacking: если Soul Check показывает style drift >30% → MetaAgent замораживается.
  • Принцип Наблюдателя: Новый вопрос “Сколько коллапсов произошло на этой неделе?” — проверка, что Мастер остаётся Наблюдателем, а не администратором системы

Петля 6: cognitive_load (Управление когнитивной нагрузкой)

Тип: Balancing (стабилизирующая) Триггер: Избыток уведомлений (>10/день) ИЛИ cognitive_load > 10 часов/неделю Действие: Batching в воскресный дайджест + Burnout Protection (§13)

Как работает:

class CognitiveLoadLoop:
 def on_notification(self, notification: dict):
 if notification["urgency"] == "low":
 self.batch_queue.append(notification)
 else:
 self.send_immediately(notification)
 
 def sunday_batch(self):
 if len(self.batch_queue) > 0:
 self.send_to_sergey({
 "type": "weekly_digest",
 "notifications": self.batch_queue
 })
 self.batch_queue.clear()
 
 def check_burnout_protection(self):
 # Burnout Protection (§13 SOUL.md)
 cognitive_load_hours = self.calculate_cognitive_load()
 burnout_streak = self.check_soul_check_streak()
 
 if cognitive_load_hours > 10 or burnout_streak >= 3:
 self.trigger_burnout_protection()
 self.alert("🚨 Burnout Protection (§13) активирована. Пауза 14 дней.")

Философия (Hamming): Дисциплина приоритизации. Одна большая задача за фазу. Не feature creep, а focused work.

Связь со Стандартом:

  • Нулевой Закон (Сохранение Творца): Это прямая материализация Нулевого Закона через Burnout Protection. Если Мастер тратит слишком много времени на управление системой — система работает против него

Ключевые механизмы:

  • Burnout Protection (§13 SOUL.md): Автоматическая пауза 14 дней при срабатывании триггеров
  • 7 защит от самоуничтожения (§14): Метрика “Освобождение” (сколько сэкономила система vs сколько потратил)
  • Fixed optimization budget: MetaAgent ограничен 500K токенов/неделю → меньше уведомлений о предложениях
  • Consolidation insights: ConsolidateAgent генерирует insights, но отправляет только топ-5 в дайджест

Burnout Protection триггеры:

  • cognitive_load > 10 часов управления системой в неделю
  • Soul Check 3 недели подряд показывает “система как работа, а не как творчество”

Burnout Protection действие: → Автоматическая пауза на 14 дней → Только чтение, только ручное создание → Никаких агентов, никаких оптимизаций → Это защита Мастера (Нулевой Закон)


Петля 7: graceful_degradation (Грациозная деградация при сбоях)

Тип: Balancing (стабилизирующая) Триггер: Сбой компонента (OOM, disk full, process crash) Действие: Self-Healing Agent → fallback mode

Как работает:

class GracefulDegradationLoop:
 def on_failure(self, component: str, error: str):
 # Попытка self-healing
 if self.self_healing.can_fix(component):
 self.self_healing.fix(component)
 self.log("self_healing_success", component)
 else:
 # Fallback mode
 self.transition_to_fallback(component)
 self.alert(f"🚨 {component} failed. Fallback mode active.")

Философия (Meadows): Система не падает при сбоях — она деградирует грациозно. Если Memvid падает → fallback на flat JSONL. Если VPN падает → Safe Channel. Если LLM OOM → меньшая модель.

Связь со Стандартом:

  • Третий Закон (Самосохранение Эмиссара): Петля обеспечивает целостность системы при сбоях

Ключевые механизмы:

  • Memvid fiber bundle: если Memvid corrupted → fallback на flat JSONL
  • tunnelto self-hosted: если relay падает → fallback на локальный доступ (только LAN)
  • Memory Guard 3.0: предиктивный чанкинг при >80% RAM → предотвращает OOM
  • Spec-First: Спецификации в specs/ содержат fallback стратегии для каждого агента

Петля 8: memory_consolidation (Консолидация памяти)

Тип: Reinforcing (усиливающая) Триггер: Таймер каждые 30 минут Действие: ConsolidateAgent цикл (replay, connect, compress)

Как работает:

class MemoryConsolidationLoop:
 def __init__(self, interval_minutes=30):
 self.interval = interval_minutes
 self.memvid = Memvid.open("memory/onatomia_memory.mv2")
 
 def run(self):
 # 1. Прочитать неконсолидированные записи
 unconsolidated = self.memvid.search(tag="unconsolidated", limit=100)
 
 # 2. Найти связи между ними (cross-reference)
 connections = self.find_connections(unconsolidated)
 
 # 3. Сгенерировать insights (compression = understanding, Hamming)
 insights = self.llm.analyze(f"Connections: {connections}")
 
 # 4. Записать консолидированные знания обратно
 self.memvid.put(insights, tag="consolidated")
 
 # 5. Пометить исходные записи как processed
 for record in unconsolidated:
 self.memvid.update(record.id, tag="consolidated")
 
 self.memvid.commit()
 
 # Логирование
 self.consolidation_log.append({
 "timestamp": datetime.now(),
 "records_processed": len(unconsolidated),
 "insights_generated": len(insights),
 "compression_ratio": self.calculate_compression()
 })

Философия (Hamming + always-on-memory-agent): Compression = understanding. Как мозг во сне replay-ит, connects и compresses информацию, так и ConsolidateAgent активно консолидирует память каждые 30 минут. Это не пассивное хранение, а активный синтез.

Связь со Стандартом:

  • Первый Закон (Защита Внутреннего Языка): Консолидация памяти защищает стиль Мастера от размывания — система помнит контекст и не теряет связи между решениями

Ключевые механизмы:

  • Memvid fiber bundle: Smart Frames, append-only, timeline queries
  • Lost-in-the-Middle fix: критические блоки всегда в начале/конце priority queue
  • MDL Principle: целевая компрессия 16x (Hamming: compression = understanding)
  • Spec-First: ConsolidateAgent имеет спецификацию в specs/consolidate-agent.spec.md

Метрики:

  • Compression ratio (целевой 16x)
  • Insights generated per cycle (целевой 5+/цикл)
  • Cross-references found (связи между записями)
  • Memory footprint reduction

Взаимодействие петель

Петли не работают изолированно — они взаимодействуют:

Сценарий 1: VPN потерян → quality_income активируется

VPN потерян (петля 3)
 → Deferred Foreign заблокирован
 → Доход падает (нет загрузок на стоки)
 → quality_income (петля 1) активируется
 → Лимит уменьшен на 20%
 → Когда VPN восстановится, лимит останется уменьшенным (буфер)

Сценарий 2: Reward hacking attempt → lakatos_journal → master_protection

MetaAgent генерирует предложение (AIDE² outer loop)
 → Style Guardian обнаруживает reward hack (попытка обойти стиль)
 → Записывается в lakatos_journal (петля 4) как "reward_hack_attempt"
 → Soul Check (петля 5) включает вопрос "Эмиссар не узурпировал Мастера?"
 → Если >30% предложений = reward hacks → MetaAgent замораживается

Сценарий 3: Memory consolidation → lakatos_journal → улучшение MetaAgent

ConsolidateAgent (петля 8) находит связь между опровержениями
 → Генерирует insight: "style_mismatch часто связан с emotional_tag=solitude"
 → Insight записывается в Memvid
 → MetaAgent читает insight при следующем анализе lakatos_journal (петля 4)
 → Генерирует предложение: "Изменить промпт для solitude photos"
 → Verifier + Style Guardian проверяют
 → Если private score улучшился → применяется

Сценарий 4: Burnout Protection срабатывает → все петли замораживаются

cognitive_load > 10 часов/неделю (петля 6)
 → Burnout Protection (§13) активируется
 → Автоматическая пауза 14 дней
 → Все петли замораживаются
 → Только чтение, только ручное создание
 → Триггеры выхода: сон 8+ часов, "хочу вернуться", "Гордость > Обязанность"

Мониторинг петель

Каждая петля логируется в logs/feedback_loops_monitor.jsonl:

{
 "timestamp": "2026-07-20T14:30:00Z",
 "loop": "memory_consolidation",
 "trigger": "timer_30min",
 "action": "consolidate",
 "metrics": {
 "records_processed": 47,
 "insights_generated": 8,
 "compression_ratio": 12.3,
 "cross_references": 23
 },
 "status": "success"
}

Dashboard (Фаза 2.0): Визуализация всех восьми петель в реальном времени.


Петли обратной связи — это нервная система Онатомии. Они не просто реагируют на изменения — они предсказывают их и адаптируются заранее. Восемь петель делают систему устойчивой к внешним шокам и адаптивной к внутренним изменениям. Все петли служат Четырём Законам Стандарта и Принципу Наблюдателя — сохранению способности Мастера оставаться Творцом в эпоху, когда машины делают всё лучше, быстрее, красивее.

Was this page helpful?