test(skills): platform-epf — канонический DSL form-compile (чинит PY-прогон)

Шаг form-compile в platform-epf был написан в «вольном» диалекте: атрибуты и
команды с ключом `id` вместо `name`, кнопка как `{id,type:'button',action}`.
PS-порт это молча глотал (пустые имена / skip с warning), PY-порт падал
(`KeyError: 'name'`). Переписано канонически (как cases/form-compile/commands.json
и build-epf): `name` у атрибутов/команд, кнопка `{button, command}` внутри cmdBar.
Зелено на обоих рантаймах и движках (PY-матрица platform/* → 7/7).

Это была опечатка теста, не баг навыка. Робастность form-compile на некорректном
входе (чистая ошибка вместо raw-traceback в PY / тихого пустого имени в PS) —
отдельная необязательная тема.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-06-22 18:53:37 +03:00
parent d0469c6080
commit 684bbb5036
@@ -32,14 +32,16 @@ export const steps = [
script: 'form-compile/scripts/form-compile',
input: {
elements: [
{ id: 'ПутьКФайлу', type: 'input', path: 'ПутьКФайлу', title: 'Путь к файлу' },
{ id: 'Загрузить', type: 'button', title: 'Загрузить', action: 'Загрузить' },
{ input: 'ПутьКФайлу', path: 'ПутьКФайлу', title: 'Путь к файлу' },
{ cmdBar: 'КоманднаяПанель', children: [
{ button: 'Загрузить', command: 'Загрузить' },
]},
],
attributes: [
{ id: 'ПутьКФайлу', type: 'String' },
{ name: 'ПутьКФайлу', type: 'String' },
],
commands: [
{ id: 'Загрузить', title: 'Загрузить' },
{ name: 'Загрузить', action: 'Загрузить' },
],
},
args: { '-OutputPath': '{workDir}/RoundtripТест/Forms/Форма/Ext/Form.xml', '-JsonPath': '{inputFile}' },