feat(form-compile): не эмитить HorizontalAlign по умолчанию + чистка SKILL.md

- HorizontalAlign не эмитится, если не задан явно через autoCmdBar.horizontalAlign.
  Раньше был хардкод Right; платформенный дефолт — Left, эталонные формы
  типовых (Бригады/ФормаСписка) тег вообще не содержат.
- horizontalAlign принимает Left/Center/Right.
- SKILL.md: убран раздел «Эвристики компилятора» (внутренняя кухня скрипта),
  сжато описание autoCmdBar и main — модель пишет DSL явно, помощь
  компилятора видна в [INFO]/[WARN]-логе.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-05-01 20:54:57 +03:00
co-authored by Claude Opus 4.7
parent 13174b63b1
commit 6b63177687
186 changed files with 2520 additions and 115 deletions
@@ -1,4 +1,4 @@
# form-compile v1.8 — Compile 1C managed form from JSON or object metadata
# form-compile v1.9 — Compile 1C managed form from JSON or object metadata
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
param(
[string]$JsonPath,
@@ -2826,7 +2826,7 @@ if ($def.excludedCommands -and $def.excludedCommands.Count -gt 0) {
# 12d. AutoCommandBar (always present, id=-1)
$acbAutofill = Compute-MainAcbAutofill
$acbName = "ФормаКоманднаяПанель"
$acbHAlign = "Right"
$acbHAlign = $null
if ($script:mainAcbDef) {
if ($null -ne $script:mainAcbDef.PSObject.Properties["autoCmdBar"] -and "$($script:mainAcbDef.autoCmdBar)" -ne "") {
$acbName = "$($script:mainAcbDef.autoCmdBar)"
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
# form-compile v1.8 — Compile 1C managed form from JSON or object metadata
# form-compile v1.9 — Compile 1C managed form from JSON or object metadata
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
import argparse
import copy
@@ -2691,7 +2691,7 @@ def main():
# AutoCommandBar (always present, id=-1)
acb_autofill = _compute_main_acb_autofill()
acb_name = '\u0424\u043e\u0440\u043c\u0430\u041a\u043e\u043c\u0430\u043d\u0434\u043d\u0430\u044f\u041f\u0430\u043d\u0435\u043b\u044c'
acb_halign = 'Right'
acb_halign = None
if main_acb_def is not None:
v = main_acb_def.get('autoCmdBar')
if v: