Production docs for Reva 1.3.0 — local-first document intelligence for reinsurance bordereaux.
## Start here
| Guide | Scope |
|:---|:---|
| [Architecture](architecture.md) | The single `Reva.exe`, .NET 10 host, static Next.js cockpit, API surface, persistence, and runtime boundaries. |
| [AI pipeline](ai-pipeline.md) | Parser routing, offline OCR, extraction, confidence, learned mapping, reconciliation, assistant chat, and export. |
| [Packaging](packaging.md) | Windows package contents, build command, release ZIP shape, and smoke-test checks. |
| [Demo script](demo-script.md) | A short product walkthrough using the seeded corpus and real review/export flows. |
| [Reinsurance landscape](research/reinsurance-landscape.md) | Domain grounding: document types, canonical fields, standards, reconciliation breaks, and competitive UX patterns. |
| [Test suite](../tests/index.md) | Unit, integration, host smoke, package smoke, web Playwright, accessibility, and optional Docling-worker tests. |
## Current product contract
Reva is a local-first, offline-by-default AI document-intelligence application for reinsurance bordereaux ingestion and reconciliation. The product name is **Reva**; the in-app cockpit title is **Reve Intelligence**.
At runtime, Reva is one localhost-only Windows process:
```mermaid
flowchart LR
Browser["Analyst browser"] --> Host["Reva.exe on http://localhost:5187"]
Host --> UI["Static Next.js UI from wwwroot"]
Host --> API["REST API + /api/agent SSE"]
API --> Workflow["DocumentWorkflow"]
Workflow --> OCR["PaddleOCR + native parsers"]
Workflow --> Map["learned schema mapping"]
Workflow --> Reconcile["reconciliation engine"]
Workflow --> Export["CSV / Excel / JSON templates"]
Workflow --> Store[("SQLite default")]
```
## Non-goals and boundaries
- Node.js is build-time only; no Node process is required in the release package.
- Python and Docling are optional richer parsing paths, not core runtime requirements.
- The inbound email seam is file-based `.eml`/`.msg`; live mailbox sync is not a shipped feature.
- Extraction stays deterministic and keyless unless optional LLM-assisted extraction is explicitly enabled.
- Bounding boxes are normalized to `0..1` against the final rendered page size.
- Provenance is always present; citations may be empty only when geometry is unavailable.