Skip to content

Decision records

Architecturally significant decisions — a dependency or backend choice, a pipeline algorithm, a public API shape, a model source, a build/target strategy — are recorded as MADR-format Architecture Decision Records under adrs/ in the repository. Each ADR carries a status, a date, and deciders. ADRs are immutable once accepted: reversing a decision means adding a new ADR that supersedes the old one, not rewriting it.

ADR Title Status
0000 Record decisions as MADR ADRs Accepted
0001 Cargo workspace: rlib core + thin CLI Accepted
0002 Scope to gen2 recognizers + CRAFT Superseded by 0026
0003 Model source: iText ONNX, runtime download Superseded by 0025
0004 Inference backend seam: ort / tract / candle Accepted
0005 MCP as a feature-gated module + subcommand Accepted
0006 Generate agent config with ai-rulez Accepted
0007 Tooling scaffolding adapted from basemind Accepted
0008 In-repo dev tooling: uv Python fallback + Rust tools/ for model export Accepted
0009 Backend evaluation: ort primary, candle deferred off the critical path Superseded by 0031
0010 Public OcrEngine seam, internal DTO boundaries, and encapsulation lockdown Accepted
0011 Re-pointable model registry via a registry_owner override Accepted
0012 ONNX Runtime provisioning: ort-bundled + ort-dynamic (xberg pattern) Accepted
0013 imageproc for CRAFT postprocess geometry Accepted
0014 Public detect / recognize-line methods and a model-provisioning surface Accepted
0015 Criterion microbenchmarks behind a bench feature seam Accepted
0016 Parity harness: dual golden fixtures, HF-cache model resolution, and the test corpus Accepted
0017 Resolve models through the Hugging Face hub’s native on-disk cache Accepted
0018 cv2-exact CRAFT dilation (amends ADR 0013) Accepted
0019 Parity-safe performance optimization and SIMD Accepted
0020 Release strategy: tag-triggered multi-platform build with crates.io dry-run Superseded by 0023
0021 Head-to-head benchmark methodology and regression gate Accepted
0022 Input image format coverage: pure-Rust decoders only Accepted
0023 Publish to crates.io for real, via GitHub Actions trusted publishing Accepted
0024 Documentation site, social assets, and CI docs deployment Superseded by 0033
0025 First-party ONNX exports on the sceptre-ocr Hugging Face org Accepted
0026 Extend gen2 scope to Telugu and Kannada Accepted
0027 Fixed-canvas CRAFT detection on the tract backend Accepted
0028 Host-supplied model artifacts and sequential browser-WASM execution Accepted
0029 CLI provisioning default and runtime-scoped parity Accepted
0030 Published benchmark artifact and drift gate Accepted
0031 Hand-written candle networks as the GPU and no-C++-runtime backend Accepted
0032 Per-backend accelerator support (amends ADR 0029) Accepted
0033 Docs on docs.sceptre.xberg.io with the shared @xberg-io/docs-theme Accepted