Описание
Нужно реализовать функцию/таск для OneScript (task onescript), которая при запуске будет автоматически переносить общие модули и связанные объекты из библиотеки prometheus в репозиторий расширения prometheus-e1c (каталог src/cfe/prometheus_client/...) с приведением оформления к единому стилю.
Дополнительно требуется унифицировать оформление модулей как в библиотеке, так и в расширении: вместо «ручных» комментариев-разделителей использовать стандартные области (#Область … / #КонецОбласти), согласованные по структуре и наименованиям.
Зачем это нужно
- Синхронизация изменений между библиотекой
prometheus и расширением prometheus-e1c сейчас делается вручную и легко ошибиться или что-то пропустить.
- Единый стиль оформления (области вместо комментариев) упростит навигацию, сопоставление файлов между репозиториями и последующую поддержку.
- Подготовка к дальнейшей автоматизации: единообразные области позволят позже писать более точные скрипты миграции и проверки расхождений.
Требования к реализации
Критерии приемки
- Можно запустить один сценарий (одной командой), который:
- Обновляет выбранный список модулей между
prometheus и prometheus-e1c.
- Не порождает лишних диффов при повторном запуске (кроме реальных изменений в исходной библиотеке).
- Во всех затронутых модулях:
- Вместо «ручных» комментариев-секций используются области.
- Набор областей и их порядок совпадает между соответствующими модулями в двух репозиториях.
- Тесты (
opm test) в обоих проектах проходят без новых ошибок.
- Дифф после первого запуска таска понятен и не содержит функциональных изменений (только перенос и оформление).
Описание
Нужно реализовать функцию/таск для OneScript (task onescript), которая при запуске будет автоматически переносить общие модули и связанные объекты из библиотеки
prometheusв репозиторий расширенияprometheus-e1c(каталогsrc/cfe/prometheus_client/...) с приведением оформления к единому стилю.Дополнительно требуется унифицировать оформление модулей как в библиотеке, так и в расширении: вместо «ручных» комментариев-разделителей использовать стандартные области (
#Область …/#КонецОбласти), согласованные по структуре и наименованиям.Зачем это нужно
prometheusи расширениемprometheus-e1cсейчас делается вручную и легко ошибиться или что-то пропустить.Требования к реализации
Таск/команда:
opm run sync-prometheus-e1cили аналогичный), который:prometheus(каталогsrc/Модулии/или нужные классы).prometheus-e1c(например,CommonModules/Prometheus*, другие общие модули).Единое оформление (области):
// --- ... ---(и подобные) на области:#Область Интерфейс#Область Инициализация#Область РаботаСРеестром#Область ВспомогательныеПроцедуры(конкретный набор и названия областей нужно согласовать, но они должны совпадать между
prometheusиprometheus-e1cдля соответствующих модулей)..osизprometheusтам, где это уместно, чтобы структура модулей была максимально одинаковой.Гарантии для публичного API и стиля:
Критерии приемки
prometheusиprometheus-e1c.opm test) в обоих проектах проходят без новых ошибок.