From 610720334b315fd1b319b2460019cb6945531f5a Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Fri, 15 May 2026 14:54:03 +0300 Subject: [PATCH] =?UTF-8?q?feat(skd-info):=20kv-=D0=BF=D0=B0=D1=80=D0=B0?= =?UTF-8?q?=D0=BC=D0=B5=D1=82=D1=80=D1=8B=20=D1=80=D0=BE=D0=BB=D0=B8=20?= =?UTF-8?q?=D0=B2=20=D0=B4=D0=B5=D1=82=D0=B0=D0=BB=D0=B8=D0=B7=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D0=B8=20=D0=BF=D0=BE=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit В -Mode fields -Name к сводке Role добавляются не-bool параметры роли (balanceGroupName, balanceType, parentDimension, accountTypeExpression и т.д.) в формате name=value. Bool-флаги (@balance, @dimension, ...) отображаются как раньше. False-значения по-прежнему скрыты. Регресс: 6/6 PS, 6/6 PY (существующие snapshots не задеты). Co-Authored-By: Claude Opus 4.7 (1M context) --- .claude/skills/skd-info/scripts/skd-info.ps1 | 10 ++++++++-- .claude/skills/skd-info/scripts/skd-info.py | 11 +++++++++-- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/.claude/skills/skd-info/scripts/skd-info.ps1 b/.claude/skills/skd-info/scripts/skd-info.ps1 index d92c6b75..78a19f98 100644 --- a/.claude/skills/skd-info/scripts/skd-info.ps1 +++ b/.claude/skills/skd-info/scripts/skd-info.ps1 @@ -1,4 +1,4 @@ -# skd-info v1.3 — Analyze 1C DCS structure +# skd-info v1.4 — Analyze 1C DCS structure # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [Parameter(Mandatory=$true)] @@ -824,8 +824,14 @@ function Show-Fields { $roleParts = @() if ($role) { foreach ($child in $role.ChildNodes) { - if ($child.NodeType -eq "Element" -and $child.InnerText -eq "true") { + if ($child.NodeType -ne "Element") { continue } + $txt = $child.InnerText.Trim() + if ($txt -eq "true") { $roleParts += $child.LocalName + } elseif ($txt -eq "false") { + # skip default-false flags + } else { + $roleParts += "$($child.LocalName)=$txt" } } } diff --git a/.claude/skills/skd-info/scripts/skd-info.py b/.claude/skills/skd-info/scripts/skd-info.py index 1b86f6ca..de479054 100644 --- a/.claude/skills/skd-info/scripts/skd-info.py +++ b/.claude/skills/skd-info/scripts/skd-info.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# skd-info v1.3 — Analyze 1C DCS structure +# skd-info v1.4 — Analyze 1C DCS structure # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse @@ -777,8 +777,15 @@ def main(): role_parts = [] if role is not None: for child in role: - if isinstance(child.tag, str) and (child.text or "").strip() == "true": + if not isinstance(child.tag, str): + continue + txt = (child.text or "").strip() + if txt == "true": role_parts.append(localname(child)) + elif txt == "false": + pass + else: + role_parts.append(f"{localname(child)}={txt}") info["role"] = ", ".join(role_parts) # UseRestriction