f6e8da9cf6test(fixtures): обобщение тестов и golden на osv-dkb/** (многолистовые книги, ожидаемые needs_check, период каталога)
Andrey Epifancev
2026-10-06 13:23:34 +04:00
76b2b36f21openspec: спека Среза 2b — парсер ББ и ОФР из Excel (statement-parsing), контракт v1.2
Andrey Epifancev
2026-10-06 13:21:27 +04:00
a592c68509feat(osv): ИНН из текста названия контрагента, ИНН строкой выше, «ИНН/КПП» в ячейке
Andrey Epifancev
2026-10-06 13:13:44 +04:00
af8ec918c5feat(osv): шапка ОСВ без меток и «Счет: Код / Наименование» (ОСВ 63 Новоросметалл), «Итого» ↔ Σ уровня 0 по нетто
Andrey Epifancev
2026-10-06 13:04:31 +04:00
1c26e7810estyle(osv): длина строк докстрингов
Andrey Epifancev
2026-10-06 12:50:46 +04:00
6fd7adde22feat(osv): «Итого» сверяется с суммой строк уровня 0; «Итого развернутое» — вторая итоговая строка
Andrey Epifancev
2026-10-06 12:50:35 +04:00
30f78c42e7feat(osv): период-диапазон месяцев «Октябрь 2024 г. – Сентябрь 2025 г.» (скользящий, не с начала года)
Andrey Epifancev
2026-10-06 12:49:11 +04:00
e3eeda8d84Merge pull request 'test(fixtures): 72 реальных ОСВ и 88 golden-снимков (Счастливочная 1 кв 2025)' (#12) from feat/10-fixtures-72 into mainaep2026-10-06 11:29:30 +03:00
0db3d9488fMerge pull request 'Срез 2a: парсер ОСВ из XLS/XLSX/XLSB — динамическое обнаружение структуры (§1), контракт v1.1, golden на 66 реальных файлах' (#6) from feat/5-slice-2a-osv-parser into mainaep2026-10-05 19:18:05 +03:00
1eb57da5cbfix(readers): предсканирование xlsx без sniff — expat по всем частям архива, потолок крупных merged в xls (I-1б)
Andrey Epifancev
2026-10-05 18:11:19 +04:00
cf532a325bopenspec: решение R-21 (design №31) — сверка сальдо родителя по нетто, если у родителя оно свёрнуто
Andrey Epifancev
2026-10-05 14:39:10 +04:00
e705d75520feat(parser): контрольные суммы §1.4, статусы, OsvParser как парсер по умолчанию, лимиты
Andrey Epifancev
2026-10-05 14:37:21 +04:00
c6a768dc70fix(parser): ячейки из одних пробелов не хранятся в Sheet.cells (T2.1)
Andrey Epifancev
2026-10-05 12:16:28 +04:00
ed401a00a3openspec: решение R-11 (design №21) — расхождения D-1/tasks 1.3 правятся в Task 13
Andrey Epifancev
2026-10-05 12:15:33 +04:00
b5a3b480b2feat(parser): модель листа Sheet и читатели xlsx/xls/xlsb
Andrey Epifancev
2026-10-05 12:11:16 +04:00
38386b53a2test: доступ к ../fixtures (ARM_KA_FIXTURES), параметризация по 66 ОСВ; зависимости openpyxl/xlrd/pyxlsb
Andrey Epifancev
2026-10-05 12:02:40 +04:00
777d4aa850contract: needs_check-пример по docs (строка 3 CURRENCY, уровень 2), README v1.1
Andrey Epifancev
2026-10-05 11:59:55 +04:00
e966ce46bbMerge pull request 'Срез 0: скелет tabular-parser — без фронта и БД, воркер NATS без JetStream, парсер-заглушка, контракт v1.0' (#3) from feat/1-slice-0-skeleton into mainaep2026-10-04 18:41:00 +03:00
6ae072e502docs: решения R-36..R-40 (финальный фикс-раунд) в design.md
Andrey Epifancev
2026-10-04 03:50:22 +04:00
479a76f81btest: старт с минимальным окружением и страж «без БД и фронта» (M-8)
Andrey Epifancev
2026-10-04 03:48:34 +04:00
e0b2aaca9adocs: оговорка про queue group в интеграционных тестах, правка CLAUDE.md (T10.3, T3.3)
Andrey Epifancev
2026-10-04 03:29:28 +04:00
67a4311150docs: докстринги контракта с точки зрения tabular-parser, паритет subjects с arm-core (T6.1-T6.3)
Andrey Epifancev
2026-10-04 03:29:28 +04:00
6491fdd538test: проверка остановки воркера по снятым задачам и устойчивый teardown uploads (T10.1, T10.2)
Andrey Epifancev
2026-10-04 03:29:28 +04:00
5c96189146docs: решения R-29..R-33 (интеграционный тест 4.4) в design.md
Andrey Epifancev
2026-10-04 03:27:30 +04:00
a62d2e24b1test: интеграционный round-trip сервиса против compose-NATS и MinIO (задача 4.4)
Andrey Epifancev
2026-10-04 03:23:35 +04:00
c16a7f6bf6docs: решения R-27, R-28 (фикс-раунд задачи 4.3) в design.md
Andrey Epifancev
2026-10-04 03:19:59 +04:00
b7d4f0c17atest, docs: порядок старта и проверка бакета в тестах приложения; README/CLAUDE.md без устаревших «добавляется задачей», spec без номера рулинга
Andrey Epifancev
2026-10-04 03:18:09 +04:00
18276e607efix: воркер — задание не теряется молча при остановке во время ack, невалидный дубль job_id не публикует SCHEMA_MISMATCH
Andrey Epifancev
2026-10-04 03:17:11 +04:00
82756b8c97docs: D-6 — значение nats=off в healthcheck (R-17)
Andrey Epifancev
2026-10-04 03:15:53 +04:00
e2d31b894cdocs: решения R-18..R-26 (воркер, задача 4.3) в design.md
Andrey Epifancev
2026-10-04 03:10:59 +04:00
cfba21b615docs: предложения P-1–P-3 по контракту из задачи 4.3; отметки Task 9 / 4.3
Andrey Epifancev
2026-10-04 03:09:06 +04:00
ff3ec5684adocs: решение R-17 (значение nats=off в healthcheck) в design.md
Andrey Epifancev
2026-10-04 02:59:24 +04:00
6c8d7b6e9bfix: NATS — PUBLISH_RETRIES как повторы после первой попытки (R-16), flush после подписки, снятие подписок при сбое on_connected, проброс отмены в stop(), error-лог самопроизвольного закрытия
Andrey Epifancev
2026-10-04 02:57:23 +04:00
a8dc5cc314docs: решения R-15, R-16 в design.md, уточнена формулировка R-14
Andrey Epifancev
2026-10-04 02:53:18 +04:00