• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

cameri / nostream / 42485548527
78%
main: 78%

Build:
Build:
LAST BUILD BRANCH: rewrite/main
DEFAULT BRANCH: main
Ran 08 Nov 2026 01:37PM UTC
Jobs 2
Files 321
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

08 Nov 2026 01:33PM UTC coverage: 77.588%. Remained the same
42485548527

push

github

web-flow
feat(storage): LMDB event store backend behind the rewrite seam (#864) (#1073)

Part of #864 — the LMDB store slice. Base `rewrite/main`.

A second `EventStore` backend behind the merged seam, in
`crates/nostream-storage/src/lmdb/`, implementing all nine repository
traits over heed 0.20.5: 7 event databases, 22 tail databases and one
`meta`, versioned row values, one write transaction per call, every heed
call on `spawn_blocking`, 256-row batches on both stream and
reconciliation polls.

## What was built

- `nostream-storage`'s `lmdb` feature: events, users, invoices, metadata
(NIP-05, invite, DVM, reports), notifications (delivery log + outbox),
readings and the block store.
- `nostream_storage::Backend` deleted in favour of
`nostream_core::EventStoreBackend`; `data_dir(root, backend) ->
Option<PathBuf>`.
- The parity harness refactored into `tests/common/` around a
`Repos<'a>` of nine `&dyn` traits, so both arms replay the same 51
method arms: new `tests/parity_lmdb.rs` beside the existing Postgres
target.
- ADR `docs/rewrite/decisions/0010-lmdb-backend.md`, one empty
changeset, and `scripts/storage-parity.sh` gaining the LMDB step.

## Verification

| Check | Result |
|---|---|
| `cargo test -p nostream-storage --test parity_lmdb` | 24 passed,
`LMDB_PARITY_COMPLETE replayed=113 excluded=21,48,50,112,115` |
| `cargo test --workspace --all-features` | 1033 passed, 0 failed, 4
ignored, 58 targets |
| `--lib -- lmdb` / `--test storage` | 57 / 5 |
| fmt, both clippy forms, release build, no-default-features | exit 0 |
| `git merge-tree rewrite/main factory/024-lmdb-store` | clean |

The five exclusions are structural: entries 112 and 115 roll back (a
transaction type this backend deliberately has none of), and 111/117
replay sequentially because 116 depends on 111's outbox row. No fixture
entry was edited — every coverage gap was closed with a direct test
instead.

## Read-path defects the review rounds found and fixed

Limited `ids`/`authors`/`tags` p... (continued)

4502 of 6342 branches covered (70.99%)

Branch coverage included in aggregate %.

9792 of 12081 relevant lines covered (81.05%)

759.82 hits per line

Jobs
ID Job ID Ran Files Coverage
1 Integration - 42485548527.1 08 Nov 2026 01:37PM UTC 321
33.0
GitHub Action Run
2 Unit - 42485548527.2 08 Nov 2026 01:38PM UTC 321
75.03
GitHub Action Run
Source Files on build 42485548527
  • Tree
  • List 321
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #42485548527
  • 68be6f3a on github
  • Prev Build on rewrite/main (#42070676013)
  • Next Build on rewrite/main (#42657349618)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc