arm-ka-docs/contracts/statement-code-orders.yaml
Andrey Epifancev e33a4a45f9 contracts(#116): окно перехода 1.x, перечни кодов форм, okei, смысл column_index и ref (K-5, K-6, K-8, K-22, S-15)
- recognition-result.v1.schema.json и recognition-result-message.v1.schema.json — байтовые копии схем 1.2 / 1.0
  (до 9b1a4cc), примеры 1.x — examples/v1/; живут до удаления маппера 1.x ядра (K-8)
- statement-code-orders.yaml — упорядоченные перечни кодов ББ/ОФР по редакциям 66n / fsbu4 и вариантам
  full / simplified, с законными повторами (Р-20: 1220, 1520, 2410 у fsbu4; раздел III НКО у 66n) и кодами
  печатных форм 1С из fixtures (1105, 1130, 1140, 1215, 1231, 1530, 2420, 2460, 2530, 2930) (K-5)
- validate_contracts.py: схемы v1 и examples/v1/, проверка формы перечня кодов; make venv ставит PyYAML
- v2.0: header.okei (+ _text, _confidence) и okei в headerField (K-22); columns[].column_index — столбец сетки
  кандидата (K-6); line_refs — только строки lines[]; ref Excel — имя листа в кавычках по правилу Excel (S-15);
  статус ОСВ — по контрольным суммам §1.4 листа (S-22); примеры приведены к этим правилам

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 02:02:41 +04:00

194 lines
8.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Упорядоченные перечни кодов строк форм ББ/ОФР по редакциям и вариантам — данные для структурного подтверждения
# неуверенного кода (05-domain-rules.md §11.9 «Код строки»; change unified-statement-normalization, K-5, Р-20).
#
# Что это: порядок кодов бланка (итоги после слагаемых: 1110 … 1190, 1100), без наименований (Р-3: «код → наименование»
# знает только ядро, arm-core/api/rules/statement_lines.yaml). Только четырёхзначные коды: пятизначная подстрока
# подтверждается через родителя (§11.9). Перечень — объединение кодов шаблонов банка (словарь имён ядра,
# fixtures/statements-xlsx/templates/) и кодов печатных форм 1С и сканов, найденных в fixtures (источник — комментарий
# у кода). Код без образца в fixtures сюда не добавляется: кандидаты — OQ-168.
#
# Где живёт: этот файл — источник; в пакете arm_statements лежит его байтовая копия (rules/statement_code_orders.yaml),
# идентичность проверяет sync-statements --check (как копии схем контракта в сервисах). Ядро берёт порядок и состав
# редакций из копии пакета; sync-statements --check сверяет, что все коды словаря имён ядра есть в перечне своей
# редакции. Правка перечня — PR сюда, затем в arm-statements, затем sync-statements в потребителях («сначала ядро»).
#
# Как читается (§11.9): четырёхзначные коды строк ok документа — последовательность; для каждой редакции берётся
# наибольшая подпоследовательность, согласованная с порядком перечня варианта формы документа (form_variant); выбирается
# редакция с более длинной (при равенстве — по эффективной дате: fsbu4 после 2024-12-31). Повтор кода допустим только
# там, где он есть в перечне (repeats): тогда структура подтверждает обе копии; повтор вне перечня с неуверенной копией —
# needs_review у неуверенной копии (Р-16, Р-20).
#
# Проверка формы файла — scripts/validate_contracts.py (make validate-contracts).
version: 1
# Законные повторы кода в одном перечне (Р-20). Ключ — редакция и форма; значение — коды, которые встречаются в
# перечне больше одного раза.
repeats:
66n:
# раздел III для некоммерческих организаций («Целевое финансирование») печатается после раздела III коммерческих
# (fixtures/ocr/aep_3.json, 31.12.2024: 1310 «Паевой фонд», 1320 «Целевой капитал», 1350 «Целевые средства»,
# 1360 «Фонд недвижимого и особо ценного движимого имущества», 1370 «Резервный и иные целевые фонды»)
BALANCE: ["1310", "1320", "1350", "1360", "1370", "1300"]
INCOME: []
fsbu4:
# печатная форма 1С по ФСБУ 4/2023 (fixtures/ocr/aep_6.json, «БО 1 кв 2025.json», «Бухгалтерская отчетность
# 1 кв.25.json»): 1220 «НДС, начисленный по отгрузке», 1520 «Обязательство по аренде» (AURORA-1431)
BALANCE: ["1220", "1520"]
# 2410 «Налог при упрощенной системе налогообложения» после 2412 (fixtures/ocr/aep_6.json, OQ-152)
INCOME: ["2410"]
editions:
66n:
BALANCE:
full:
- "1110"
- "1120"
- "1130"
- "1140"
- "1150"
- "1160"
- "1170"
- "1180"
- "1190"
- "1100"
- "1210"
- "1220"
- "1230"
- "1231" # код клиента: unagrande-group/2024-FY/ББ. Лист 1 .xls
- "1240"
- "1250"
- "1260"
- "1200"
- "1600"
- "1310"
- "1320"
- "1340"
- "1350"
- "1360"
- "1370"
- "1300"
- "1310" # раздел III НКО (aep_3), см. repeats
- "1320"
- "1350"
- "1360"
- "1370"
- "1300"
- "1410"
- "1420"
- "1430"
- "1450"
- "1400"
- "1510"
- "1520"
- "1530"
- "1540"
- "1550"
- "1500"
- "1700"
# упрощённая форма, приказ 66н прил. 5 — по бланку, образца в fixtures нет (OQ-166)
simplified: ["1150", "1170", "1210", "1250", "1230", "1600", "1300", "1350", "1360", "1410", "1450", "1510",
"1520", "1550", "1700"]
INCOME:
full:
- "2110"
- "2120"
- "2100"
- "2210"
- "2220"
- "2200"
- "2310"
- "2320"
- "2330"
- "2340"
- "2350"
- "2300"
- "2410"
- "2411"
- "2412"
- "2460"
- "2400"
- "2510"
- "2520"
- "2530" # печатная форма 1С: unagrande-co/2024-FY/ОФР. Лист 2 .xls, mezheninovskaya/2025-Q3
- "2500"
- "2900"
- "2910"
- "2930" # печатная форма 1С: fixtures/ocr/aep_3.json (после 2900)
# упрощённая форма, приказ 66н прил. 5 — по бланку, образца нет (OQ-166)
simplified: ["2110", "2120", "2330", "2340", "2350", "2410", "2400"]
fsbu4:
BALANCE:
full:
- "1105" # печатная форма 1С: npz/2025-Q3, fixtures/ocr/aep_6.json, «БО 1 кв 2025.json»
- "1110"
- "1130" # печатная форма 1С: npz/2025-Q3, «БО 1 кв 2025.json», «Бухгалтерская отчетность 1 кв.25.json»
- "1140" # то же и aep_6.json
- "1150"
- "1160"
- "1170"
- "1180"
- "1190"
- "1100"
- "1210"
- "1215"
- "1220"
- "1220" # «НДС, начисленный по отгрузке», см. repeats
- "1230"
- "1240"
- "1250"
- "1260"
- "1200"
- "1600"
- "1310"
- "1320"
- "1340"
- "1350"
- "1360"
- "1370"
- "1300"
- "1410"
- "1420"
- "1430"
- "1450"
- "1400"
- "1510"
- "1520"
- "1520" # «Обязательство по аренде», см. repeats
- "1530" # печатная форма 1С: npz/2025-Q3, aep_6.json, оба json 1 кв. 2025
- "1540"
- "1550"
- "1500"
- "1700"
# упрощённая форма по ФСБУ 4/2023 — состав принят как у 66н до образца (OQ-166, OQ-168)
simplified: ["1150", "1170", "1210", "1250", "1230", "1600", "1300", "1350", "1360", "1410", "1450", "1510",
"1520", "1550", "1700"]
INCOME:
full:
- "2110"
- "2120"
- "2100"
- "2210"
- "2220"
- "2200"
- "2310"
- "2320"
- "2330"
- "2340"
- "2350"
- "2300"
- "2410"
- "2411"
- "2412"
- "2410" # «Налог при упрощенной системе налогообложения», см. repeats
- "2420"
- "2460" # печатная форма 1С: npz/2025-Q3, aep_6.json, оба json 1 кв. 2025
- "2400"
- "2510"
- "2520"
- "2530"
- "2500"
- "2900"
- "2910"
# упрощённая форма по ФСБУ 4/2023 — как у 66н до образца (OQ-166, OQ-168)
simplified: ["2110", "2120", "2330", "2340", "2350", "2410", "2400"]