- T13.1: contracts/examples/result-osv-needs-check.json — предупреждения как пишет парсер («sheet=Лист_1 hierarchy=outline», текст нарушения из checks.py), organization_inn = null, версия 1.0.0; копия в docs байт в байт. - T13.2: лист ОСВ — признак в первых 30 строках (SHEET_MARKER_ROWS); T13.3: сломанный code span. - T13.4: остаточные риски R-21 списком (RR-1…RR-4, слепая зона «+X к обеим сторонам», (0,0) при (X, X), «12.ООО»). - I-1/I-2/M-1/M-3 в тексте спеки: лимиты чтения (R-23) и сценарии, лог стека, флаги ACCOUNT_RE, R-24. - T13.6: OQ-81 — «частично закрыт» в design.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
126 lines
3.8 KiB
JSON
126 lines
3.8 KiB
JSON
{
|
||
"schema_version": "1.1",
|
||
"job_id": "3f2a9c1e-7b4d-4e0a-9d51-2c8e6a1b0f01",
|
||
"file_id": "a1c4e7d2-5b36-4f89-8e12-9d0c3b7a4e02",
|
||
"service": { "name": "tabular-parser", "version": "1.0.0" },
|
||
"status": "needs_check",
|
||
"metrics": {
|
||
"rows": 3,
|
||
"warnings": [
|
||
"sheet=Лист_1 hierarchy=outline",
|
||
"§1.4: сальдо на начало + обороты ≠ сальдо на конец (±0.01): строки 3"
|
||
]
|
||
},
|
||
"documents": [
|
||
{
|
||
"document_type": "OSV",
|
||
"locator": "sheet:Лист_1",
|
||
"header": {
|
||
"organization_name": "ООО Ромашка",
|
||
"organization_inn": null,
|
||
"account_code_raw": "60",
|
||
"period_text": "1 квартал 2025 г.",
|
||
"period_year": 2025,
|
||
"period_quarter": "Q1",
|
||
"is_cumulative": false,
|
||
"data_type": "BU",
|
||
"currency": "RUB",
|
||
"header_variant": 1
|
||
},
|
||
"group_schema": [
|
||
{ "type": "ACCOUNT", "name": "Счет" },
|
||
{ "type": "COUNTERPARTY", "name": "Контрагенты", "has_inn": true }
|
||
],
|
||
"columns": {
|
||
"opening_debit": "D",
|
||
"opening_credit": "E",
|
||
"turnover_debit": "F",
|
||
"turnover_credit": "G",
|
||
"closing_debit": "H",
|
||
"closing_credit": "I",
|
||
"inn": "B"
|
||
},
|
||
"rows": [
|
||
{
|
||
"row_number": 1,
|
||
"level": 0,
|
||
"parent_row_number": null,
|
||
"row_value": "60",
|
||
"group_type": "ACCOUNT",
|
||
"group_name": "Счет",
|
||
"account_code_raw": "60",
|
||
"counterparty_name": null,
|
||
"counterparty_inn": null,
|
||
"data_type": "BU",
|
||
"opening_debit": "0.00",
|
||
"opening_credit": "1000.00",
|
||
"turnover_debit": "500.00",
|
||
"turnover_credit": "200.50",
|
||
"closing_debit": "0.00",
|
||
"closing_credit": "700.50"
|
||
},
|
||
{
|
||
"row_number": 2,
|
||
"level": 1,
|
||
"parent_row_number": 1,
|
||
"row_value": "ООО Лютик",
|
||
"group_type": "COUNTERPARTY",
|
||
"group_name": "Контрагенты",
|
||
"account_code_raw": "60",
|
||
"counterparty_name": "ООО Лютик",
|
||
"counterparty_inn": "7711111111",
|
||
"data_type": "BU",
|
||
"opening_debit": "0.00",
|
||
"opening_credit": "1000.00",
|
||
"turnover_debit": "500.00",
|
||
"turnover_credit": "200.50",
|
||
"closing_debit": "0.00",
|
||
"closing_credit": "700.50",
|
||
"extra": { "КПП": "352801001" }
|
||
},
|
||
{
|
||
"row_number": 3,
|
||
"level": 2,
|
||
"parent_row_number": 2,
|
||
"row_value": "Вал.",
|
||
"group_type": "OTHER",
|
||
"group_name": null,
|
||
"account_code_raw": "60",
|
||
"counterparty_name": null,
|
||
"counterparty_inn": null,
|
||
"data_type": "CURRENCY",
|
||
"opening_debit": "0.00",
|
||
"opening_credit": "400.00",
|
||
"turnover_debit": "100.00",
|
||
"turnover_credit": "50.00",
|
||
"closing_debit": "0.00",
|
||
"closing_credit": "400.00"
|
||
},
|
||
{
|
||
"row_number": 4,
|
||
"level": 0,
|
||
"parent_row_number": null,
|
||
"row_value": "Итого",
|
||
"group_type": "TOTAL",
|
||
"group_name": null,
|
||
"account_code_raw": null,
|
||
"counterparty_name": null,
|
||
"counterparty_inn": null,
|
||
"data_type": "BU",
|
||
"opening_debit": "0.00",
|
||
"opening_credit": "1000.00",
|
||
"turnover_debit": "500.00",
|
||
"turnover_credit": "200.50",
|
||
"closing_debit": "0.00",
|
||
"closing_credit": "700.50"
|
||
}
|
||
],
|
||
"checks": {
|
||
"total_row_matches_root": true,
|
||
"balance_identity_violations": [3],
|
||
"parent_sum_violations": []
|
||
}
|
||
}
|
||
]
|
||
}
|