mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-20 00:45:54 +03:00
feat(role-compile): набор прав замыкается по зависимостям
Платформа при загрузке сама доводит набор до полного: выдал Edit — получил ещё Read, Update и View, выдал View у обработки — получил Use. Навык писал ровно заданное, поэтому файл роли и база расходились сразу после первой загрузки. Таблица снята с платформы: по одной роли на каждое право, 209 + 43 роли в двух прогонах, ни одного отвергнутого (debug/role-edit). Зависимости оказались общими для типов, исключений четыре — обработка и отчёт держатся на Use, план счетов не тянет Read под историю данных, регистр сведений — короче на одно звено. Права, недопустимые для типа, отсекаются, у вложенных объектов зависимостей нет. Права конфигурации версионные: до формата 2.19 платформа взводила весь блок режимов окна с любым правом, с 2.19 (8.3.26) перестала. Граница измерена на шести платформах, 8.3.20 … 8.5.1. Дописанное перечисляется в выводе — права выдаются не молча. Проверка: выход обоих портов после загрузки и выгрузки совпал байт в байт. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FGkXwoXTuafcu1SXMsauFq
This commit is contained in:
co-authored by
Claude Opus 5
parent
bbc3be55a5
commit
ce37fe6e53
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "Набор прав замыкается по зависимостям, как это сделала бы платформа",
|
||||
"setup": "fixture:view-preset-fx",
|
||||
"input": {
|
||||
"name": "ЗамыканиеПрав",
|
||||
"synonym": "Замыкание прав",
|
||||
"objects": [
|
||||
"Catalog.Номенклатура: Edit",
|
||||
"DataProcessor.Загрузка: View"
|
||||
]
|
||||
},
|
||||
"validatePath": "Roles/ЗамыканиеПрав",
|
||||
"expect": {
|
||||
"files": [
|
||||
"Roles/ЗамыканиеПрав/Ext/Rights.xml"
|
||||
],
|
||||
"stdoutContains": [
|
||||
"Catalog.Номенклатура: по зависимости добавлено — Read, Update, View",
|
||||
"DataProcessor.Загрузка: по зависимости добавлено — Use"
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user