lang detect
This commit is contained in:
@@ -39,29 +39,28 @@ indexing:
|
||||
# @BRIEF Обязательные и запрещённые тэги по уровням сложности C1-C5.
|
||||
# @RELATION BINDS_TO -> [Std.Semantics.Core]
|
||||
# @INVARIANT Каждый тэг в required/forbidden списках обязан иметь определение в TagSchema.
|
||||
# @RATIONALE BRIEF/PURPOSE/RATIONALE/REJECTED — универсально опциональны (C1+).
|
||||
# EXAMPLE, ERROR/RAISES, DEPRECATED, REPLACED_BY — тоже опциональны.
|
||||
# @REJECTED Свободная валидация без строгих forbidden-списков отвергнута — порождает Slop.
|
||||
# @RATIONALE INVARIANT, RATIONALE, REJECTED, BRIEF/PURPOSE, EXAMPLE, ERROR/RAISES — универсально опциональны (C1+).
|
||||
# @PRE/@POST — обязательны на C4, но C4 с SIDE_EFFECT-only валиден если предусловия тривиальны.
|
||||
# @DATA_CONTRACT — рекомендуется на C5, но не обязателен (не все C5 контракты имеют DTO-маппинг).
|
||||
# @RELATION — обязателен с C3, разрешён на C2 для документирования одиночных зависимостей.
|
||||
# @REJECTED Строгий запрет INVARIANT ниже C5 — заставлял раздувать контракты до C5 ради одного инварианта.
|
||||
# Строгий запрет RELATION на C2 — мешал документировать простые зависимости.
|
||||
complexity_rules:
|
||||
'1':
|
||||
required: []
|
||||
forbidden:
|
||||
- RELATION
|
||||
- PRE
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'2':
|
||||
required:
|
||||
- PURPOSE
|
||||
forbidden:
|
||||
- RELATION
|
||||
- PRE
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'3':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -71,7 +70,6 @@ complexity_rules:
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'4':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -81,7 +79,6 @@ complexity_rules:
|
||||
- SIDE_EFFECT
|
||||
forbidden:
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'5':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -89,7 +86,6 @@ complexity_rules:
|
||||
- PRE
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
forbidden: []
|
||||
# #endregion ComplexityRules
|
||||
@@ -124,7 +120,6 @@ contract_type_overrides:
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'4':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -135,7 +130,6 @@ contract_type_overrides:
|
||||
- SIDE_EFFECT
|
||||
forbidden:
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'5':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -144,7 +138,6 @@ contract_type_overrides:
|
||||
- PRE
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
forbidden: []
|
||||
Tombstone:
|
||||
@@ -173,7 +166,6 @@ contract_type_overrides:
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'4':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -183,7 +175,6 @@ contract_type_overrides:
|
||||
- SIDE_EFFECT
|
||||
forbidden:
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
'5':
|
||||
required:
|
||||
- PURPOSE
|
||||
@@ -191,7 +182,6 @@ contract_type_overrides:
|
||||
- PRE
|
||||
- POST
|
||||
- SIDE_EFFECT
|
||||
- DATA_CONTRACT
|
||||
- INVARIANT
|
||||
forbidden: []
|
||||
# #endregion ContractTypeOverrides
|
||||
@@ -294,6 +284,15 @@ tags:
|
||||
protected: false
|
||||
orthogonal: false
|
||||
decision_memory: false
|
||||
THROWS:
|
||||
type: string
|
||||
multiline: true
|
||||
alias_for: ERROR
|
||||
description: 'Алиас для ERROR.'
|
||||
contract_types: []
|
||||
protected: false
|
||||
orthogonal: false
|
||||
decision_memory: false
|
||||
DEPRECATED:
|
||||
type: string
|
||||
multiline: true
|
||||
@@ -331,9 +330,11 @@ tags:
|
||||
type: array
|
||||
multiline: false
|
||||
separator: ','
|
||||
description: 'Семантические маркеры. Ортогональный.'
|
||||
description: 'Семантические маркеры для поиска. Ортогональный.'
|
||||
contract_types:
|
||||
- Module
|
||||
- Function
|
||||
- Class
|
||||
- Block
|
||||
- Skill
|
||||
- Agent
|
||||
@@ -361,6 +362,10 @@ tags:
|
||||
- Tombstone
|
||||
- ADR
|
||||
- Module
|
||||
- Function
|
||||
- Class
|
||||
- Component
|
||||
- Block
|
||||
protected: false
|
||||
orthogonal: true
|
||||
decision_memory: false
|
||||
@@ -457,7 +462,7 @@ tags:
|
||||
PRE:
|
||||
type: string
|
||||
multiline: true
|
||||
description: 'Предусловия. Обязателен с C4.'
|
||||
description: 'Предусловия. Обязателен с C4. Если предусловия тривиальны (напр. "DB доступна"), допустимо опустить при наличии @SIDE_EFFECT.'
|
||||
contract_types:
|
||||
- Module
|
||||
- Function
|
||||
@@ -470,7 +475,7 @@ tags:
|
||||
POST:
|
||||
type: string
|
||||
multiline: true
|
||||
description: 'Гарантии результата. Обязателен с C4.'
|
||||
description: 'Гарантии результата. Обязателен с C4. Если постусловия очевидны из @PURPOSE, допустимо опустить при наличии @SIDE_EFFECT.'
|
||||
contract_types:
|
||||
- Module
|
||||
- Function
|
||||
@@ -528,7 +533,7 @@ tags:
|
||||
DATA_CONTRACT:
|
||||
type: string
|
||||
multiline: false
|
||||
description: 'DTO-маппинг. Обязателен с C5.'
|
||||
description: 'DTO-маппинг (Input→Output). Рекомендуется с C5, не обязателен. Не все C5 контракты имеют DTO.'
|
||||
contract_types:
|
||||
- Module
|
||||
- Function
|
||||
@@ -541,7 +546,7 @@ tags:
|
||||
INVARIANT:
|
||||
type: string
|
||||
multiline: true
|
||||
description: 'Инвариант. Обязателен с C5.'
|
||||
description: 'Инвариант — условие, истинное всегда. Универсально опциональный (C1+), обязателен на C5. Документируй неуничтожимые гарантии на любом уровне.'
|
||||
contract_types:
|
||||
- Module
|
||||
- Function
|
||||
@@ -556,7 +561,7 @@ tags:
|
||||
LAYER:
|
||||
type: string
|
||||
multiline: false
|
||||
description: 'Слой: Core, Domain, API, UI, Service, Infrastructure, Plugin, Tests. Универсально опциональный.'
|
||||
description: 'Слой архитектуры: Core, Domain, API, UI, Service, Infrastructure, Plugin, Tests. Универсально опциональный.'
|
||||
enum: [Core, Domain, API, UI, Service, Infrastructure, Plugin, Tests]
|
||||
contract_types:
|
||||
- Module
|
||||
|
||||
Reference in New Issue
Block a user