mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-31 15:30:51 +03:00
fix(meta-validate): ложные срабатывания на типовых конфигурациях
Прогон по acc_8.3.24 и erp_8.3.24 (33 895 объектов) давал 246 ERROR и 1662 WARN на выгрузках, которые платформа принимает без единой ошибки, — то есть ложным был весь вывод валидатора. Две группы при этом роняли exit=1 на типовой конфигурации: то же, из-за чего заводились #79 и #84, только зеркально. Разобрано платформой на стенде 8.3.24.1691, каждый случай — копия эталона с одной мутацией: - пустой <Type/> у реквизита — это тип «Произвольный»; загрузка проходит, round-trip сохраняет конструкцию без изменений. Было ERROR (245 раз), стало молчание; - блока Type нет вовсе — загрузка тоже проходит, но платформа молча подставляет тип нового реквизита, Строка(10). Замысел теряется, загрузка нет: ERROR заменён на WARN; - IntegrationService и Bot отсутствовали в списках видов метаданных (в спеке 45 типов, навык знал 43) — штатный объект типовой давал «Unrecognized metadata type» и exit=1; - HierarchyType платформа пишет всегда и при выключенной иерархии игнорирует: из 1254 срабатываний 1253 приходились на её собственный дефолт. Предупреждаем только о явно заданном другом типе; - источник подписки задают и наборами типов (<v8:TypeSet>), а состав журнала — элементами <xr:Item>; проверки искали только <v8:Type> и потому не видели ни одной такой подписки и ни одного журнала. Зато реально пустой источник и пустой состав платформа отвергает («Источник событий должен быть задан», «Для журнала не заданы регистрируемые документы») — там уровень поднят с WARN до ERROR; - сигнатура процедуры переносится на несколько строк, и Экспорт оказывается не на строке с именем; регулярка требовала одну строку. Модуль поставщика в двоичном виде (Module.bin) больше не даёт предупреждения «файл не найден» — текста там нет by design; - ExchangeDate — легаси-реквизит планов обмена, поддержан в meta-compile и meta-decompile: добавлен как допустимый, но не обязательный. После правки корпус даёт 0 ERROR и 1 WARN — тот самый единственный недефолтный тип иерархии. Объём проверки не потерян: объектов провалидировано 33 895 против 33 894. Восемь новых кейсов держат обе стороны каждой правки: валидная конструкция молчит, настоящая ошибка по-прежнему ловится. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
12aecbf50b
commit
f694c48835
+18
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.17">
|
||||
<EventSubscription uuid="40a27ad8-4119-4123-b0b7-21d978f86c88">
|
||||
<Properties>
|
||||
<Name>ТестПодписка</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Тест подписка</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Source/>
|
||||
<Event>BeforeWrite</Event>
|
||||
<Handler>CommonModule.ТестМодуль.Обработчик</Handler>
|
||||
</Properties>
|
||||
</EventSubscription>
|
||||
</MetaDataObject>
|
||||
Reference in New Issue
Block a user