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

ory / lumen / 24402038199
74%

Build:
DEFAULT BRANCH: main
Ran 14 Apr 2026 01:38PM UTC
Jobs 1
Files 36
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

14 Apr 2026 01:35PM UTC coverage: 72.306% (+0.2%) from 72.096%
24402038199

push

github

web-flow
fix(embedder): re-probe unhealthy servers and resolve dimension mismatch on failover (#132)

* fix(embedder): re-probe unhealthy servers and resolve dimension mismatch on failover

Two related bugs in FailoverEmbedder when the primary embedding server is down:

1. Once initServers() marked all servers unhealthy, the checked flag prevented
   re-probing on subsequent Embed() calls — even after the server came back up.
   Fix: re-probe when active < 0 and a 30-second cooldown has elapsed. Also
   reset active = -1 on failover exhaustion so the re-probe path triggers.

2. ModelName() and Dimensions() returned stale server-0 values before the first
   Embed() call. When failover later selected a different server with different
   dimensions, the Indexer/Store was already created with wrong dimensions,
   causing sqlite-vec errors. Fix: trigger eager initServers() in ModelName()
   and Dimensions() so they reflect the server that will actually handle
   embeddings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor(embedder): extract maybeReprobe helper to deduplicate init/reprobe logic

Dimensions(), ModelName(), and Embed() all had identical init/reprobe
blocks. Extract into maybeReprobe(log bool) called under the existing
mutex, with the log parameter controlling reprobe diagnostics in Embed().

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

15 of 15 new or added lines in 1 file covered. (100.0%)

6 existing lines in 2 files now uncovered.

3274 of 4528 relevant lines covered (72.31%)

706.32 hits per line

Coverage Regressions

Lines Coverage ∆ File
4
88.24
-0.59% internal/config/service.go
2
87.98
5.79% internal/embedder/failover.go
Jobs
ID Job ID Ran Files Coverage
1 24402038199.1 14 Apr 2026 01:38PM UTC 36
72.31
GitHub Action Run
Source Files on build 24402038199
  • Tree
  • List 36
  • Changed 2
  • Source Changed 1
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24402038199
  • 7979d7f2 on github
  • Prev Build on main (#24398549880)
  • Next Build on main (#24402938033)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc