СПИСОК ФАЙЛОВ
- /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
- [Факт] Модуль с интерфейсом
QIKIMissionControlUltimate— полноценный терминал наprompt_toolkit. - [Гипотеза] Итог — обзор поведения, поиск рисков, патч-скетч и примеры.
- [Факт] Исходник использует
prompt_toolkit; при отсутствии пытается установить библиотеку черезpip. - [Факт] Рядом в репо лежат
ship_core.py,ship_actuators.py,test_ship_fsm.py. - [Гипотеза] Тесты запускаются вручную, автоматической сборки нет.
- [Факт] Путь:
services/q_core_agent/core/qiki_mission_control_ultimate.py. - [Факт] Окружение: Python 3.12+, Unix/Linux терминал, возможно Termux.
- [Гипотеза] Запуск как
python qiki_mission_control_ultimate.py.
- [Факт] Импорты:
prompt_toolkit,ShipCore,ShipActuatorController,ShipLogicController. - [Факт] Класс
QIKIMissionControlUltimate: методыlog,_background_simulation,_update_live_telemetry, UI-конструкторы (_create_header_window,_create_layout),run_simple_mode,run. - [Факт] Хранит
mission_data,live_telemetry, журнал событий. - [Гипотеза] Поток
_background_simulationсимулирует параметры раз в несколько секунд. - [Факт] Автопилот реализован через
ShipLogicController.
- [Факт] Служит фронтендом для управления кораблём.
- [Гипотеза] Вызывается оператором; отдаёт команды в
ShipActuatorControllerи получает телеметрию изShipCore. - [Гипотеза] Риски: длительный UI-цикл блокирует другие процессы.
- [Факт] Auto-pip внутри кода (установка
prompt_toolkit) — Priority: High. - [Гипотеза] Журнал событий ограничен 20 записями, возможна потеря важных данных — Priority: Med.
- [Гипотеза] Нет обработки исключений при запуске фонового потока — Priority: Med.
- [Патч] Удалить автоматическую установку
pip, заменить на сообщение об ошибке. - [Патч] Добавить параметр размера журнала и вынести в конфиг.
- [Патч] Обернуть запуск фонового потока в try/except с логированием.
# skeleton
class MissionControlUI:
def __init__(self, core, actuators, logic, ui_factory):
self.core = core
self.actuators = actuators
self.logic = logic
self.ui = ui_factory()
def run(self):
while True:
self.ui.render(self.core.telemetry())# 1. Запуск в упрощённом режиме
from qiki_mission_control_ultimate import QIKIMissionControlUltimate
mc = QIKIMissionControlUltimate()
mc.run_simple_mode()
# 2. Логирование события
mc.log("TEST", "Проверка")
# 3. Переключение автопилота
mc.autopilot_enabled = True
# 4. Получение времени миссии
print(mc._get_mission_time())
# 5. Завершение работы
mc.running = False- Проверить запуск без
prompt_toolkit→ корректная ошибка. - Эмуляция обновления телеметрии: данные не выходят за границы.
- Фоновые потоки завершаются при
running=False. - В журнал добавляется не более N записей.
- Автопилот меняет
ship_stateпри логическом цикле.
- [Факт] Код создаёт профессиональный терминал.
- [Гипотеза] Потоки могут привести к гонкам данных.
- [Факт] Автопилот интегрирован, но не изолирован от UI.
- [Гипотеза] Авто-pip затрудняет развёртывание.
- [Факт] Живые данные симулируются случайно.
- [Гипотеза] Нет логирования ошибок в UI.
- [Патч] Ввести конфиги для параметров симуляции.
- [Патч] Добавить тесты на перезапуск UI.
- [Гипотеза] Возможно разделить модель и представление.
- [Факт] Основные функции работают, но требуют отделения зависимостей.
СПИСОК ФАЙЛОВ
- /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