docs(role-compile,role-edit): убрано то, что навык объясняет сам

Таблица «что хранится при каких умолчаниях роли» ушла из инструкции:
модель попадает в этот случай ровно в момент, когда навык уже печатает
«запрет совпадает с умолчанием роли и платформой не хранится». Вместо
описания механики сообщение дополнено подсказкой, где запрет имеет
смысл, — теперь вывод самодостаточен, а инструкция короче.

Там же сжаты формулировки, которые дублировали текст ошибок: про отказ
до записи, про право сервиса на корне, про ограничение RLS без права.
Назначение deny-rights в таблице операций названо прямо: закрыть
реквизит или ТЧ, которые иначе наследуют права объекта.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FGkXwoXTuafcu1SXMsauFq
This commit is contained in:
Nick Shirokov
2026-09-13 20:52:29 +03:00
co-authored by Claude Opus 5
parent 9fcf7329ba
commit e8c92362d5
6 changed files with 19 additions and 31 deletions
@@ -1,4 +1,4 @@
# role-compile v1.43 — Compile 1C role from JSON
# role-compile v1.44 — Compile 1C role from JSON
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
[CmdletBinding(PositionalBinding=$false)]
param(
@@ -1804,6 +1804,7 @@ Write-Host " Rights: $rightsPath"
Write-Host " Objects: $($parsedObjects.Count), Rights: $totalRights, Templates: $templateCount"
if ($droppedByDefault.Count -gt 0) {
[Console]::Error.WriteLine("[role-compile] Не записаны права, совпадающие с умолчанием роли (платформа их не хранит): $($droppedByDefault -join ', ')")
[Console]::Error.WriteLine(" Запрет хранится у реквизитов и табличных частей (они наследуют права объекта) либо в роли с setForNewObjects=true; выдача прав — наоборот.")
}
foreach ($note in $closureNotes) { Write-Host $note }
switch ($regResult) {
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
# role-compile v1.43 — Compile 1C role from JSON
# role-compile v1.44 — Compile 1C role from JSON
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
import argparse
import json
@@ -1859,6 +1859,8 @@ def main():
if dropped_by_default:
print("[role-compile] Не записаны права, совпадающие с умолчанием роли "
f"(платформа их не хранит): {', '.join(dropped_by_default)}", file=sys.stderr)
print(" Запрет хранится у реквизитов и табличных частей (они наследуют права объекта) "
"либо в роли с setForNewObjects=true; выдача прав — наоборот.", file=sys.stderr)
for note in closure_notes:
print(note)
if reg_result == 'added':