СПИСОК ФАЙЛОВ
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/qiki_mission_control_ultimate.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/qiki_mission_control.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/rule_engine.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/ship_actuators.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/ship_bios_handler.py
- [Факт] Класс
RuleEngineреализуетIRuleEngine; генерирует предложения действий. - [Гипотеза] Итог — чек-риск и патч-скетч.
- [Факт] Использует Protobuf-сообщения (
Proposal,ActuatorCommand,FSMStateEnum). - [Гипотеза] В окружении есть
generated/*.pb2файлы. - [Факт] Зависит от
AgentContextдля проверки BIOS.
- [Факт] Путь:
services/q_core_agent/core/rule_engine.py. - [Гипотеза] Вызывается агентом при каждом цикле принятия решения.
- [Факт] Методы:
__init__,generate_proposals. - [Факт] Правило: при
context.is_bios_ok()==FalseпредлагаетSAFE_MODE. - [Гипотеза] Дополнительные правила пока не реализованы.
- [Факт] Производит список
Proposalдля верхнего уровня агента. - [Гипотеза] Считывает состояние из
AgentContextи передает команды вShipCore.
- [Гипотеза] Нет разграничения уровней приоритетов (значения захардкожены) — Priority: Med.
- [Факт] Отсутствуют проверки на дублирование предложений — Priority: Low.
- [Гипотеза] При отсутствии Protobuf зависимостей модуль не имеет fallback — Priority: Low.
- [Патч] Вынести коэффициенты
priorityиconfidenceв конфиг. - [Патч] Добавить проверку, есть ли уже активное предложение
SAFE_MODE.
class Rule:
def evaluate(ctx) -> Optional[Proposal]: ...
class RuleEngine:
def __init__(self, rules): self.rules = rules
def generate(self, ctx): return [r.evaluate(ctx) for r in self.rules if r.evaluate(ctx)]# 1. Инстанцирование
engine = RuleEngine(context, {})
# 2. Генерация предложений
proposals = engine.generate_proposals(context)
# 3. Проверка наличия safe-mode
if any(p.type == Proposal.ProposalType.SAFETY for p in proposals):
print("SAFE MODE suggested")
# 4. Добавление новой конфигурации
engine.config["max_priority"] = 1.0
# 5. Логгирование
from core.agent_logger import logger
logger.info(f"Generated {len(proposals)} proposals")- Симулировать
BIOS not OK→ получаемSAFE_MODE. - Убедиться, что при
BIOS OKсписок пуст. - Проверить корректность полей
Proposal(ID, приоритет). - Обработка неизвестного
context(исключения). - Подключение к реальному
AgentContextбез Protobuf ошибок.
- [Факт] Реализовано минимальное правило безопасности.
- [Гипотеза] Конфигурация не используется.
- [Факт] Код лаконичен, но без расширяемости.
- [Гипотеза] Нужен механизм регистрации правил.
- [Патч] Ввести структуру
Ruleи списком. - [Гипотеза] Логирование не учитывает контекст.
- [Факт] Возвращается список
Proposal. - [Патч] Добавить type-hints для
config. - [Гипотеза] Возможны гонки при многопоточном доступе.
- [Факт] Модуль годится для MVP, но требует расширения.
СПИСОК ФАЙЛОВ
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/qiki_mission_control_ultimate.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/qiki_mission_control.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/rule_engine.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/ship_actuators.py
- /home/sonra44/QIKI_DTMP/services/q_core_agent/core/ship_bios_handler.py