-
841513d3fb
fix(extract): pass page lines to per-page markdown conversion (#434)
main
Abimael Martell
2026-08-19 09:45:21 -07:00
-
bac056e801
fix(layout): restore column detection on table pages and sparse pages (#430)
Abimael Martell
2026-08-18 17:06:21 -07:00
-
dfe64b80e7
fix(layout): re-guard the ungated XY-cut fallthrough on table pages
feat/mc-weave-class
Abimael Martell
2026-08-18 16:30:27 -07:00
-
2401a77c5f
fix(layout): lower the relative-valley floor to sparse pages
Abimael Martell
2026-08-18 16:18:00 -07:00
-
7a374a3867
fix(layout): keep relative-valley column detection on table pages
Abimael Martell
2026-08-18 16:10:50 -07:00
-
-
0027b048ce
fix(tables): reject parallel-prose grids on all unsplit pages (#429)
Abimael Martell
2026-08-18 15:58:20 -07:00
-
bfe3f55032
fix(tables): header bypass requires continuations to strictly outnumber rows
fix/parallel-prose-table-veto
Abimael Martell
2026-08-18 15:38:08 -07:00
-
e0be3b5021
fix(tables): reject parallel-prose grids on all unsplit pages
Abimael Martell
2026-08-18 15:23:21 -07:00
-
-
fb45d37dfe
feat(markdown): strip page-edge furniture on short documents (#427)
Abimael Martell
2026-08-18 14:41:12 -07:00
-
9bb1349759
refactor(furniture): single source for Y-band coalescing
feat/edge-furniture-stripping
Abimael Martell
2026-08-18 14:11:06 -07:00
-
64c5b6dc1a
fix(furniture): Unicode page-number normalization, shared marker predicate, boundary-safe row protection
Abimael Martell
2026-08-18 14:00:06 -07:00
-
ac5b1a303f
fix(furniture): whole-row structural protection, Unicode digits, page floor
Abimael Martell
2026-08-18 13:40:03 -07:00
-
95af5350b7
fix(furniture): accept Unicode lowercase in parenthesized markers
Abimael Martell
2026-08-18 13:21:01 -07:00
-
0cf7907c63
fix(furniture): per-member band protection, close parenthesized markers
Abimael Martell
2026-08-18 13:11:47 -07:00
-
666ff0f9e1
fix(furniture): count characters in the repetition floor, protect (digit) enumerations
Abimael Martell
2026-08-18 13:00:18 -07:00
-
c93728e803
fix(furniture): extend structural protection to removal passes, accept (letter) markers
Abimael Martell
2026-08-18 12:55:19 -07:00
-
9e8947b9d5
fix(furniture): address review findings on edge and repetition guards
Abimael Martell
2026-08-18 12:39:16 -07:00
-
d27632ead6
feat(markdown): strip page-edge furniture on short documents
Abimael Martell
2026-08-18 12:25:53 -07:00
-
-
5eb6a13860
feat(layout): banded region segmentation for vertically-changing column layouts (#426)
Abimael Martell
2026-08-18 11:00:34 -07:00
-
943fcd8722
test(layout): differential coverage for the band-merge anchor rule
feat/recursive-region-segmentation
Abimael Martell
2026-08-18 10:55:35 -07:00
-
273c27b995
fix(layout): anchor band-merge matching on the founding band's columns
Abimael Martell
2026-08-18 10:40:01 -07:00
-
02cf9affa7
fix(layout): keep figure placeholders out of band whitespace probes
Abimael Martell
2026-08-18 10:10:16 -07:00
-
27c43759ae
docs(layout): record why the band wide-item test is per-item
Abimael Martell
2026-08-18 09:44:17 -07:00
-
c7b4f8c68e
feat(layout): banded region segmentation for vertically-changing column layouts
Abimael Martell
2026-08-18 07:38:09 -07:00
-
-
74ebce430c
fix(layout): accept figure-diluted prose columns via a sustained full-line run (#417)
Abimael Martell
2026-08-17 21:38:52 -07:00
-
120f7f5197
fix(detector): cap decompressed content-stream size before scanning
fix/detector-stream-inflate

Abimael MartellandCursor
2026-08-17 21:36:04 -07:00
-
-
47f3390c03
docs(layout): restore columns_have_prose rustdoc displaced by hoisted const
fix/multi-column-reading-order
Abimael Martell
2026-08-17 21:20:54 -07:00
-
bbfcd39405
fix(layout): accept figure-diluted prose columns via a sustained full-line run
Abimael Martell
2026-08-17 21:04:57 -07:00
-
-
cf4e42b91c
perf(ocr): adaptive detection escalation and parallel staged engine (#413)
Abimael Martell
2026-08-17 20:46:22 -07:00
-
2c26f58e0c
fix(ocr): restore unclip_ratio 2.0 and recalibrate escalation for it
perf/ocr-adaptive-staged-engine
Abimael Martell
2026-08-17 20:06:54 -07:00
-
c9a8da55ee
Merge remote-tracking branch 'origin/main' into perf/ocr-adaptive-staged-engine
Abimael Martell
2026-08-17 20:05:31 -07:00
-
-
-
-
c96c72f033
fix(ocr): return standard boxes directly after direct-escalation failure
Abimael Martell
2026-08-17 18:12:59 -07:00
-
009dc9d1a4
fix(ocr): address review — even-count median, escalation fallback, orientation note
Abimael Martell
2026-08-17 18:08:13 -07:00
-
d390d402a5
fix(detector): route masthead-over-scan pages to OCR (#412)
Abimael Martell
2026-08-17 17:33:47 -07:00
-
84789459b1
feat(extractor): stamp items with the font family name, not the resource tag (#415)
Abimael Martell
2026-08-17 17:21:24 -07:00
-
bb66d7175e
refactor(markdown): drop paragraph-flush branch made unreachable by the boundary gate
feat/base-font-names
Abimael Martell
2026-08-17 16:46:59 -07:00
-
5bfc4c4a92
fix(markdown): font-based code blocks open only at paragraph boundaries
Abimael Martell
2026-08-17 16:37:09 -07:00
-
71f5ee79e0
fix(markdown): emit sub-3-char mono fragments as plain text, not fences
Abimael Martell
2026-08-17 16:28:08 -07:00
-
893c8fd44d
fix(markdown): address review of font-name consumers
Abimael Martell
2026-08-17 16:12:48 -07:00
-
a4efd0aa9d
feat(formula): recognize LM math-symbol/extension/operator families
feat/native-formula-latex
Abimael Martell
2026-08-17 15:36:40 -07:00
-
02e2cdf5e9
feat(extractor): stamp items with the font family name, not the resource tag
Abimael Martell
2026-08-17 15:18:57 -07:00
-
-
-
001af960fc
feat(markdown): opt-in inline-formula recovery as LaTeX from native math glyphs
Abimael Martell
2026-08-17 14:09:37 -07:00
-
-
-
bc414bd08d
perf(ocr): adaptive detection escalation and parallel staged engine
Abimael Martell
2026-08-17 13:33:47 -07:00
-
-
10616db606
fix(detector): route masthead-over-scan pages to OCR
fix/masthead-scan-ocr-routing
Abimael Martell
2026-08-17 13:33:24 -07:00
-
-
06a9bab6b3
fix(release): repair ARM64 package builds (#411)
v1.15.0
Abimael Martell
2026-08-17 10:52:32 -07:00
-
8950a36218
fix(release): repair ARM64 package builds
abi/fix-npm-arm64-release
Abimael Martell
2026-08-17 10:44:33 -07:00
-
-
ca6d667146
chore(release): bump package versions to 1.15.0 (#410)
Abimael Martell
2026-08-17 10:39:17 -07:00
-
1a52a1733b
chore(release): bump package versions to 1.15.0
abi/release-1.15.0
Abimael Martell
2026-08-17 10:32:56 -07:00
-
-
a4b1c714e8
chore(ocr): polish launch readiness (#409)
Abimael Martell
2026-08-17 10:30:29 -07:00
-
154ba05373
ci(ocr): provision smoke-test models explicitly
abi/ocr-launch-polish
Abimael Martell
2026-08-17 10:25:44 -07:00
-
8c66c5dde3
docs(benchmarks): preserve published comparisons
Abimael Martell
2026-08-17 10:11:25 -07:00
-
5b5daa0e2c
docs(benchmarks): restore comparison metadata
Abimael Martell
2026-08-17 10:09:55 -07:00
-
505c8da6f8
chore(ocr): polish launch readiness
Abimael Martell
2026-08-17 10:07:18 -07:00
-
-
0f9b5fa1c6
feat(bindings): expose OCR in Node and Python (#405)
Abimael Martell
2026-08-17 09:25:56 -07:00
-
062ede203e
fix(bindings): address review feedback
abi/ocr-bindings
Abimael Martell
2026-08-17 00:38:10 -07:00
-
16fbe29b52
feat(bindings): expose selective OCR
Abimael Martell
2026-08-17 00:29:16 -07:00
-
-
dba1eadf4d
ci(ocr): validate optional feature (#404)
Abimael Martell
2026-08-16 23:55:56 -07:00
-
264a1c8372
refactor(vision): finalize OCR API (#403)
Abimael Martell
2026-08-16 23:55:56 -07:00
-
72003730ee
fix(vision): harden OCR recovery (#402)
Abimael Martell
2026-08-16 23:55:55 -07:00
-
828a68c03b
feat(vision): adaptively fuse native and OCR text (#394)
Abimael Martell
2026-08-16 23:55:55 -07:00
-
99069ce3d9
feat(vision): recover credible PDFium text layers (#393)
Abimael Martell
2026-08-16 23:55:55 -07:00
-
e2d2bc33d9
fix(tables): preserve numbered reference notes (#392)
Abimael Martell
2026-08-16 23:55:54 -07:00
-
926720f8ff
perf(vision): reuse OCR runtime sessions (#391)
Abimael Martell
2026-08-16 23:55:54 -07:00
-
aa3ad2e6e0
fix(vision): preserve OCR row boundaries (#390)
Abimael Martell
2026-08-16 23:55:53 -07:00
-
2cebb3c95f
feat(vision): expose OCR pipeline (#360)
Abimael Martell
2026-08-16 23:55:53 -07:00
-
7c63a00242
feat(vision): fuse OCR output (#359)
Abimael Martell
2026-08-16 23:55:52 -07:00
-
e460a45f73
feat(vision): add OCR routing (#358)
Abimael Martell
2026-08-16 23:55:52 -07:00
-
12d30b43b0
feat(vision): add OAR OCR engine (#357)
Abimael Martell
2026-08-16 23:55:51 -07:00
-
dd467dd78d
feat(vision): add OCR contracts (#355)
Abimael Martell
2026-08-16 23:55:51 -07:00
-
d9b83993df
feat(render): add optional PDFium page rendering (#348)
Abimael Martell
2026-08-16 23:55:51 -07:00
-
3d5c044e36
ci(ocr): verify ONNX Runtime archive
abi/ocr-ci
Abimael Martell
2026-08-16 22:10:55 -07:00
-
54a1f0a81e
ci(ocr): preserve test fixture line endings
Abimael Martell
2026-08-16 21:50:38 -07:00
-
df16a8be73
ci(ocr): validate optional feature
Abimael Martell
2026-08-16 21:29:13 -07:00
-
c19bb56c66
refactor(vision): finalize OCR API
abi/ocr-api-finalize
Abimael Martell
2026-08-16 21:25:37 -07:00
-
8552efba5e
fix(vision): address OCR hardening review
abi/ocr-release-hardening
Abimael Martell
2026-08-16 22:09:08 -07:00
-
40672d6752
fix(vision): harden OCR recovery
Abimael Martell
2026-08-16 21:16:25 -07:00
-
6d4f044d67
fix(vision): preserve adaptive OCR fallbacks
abi/ocr-adaptive-fallback
Abimael Martell
2026-08-14 18:56:31 -07:00
-
7e7c85801f
feat(vision): adaptively fuse native and OCR text
Abimael Martell
2026-08-14 17:57:51 -07:00
-
c6df46e328
fix(vision): validate native recovery coverage
abi/ocr-native-recovery
Abimael Martell
2026-08-14 18:54:08 -07:00
-
852a790aa5
feat(vision): recover credible PDFium text layers
Abimael Martell
2026-08-14 17:54:16 -07:00
-
634a29f04d
fix(tables): preserve numbered reference notes
abi/table-reference-rows
Abimael Martell
2026-08-14 17:58:45 -07:00
-
0e2e287c04
fix(vision): harden OCR engine caching
abi/ocr-runtime
Abimael Martell
2026-08-14 18:49:08 -07:00
-
616f9b59fb
perf(vision): reuse OCR runtime sessions
Abimael Martell
2026-08-14 17:51:57 -07:00
-
21a436ac1b
fix(vision): normalize white bullet rows
abi/ocr-assembly
Abimael Martell
2026-08-16 21:40:55 -07:00
-
d2d8e35a7b
fix(vision): harden OCR line recovery
Abimael Martell
2026-08-14 18:47:08 -07:00
-
30c9dbbc72
fix(vision): preserve OCR row boundaries
Abimael Martell
2026-08-14 17:50:19 -07:00
-
162c5cbf10
refactor(vision): expose OCR API
abi/local-ocr-api
Abimael Martell
2026-08-14 17:45:23 -07:00
-
4e4cfdc74c
fix(vision): harden OCR API
Abimael Martell
2026-08-11 17:25:52 -07:00
-
24e66245cb
feat(vision): expose OCR pipeline
Abimael Martell
2026-08-11 16:37:31 -07:00
-
cee7b6c381
refactor(vision): use OCR fusion terminology
abi/local-ocr-fusion
Abimael Martell
2026-08-14 17:42:19 -07:00
-
b5a63d7036
fix(vision): make OCR fusion conservative
Abimael Martell
2026-08-11 17:18:51 -07:00
-
6829397bce
feat(vision): fuse OCR output
Abimael Martell
2026-08-11 16:22:22 -07:00
-
fc16133a58
refactor(vision): name routed OCR results
abi/local-ocr-routing
Abimael Martell
2026-08-14 17:41:31 -07:00
-
41a6a67c03
fix(vision): serialize model acquisition
Abimael Martell
2026-08-11 17:15:51 -07:00
-
58fe5a0224
feat(vision): add OCR routing
Abimael Martell
2026-08-11 16:16:24 -07:00
-
c4c969a562
refactor(vision): use OCR engine terminology
abi/local-ocr-oar
Abimael Martell
2026-08-14 17:39:58 -07:00
-
bf0cd8decb
fix(vision): harden OAR runtime loading
Abimael Martell
2026-08-11 17:12:07 -07:00
-
232b4cdef5
feat(vision): add OAR OCR engine
Abimael Martell
2026-08-11 16:04:09 -07:00
-
e3f5429638
refactor(vision): use OCR terminology
abi/local-ocr-contracts
Abimael Martell
2026-08-14 17:37:28 -07:00
-
f6cbe979f6
fix(vision): harden OCR contracts
Abimael Martell
2026-08-11 17:07:35 -07:00