naeel
|
2ab0840011
|
v1.0.100: bump версии
|
2026-06-22 07:52:12 +04:00 |
|
naeel
|
606ab596a1
|
v1.0.100: fix — убрал FOR UPDATE (несовместим с MAX)
|
2026-06-22 07:51:56 +04:00 |
|
naeel
|
c195844466
|
v1.0.99: шаг7 — isNumeric валидация price/qty/sum
|
2026-06-22 07:50:38 +04:00 |
|
naeel
|
aa16b12d53
|
v1.0.98: bump версии
|
2026-06-22 07:49:08 +04:00 |
|
naeel
|
1315838507
|
v1.0.98: шаг6 — elements_json double-decode fix
|
2026-06-22 07:48:01 +04:00 |
|
naeel
|
d39bf7c04f
|
v1.0.97: шаг5 — LLM ключ из env
|
2026-06-22 07:47:02 +04:00 |
|
naeel
|
eaed475437
|
v1.0.96: bump версии
|
2026-06-22 07:43:43 +04:00 |
|
naeel
|
1c2187632b
|
v1.0.96: убрал doc_id/supp_id из показа юзеру
|
2026-06-22 07:43:01 +04:00 |
|
naeel
|
89e787a3ad
|
v1.0.95: восстановление index.cfm + заголовки
|
2026-06-22 07:35:25 +04:00 |
|
naeel
|
56ed3870bb
|
v1.0.95: шаг4 — идемпотентность, проверка supplement уже обработан
|
2026-06-22 07:33:18 +04:00 |
|
naeel
|
69b3808037
|
v1.0.94: шаг3 — guard full_replace с пустым ops
|
2026-06-22 07:28:08 +04:00 |
|
naeel
|
911afabce1
|
v1.0.93: шаг2 — FOR UPDATE на MAX(seq) от race condition
|
2026-06-21 17:28:33 +04:00 |
|
naeel
|
5a95c75459
|
v1.0.92: заголовки + версия
|
2026-06-21 17:27:34 +04:00 |
|
naeel
|
b587b24c7b
|
v1.0.92: шаг1 — SQL-инъекция, валидация UUID
|
2026-06-21 17:22:59 +04:00 |
|
naeel
|
2e56c27338
|
v1.0.91: раскрывающиеся секции с дифф-таблицами в результатах сравнения
|
2026-06-21 16:45:19 +04:00 |
|
naeel
|
42f72e85cd
|
v1.0.90: bump версии
|
2026-06-21 16:42:27 +04:00 |
|
naeel
|
54f4ce9564
|
v1.0.90: заголовок загрузки
|
2026-06-21 16:42:15 +04:00 |
|
naeel
|
441c2fa3ad
|
v1.0.89: убрал v1, оставил только Event Sourcing как Сравнить
|
2026-06-21 16:28:14 +04:00 |
|
naeel
|
2b02eff29b
|
v1.0.88: bump версии
|
2026-06-21 16:16:59 +04:00 |
|
naeel
|
6e53aafdb9
|
v1.0.88: замена файла с тем же именем в таблице при повторной загрузке
|
2026-06-21 16:09:35 +04:00 |
|
naeel
|
7f6c84883e
|
v1.0.87: удаление дубликатов в multipart пути загрузки
|
2026-06-21 15:56:03 +04:00 |
|
naeel
|
b26016fcb1
|
v1.0.86: один fetch elements_json, обе панели — все элементы
|
2026-06-21 09:50:16 +04:00 |
|
naeel
|
febad42e45
|
v1.0.85: правая панель — все элементы полностью (параграфы + таблицы)
|
2026-06-21 09:33:16 +04:00 |
|
naeel
|
0314f14f18
|
v1.0.84: .gitignore pyc
|
2026-06-21 09:31:23 +04:00 |
|
naeel
|
314d78386f
|
v1.0.84: nginx config update
|
2026-06-21 09:30:20 +04:00 |
|
naeel
|
832a25e08f
|
v1.0.84: повторная загрузка удаляет старый документ с тем же filename
|
2026-06-21 09:26:03 +04:00 |
|
naeel
|
a214a0d1e6
|
v1.0.83: XPath //:t и //:tr → .//:t и .//:tr — поиск от параграфа, не от корня
|
2026-06-21 09:24:11 +04:00 |
|
naeel
|
192b4ea0e9
|
v1.0.82: fallback на ZIP/XML при любом пустом результате POI (не только при ошибках)
|
2026-06-21 09:13:06 +04:00 |
|
naeel
|
ec02521a00
|
v1.0.81: bump version
|
2026-06-21 09:05:51 +04:00 |
|
naeel
|
edd2eca0c2
|
v1.0.81: точное совпадение класса XWPFParagraph/XWPFTable — фикс SDTParagraph дублирований
|
2026-06-21 08:59:18 +04:00 |
|
naeel
|
18d1a07aad
|
v1.0.80: bump версии в index.cfm
|
2026-06-21 08:34:55 +04:00 |
|
naeel
|
2a5762d5e7
|
v1.0.80: structNew вместо {...} в парсерах — баг Lucee с переиспользованием struct
|
2026-06-21 08:30:52 +04:00 |
|
naeel
|
0be35bd3db
|
v1.0.79: .doc → XWPF первым (после конвертации), HWPF только fallback
|
2026-06-21 08:07:59 +04:00 |
|
naeel
|
9eaa6d1f08
|
v1.0.78: один столбец Текст вместо View/Инфо, левая=textify, правая=распарсено
|
2026-06-21 07:55:47 +04:00 |
|
naeel
|
c25864ea61
|
v1.0.77: авто-парсинг после загрузки с таймером
|
2026-06-21 07:32:42 +04:00 |
|
naeel
|
e049d28515
|
v1.0.76: фикс uppercase ключей Lucee, заголовки столбцов, красная корзина, Инфо+, столбец Текст с 2-панельной модалкой
|
2026-06-21 07:21:45 +04:00 |
|
naeel
|
fa843bc367
|
fix: раздельные промпты для initial (ADD) и ДС (diff) (v1.0.75)
|
2026-06-20 11:04:33 +04:00 |
|
naeel
|
1ecff7c441
|
v2: SSE через ВМ (process-v2), убрано с Lucee (v1.0.75)
|
2026-06-20 10:52:37 +04:00 |
|
naeel
|
4e20b7760e
|
Phase 3: apply_events.cfm + process.cfm v2 + кнопка v2 (v1.0.74)
|
2026-06-20 10:31:46 +04:00 |
|
naeel
|
7f84c86633
|
nginx: /llm-ops proxy (Phase 2 fix)
|
2026-06-20 10:17:52 +04:00 |
|
naeel
|
2b01109a0c
|
fix: view.cfm empty elements_json check + modal instead of new tab (v1.0.72)
|
2026-06-20 10:02:09 +04:00 |
|
naeel
|
8cd40e3248
|
fix: cftry without cfcatch in parseDOC_POI (v1.0.71)
|
2026-06-20 10:00:59 +04:00 |
|
naeel
|
2ffc24fac1
|
Phase 1: spec_events + spec_current tables (v1.0.70)
|
2026-06-20 09:55:48 +04:00 |
|
naeel
|
bcd937e46f
|
v2 architecture: Sonnet plan + request docs
|
2026-06-20 09:55:10 +04:00 |
|
naeel
|
cb445aeba1
|
view.cfm: предпросмотр первых 15 строк документа (v1.0.69)
|
2026-06-20 09:08:36 +04:00 |
|
naeel
|
7720a1cccc
|
fix: var rowsArr (v1.0.68)
|
2026-06-20 09:03:22 +04:00 |
|
naeel
|
8aa6a3a932
|
parser: POI (XWPFDocument/HWPFDocument) для DOCX/DOC + fallback ZIP/XML (v1.0.67)
|
2026-06-20 08:45:46 +04:00 |
|
naeel
|
9a08218cba
|
fix: q.getColumnNames() → listToArray(q.columnList) (v1.0.66)
|
2026-06-19 11:19:44 +04:00 |
|
naeel
|
e78bec8749
|
fix: String(c).toLowerCase() (v1.0.65)
|
2026-06-19 11:13:09 +04:00 |
|
naeel
|
84bded08b8
|
fix: r[ci] → r[c] (ROWS это объекты, не массивы) (v1.0.64)
|
2026-06-19 11:08:48 +04:00 |
|