У 91 и 99 строки аналитики несут только обороты, сальдо закрыто на субсчёт закрытия (91.09), поэтому каждая ОСВ 91 получала needs_check. Список счетов — данные api/rules/osv_checks.yaml (accounts_without_analytic_balance: 91, 99; 90 не входит). - тождество строки на таких счетах не проверяется; - «сумма детей = родитель» сохраняется: обороты всегда, сальдо — только у родителя с дочерними субсчетами (корень -> субсчета); у родителя с одной аналитикой сальдо не сверяется; - «Итого» сверяется как обычно; - строка относится к счёту списка по коду ближайшего счёта ветки (91, 91.01; не 910). Тесты: unit checks/rules, манифест osv_dkb_expectations (две ОСВ 91 теперь done). README, CLAUDE.md, openspec/specs/osv-parsing, api/rules/README.md обновлены. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
14 lines
1.4 KiB
YAML
14 lines
1.4 KiB
YAML
# Параметры контрольных сумм ОСВ (05-domain-rules.md §1.4). Данные, а не код: счёт добавляется строкой.
|
||
#
|
||
# Счета без сальдо по аналитике (решение владельца 07.10.2026, OQ-132): строки аналитики несут только обороты, сальдо
|
||
# закрывается на субсчёт закрытия (91.09), поэтому для таких счетов:
|
||
# - тождество строки «начало + обороты = конец» не проверяется;
|
||
# - сверка «сумма детей = родитель» сохраняется: обороты сверяются всегда, сальдо — только у родителя, у которого
|
||
# есть субсчета (корень со своими субсчетами); у родителя с одной лишь аналитикой сальдо не сверяется;
|
||
# - «Итого» сверяется как обычно.
|
||
# Запись — код счёта верхнего уровня («91»); к нему относятся и его субсчета (91.01, 91.09), но не «910». Счёт 90 не
|
||
# входит: внутри года у его субсчетов сальдо обычно есть.
|
||
accounts_without_analytic_balance:
|
||
- '91'
|
||
- '99'
|