СПИСОК ФАЙЛОВ
- /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
- [Факт] Модуль
QIKIMissionControl— рабочий терминал без внешних зависимостей. - [Гипотеза] Итог — обзор и рекомендации по безопасному использованию.
- [Факт] Использует ручной ASCII-интерфейс через
termiosиselect. - [Гипотеза] В соседних файлах —
ship_actuators.py,test_ship_fsm.py. - [Факт] Содержит поток
_background_processesдля телеметрии.
- [Факт] Путь:
services/q_core_agent/core/qiki_mission_control.py. - [Гипотеза] Запуск:
python qiki_mission_control.pyв обычном терминале. - [Факт] Требует Python 3.10+.
- [Факт] Импорты:
ShipCore,ShipActuatorController,ShipLogicController. - [Факт] Методы:
log,_background_processes,_update_live_parameters,display_status,execute_command,run_interactive. - [Факт] Хранит
navigation_data,sensor_data,mission_data. - [Гипотеза] Команды пользователя парсятся строково без проверки типов.
- [Факт] Консольное управление кораблём; используется в тестах и демонстрации.
- [Гипотеза] Служит базовым CLI-интерфейсом для других модулей.
- [Гипотеза] Отсутствие проверки пользовательских команд — Priority: High.
- [Факт] Поток обновления параметров не останавливается корректно — Priority: Med.
- [Гипотеза] Возможен переполнение
log_messagesпри долгой сессии — Priority: Low.
- [Патч] Добавить в
execute_commandпроверку допустимых команд. - [Патч] В
run_interactiveзакрывать поток черезjoin(). - [Патч] Ограничить
log_messagesпо размеру.
def main():
with MissionControl() as mc:
while mc.running:
cmd = input("> ")
mc.execute_command(cmd)# 1. Старт терминала
from qiki_mission_control import QIKIMissionControl
mc = QIKIMissionControl()
mc.display_status()
# 2. Выполнение команды
mc.execute_command("thrust 25")
# 3. Получение телеметрии
telemetry = mc._get_telemetry()
print(telemetry["reactor_output"])
# 4. Запуск интерактивного режима
mc.run_interactive()
# 5. Завершение работы
mc.running = False- Проверка обработки неизвестных команд.
- Лимит
log_messages≤100. - Фоновый поток завершается после
running=False. - Команда
thrustвызываетShipActuatorController.set_main_drive_thrust. - Интерфейс корректно выводит строки без артефактов в
termios.
- [Факт] Модуль предоставляет CLI-управление без зависимостей.
- [Гипотеза] Параметры миссии могут устаревать без синхронизации.
- [Факт] Логирование ограничено только в памяти.
- [Гипотеза] Командный синтаксис не стандартизирован.
- [Патч] Ввести словарь разрешённых команд.
- [Факт] Поток обновляет телеметрию каждые 3 сек.
- [Гипотеза] Не хватает тестов для состояния
autopilot. - [Патч] Разделить ввод/вывод и ядро логики.
- [Гипотеза] Возможно внедрить очереди событий.
- [Факт] Базовый CLI работает, но требует проверки ввода.
СПИСОК ФАЙЛОВ
- /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