mt5-manager/docs/articles/part-05/notes.md
153 lines
17 KiB
Markdown
# Рабочие заметки к пятой части
## Точка остановки вычитки, 2 ноября 2026 года
Первый пункт списка правок («Получаем новую копию терминала») разобран.
По ходу вычитки добавлен перенос экземпляров при смене базовой папки:
подтверждение и штатная остановка, откат при ошибке, блокировка поля замочком,
если проект менеджера находится внутри базовой папки. Это отражено в тексте.
Продолжить со второго пункта — раздела «Подготавливаем исходные файлы».
Локальные правки автора в начале статьи сохранены.
В отдельном разделе «Первоначальная установка», перед «Получаем новую копию терминала», описаны два способа
получения и запуска проекта: через MetaEditor внутри установки MT5 либо
обычным Git в отдельную папку. Пояснена связь размещения менеджера с блокировкой
базовой папки и подтверждённым переносом экземпляров.
## Снимки интерфейса, 2 ноября 2026 года
Все 11 рисунков заменены на финальные PNG из внешнего браузера:
- `images/01-placement-locked.png`, 750 × 679 пикселей.
- `images/02-placement-advanced.png`, 750 × 666 пикселей.
- `images/03-missing-files.png`, 750 × 655 пикселей.
- `images/04-move-confirmation.png`, 750 × 655 пикселей.
- `images/05-accounts-list.png`, 750 × 426 пикселей.
- `images/06-account-empty.png`, 750 × 613 пикселей.
- `images/07-account-edit.png`, 750 × 769 пикселей.
- `images/08-delete-confirmation.png`, 750 × 577 пикселей.
- `images/09-terminals.png`, 750 × 769 пикселей.
- `images/10-create-terminal.png`, 750 × 769 пикселей.
- `images/11-project-updates.png`, 750 × 594 пикселя.
Из присланных снимков обрезана только область страницы, без масштабирования
и изменения пикселей; PNG сохранены без сжатия. Ссылки в черновике и манифест
публикации обновлены.
Предварительные JPEG из `images/previews/` и прежние PNG сохранены отдельно
как рабочие материалы.
| Рис. | Кадр | Содержимое |
|---|---|---|
| 1 | [Размещение — финальный PNG](images/01-placement-locked.png) | Готово: верх настроек целиком, базовая папка с замочком, исходная установка и подтверждение наличия обоих EXE; дополнительные параметры закрыты |
| 2 | [Дополнительные параметры — финальный PNG](images/02-placement-advanced.png) | Готово: блок с раскрытыми временем ожидания и порогом свободного места; кнопка сохранения видна |
| 3 | [Недостающие EXE — финальный PNG](images/03-missing-files.png) | Готово: исходная папка C:\MT5\terminal_template, сообщение об отсутствии обоих EXE и раскрытый раздел загрузки с кнопками «Выбрать» |
| 4 | [Подтверждение переноса — финальный PNG](images/04-move-confirmation.png) | Готово: окно переноса четырёх остановленных экземпляров из C:\MT5 в C:\MT6 с кнопками «Отмена» и «Перенести»; подпись рисунка приведена к этому состоянию |
| 5 | [Список счетов — финальный PNG](images/05-accounts-list.png) | Готово: заголовок «Торговые счета» и четыре свёрнутых экземпляра со сведениями о реквизитах |
| 6 | [Без реквизитов — финальный PNG](images/06-account-empty.png) | Готово: раскрыт первый экземпляр без реквизитов; видны имя папки, флажок отображаемого имени, свёрнутая группа реквизитов и нижние кнопки |
| 7 | [Редактирование счёта — финальный PNG](images/07-account-edit.png) | Готово: раскрыта форма второго экземпляра с реквизитами; видны имя папки, флажок отображаемого имени, логин, пустое поле пароля, сервер, замена servers.dat, удаление реквизитов и нижние кнопки |
| 8 | [Подтверждение удаления — финальный PNG](images/08-delete-confirmation.png) | Готово: окно удаления MetaTrader5.2 с путём, предупреждением и кнопками «Отмена» и «Удалить экземпляр» |
| 9 | [Главная страница — финальный PNG](images/09-terminals.png) | Готово: заголовок, поиск и фильтры, первые две карточки работающих демо-терминалов целиком с финансовыми показателями |
| 10 | [Создание экземпляра — финальный PNG](images/10-create-terminal.png) | Готово: окно «Новый терминал» целиком с раскрытым подключением к счёту, необязательными реквизитами, выбором servers.dat и нижними кнопками |
| 11 | [Обновление проекта — финальный PNG](images/11-project-updates.png) | Готово: весь блок обновления проекта и сервиса — сведения о репозитории, состояние EX5 и автозапуска, пояснения и кнопки проверки обновлений и сборки |
Актуальный текст и все 11 финальных PNG перенесены на MQL5 через редактор и
мастер изображений. Сохранён [черновик № 9](https://www.mql5.com/ru/articles/23709/279070#!tab=article).
Проверены 14 разделов с якорями, 15 листингов, подписи и размеры всех рисунков.
Четыре изменённых листинга вставлены заново через мастер «Код»; остальные сохранены
из предыдущей редакции. Заголовок и краткое описание статьи сохранены.
Приложенный MQL5.zip обновлён: 212 413 байт, 28 файлов. SHA-256 скачанного с сайта
архива совпал с локальным. Статья остаётся черновиком.
Сохранённый текст: `publish/article5-site-20261102.html`. Снимок результата:
`publish/article5-final-site-proof.jpg`.
Для управления встроенным браузером используется прямой инструмент `mcp__cua_repl.js`.
Его отсутствие в `ALL_TOOLS` не означает недоступность: в конфигурации он исключён
из списков code_mode и deferred. 2 ноября прямой вызов успешно открыл редактор MQL5.
## Состояние на 1 ноября 2026 года
Основной текст: [draft.md](draft.md).
Текст приведён к функциональности, зафиксированной коммитом `779efef`:
единственная исходная установка MT5, необязательный servers.dat для каждого
экземпляра, сворачиваемые реквизиты и отдельное отображаемое имя, сохранение без
запуска, явная проверка подключения с восстановлением состояния процесса,
переименование остановленной копии, удаление экземпляра с подтверждением,
сообщения внутри карточек и круговой отсчёт до автоматического закрытия.
Дополнены сценарии тестирования и заключение. Таблица версий и архив пересобраны
из текущих исходников. Для проверки приложения ранее выполнены все 79 тестов;
работа уведомлений дополнительно проверена в браузере.
Следующий шаг — совместная вычитка обновлённых абзацев. Публикация не отправлена
на проверку. Снимки прежних форм пока требуют замены.
## Подготовка публикации
Последняя сохранённая редакция на сайте:
[278690](https://www.mql5.com/ru/articles/23709/278690#!tab=article).
Она ещё не содержит упрощённые настройки и последние изменения интерфейса.
1 ноября открыт редактор и сохранена локальная резервная копия его HTML.
Перенос правок не выполнен: управление браузером остановлено инструментом,
который не смог надёжно определить текущий URL при обращении к окну Chrome.
После восстановления доступа перенести обновлённый текст и два изменённых
листинга (дерево исходной установки и JSON настроек), заменить снимки форм
и вложенный MQL5.zip, затем сохранить новый черновик и сверить его с Markdown.
Заголовок на сайте сохранён: «Разрабатываем менеджер терминалов (Часть 5):
Автоматизация установки». Краткое описание заполнено вместо заглушки.
Статья остаётся черновиком, на проверку модератору не отправлялась.
Оглавление содержит 13 ссылок на разделы и заканчивается заключением;
«Содержание архива» в него не включено. Имена файлов и функций в строках
выделены курсивом. Все 15 листингов вставлены через мастер «Код»,
Python-листинги — с языком Python. Семь изображений загружены через мастер
картинки и снабжены заголовками и подписями. После сохранения проверено
совпадение всех листингов с локальными файлами и наличие семи рисунков.
Прежние снимки обрезаны из предоставленных пользователем PNG до области страницы
шириной 750 пикселей, без масштабирования и изменения пикселей, и сохранены
в PNG без сжатия. Проверены расширения и размеры изображений на сайте.
В прежней версии настройки показаны на пяти рисунках: размещение, исходные файлы, обновление
проекта и сервиса, список счетов, раскрытая форма изменения реквизитов.
Главная страница с первыми двумя работающими терминалами и форма создания
экземпляра показаны на рисунках 6 и 7.
Нумерация рисунков сохранена для замены изображений без перестройки ссылок.
Перед всеми 13 заголовками разделов и перед «Содержанием архива» добавлен
один пустой абзац. Все названия каталогов в таблице выделены жирным.
Правила закреплены в генераторах публикации и общей памятке оформления.
Копия тела сохранённой страницы: `publish/article5-site.html`.
## Проверка требований к исходникам и архиву
Подготовлен `publish/MQL5.zip`: 28 файлов приложения и документации.
Все находятся в `MQL5/Shared Projects/mt5-manager`, как и в четвёртой части.
В архиве нет EXE, EX5, DLL, servers.dat, личных конфигураций, каталогов .git,
.claude, .venv и локального tools/test_first_login.py. Файл config.json создан
из config.example.json: оба содержат пустой список счетов.
Каталоги tests и tools исключены из архива; в статье и документации архива
указано, что проверки и вспомогательные инструменты доступны в репозитории.
Из иконок включена только MetaQuotes-Demo.ico. Правила для остальных иконок
удаляются из публикуемой копии styles.css, исходный CSS в репозитории не меняется.
Текстовые файлы архива проверены на отсутствие названий исключённых брокеров.
Таблица статьи содержит 18 основных рабочих файлов с версиями из манифеста;
документация указана одной строкой, прочие статические ресурсы — строкой «…».
README, LICENSE, config.example.json, каталог img и содержимое docs не перечисляются.
Архив и сокращённая таблица формируются из общего списка в `publish/build_archive.py`.
Список путей и SHA-256 содержится
в `publish/archive-manifest.json`. Версии сверены с объявлениями в исходниках.
Вложение в редакции 278512 скачано с сайта и побайтно сверено с локальным ZIP;
при сохранении оформления в редакции 278513 оно оставлено без изменений.
Унаследованный MQL5-сервис версии 1.01 оформлен по требованиям модератора:
комментарии к блокам //---, первый уровень от левого края, непустые рамки функций,
выравнивание комментариев к переменным. В тексте пятой части MQL5-листингов нет;
основные листинги написаны на Python, поэтому синтаксис //--- к ним не применяется.
Проверены целостность ZIP, соответствие хешей манифесту, отсутствие запрещённых
файлов и счетов, синтаксис Python и локальные ссылки документации внутри архива.
До исключения тестов из архива из его изолированной распаковки успешно выполнены
все 29 тестов. После изменения состава повторно проверены целостность, хеши,
отсутствие исключённых файлов и соответствие скачанного вложения локальному архиву.
Проверка связана с ранее полученными замечаниями к четвёртой части;
это не подтверждение принятия пятой статьи модератором.