feat(db-load-xml,db-load-git): предупреждать о полной загрузке при Configuration.xml в списке

Список частичной загрузки задаёт объекты метаданных: вместе с объектом платформа грузит
его дочерние объекты (формы, макеты) и файлы Ext/. Configuration.xml — объект
«Конфигурация», поэтому его наличие в списке даёт полную загрузку конфигурации, а не
перечисленных объектов. В db-load-git он попадает в список из диффа сам, без участия
пользователя.

Замерено на обоих движках (1cv8 и ibcmd): правило одинаково.

- SKILL.md обоих навыков: строка про цену Configuration.xml в списке;
- хинт в выводе обеих веток движка;
- два кейса на срабатывание и на отсутствие ложного срабатывания.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-09-22 14:37:21 +03:00
co-authored by Claude Opus 5
parent 77836f7ada
commit 6eaf3211cc
8 changed files with 112 additions and 5 deletions
@@ -1,4 +1,4 @@
# db-load-git v1.27 — Load Git changes into 1C database
# db-load-git v1.28 — Load Git changes into 1C database
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
# NB: *nix-раскладку платформы (/opt/1cv8/<ver>/1cv8, без .exe) знает только .py-порт — PS на *nix не исполняется.
<#
@@ -800,6 +800,14 @@ if ($configFiles.Count -eq 0) {
exit 0
}
# Корневой Configuration.xml — это объект «Конфигурация»: вместе с объектом платформа грузит его
# дочерние объекты, а у конфигурации это весь состав. В список он попадает из диффа сам, поэтому
# предупреждаем — пользователь его не выбирал.
if (@($configFiles | Where-Object { ($_ -replace '\\', '/') -ieq 'Configuration.xml' }).Count -gt 0) {
Write-Host "[ВНИМАНИЕ] В изменениях есть Configuration.xml: платформа выполнит ПОЛНУЮ загрузку" -ForegroundColor Yellow
Write-Host " конфигурации, а не только изменённых объектов." -ForegroundColor Yellow
}
Write-Host "Files for loading: $($configFiles.Count)"
foreach ($f in $configFiles) { Write-Host " $f" }