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

umputun / rlb-stats / 33739405608
88%
master: 89%

Build:
Build:
LAST BUILD BRANCH: fix/aggregate-single-pass
DEFAULT BRANCH: master
Ran 03 Sep 2026 09:32AM UTC
Jobs 1
Files 8
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

03 Sep 2026 09:32AM UTC coverage: 88.441% (+0.4%) from 88.022%
33739405608

Pull #65

github

paskal
Aggregate candles in a single pass

Previously, aggregateCandles rebuilt each output window by rescanning the
whole candle slice, O(windows x candles): a 30-day dashboard with about 43k
minute candles and 100 windows walked the slice once per window. Candles are
now bucketed by window index in one pass over an input sorted by StartMinute,
keyed by an origin-aligned time, and non-empty windows are emitted in order.

Window offsets are counted in whole seconds instead of through time.Sub,
whose Duration saturates at roughly 292 years and would collapse candles
further apart than that into one window at a wrong timestamp. Cancellation is
checked at window boundaries so a cancelled request returns only complete
windows, never a partially filled one.

Windows align to the earliest candle as before, with one deliberate change:
the origin used to be seeded with time.Now() and only replaced by an earlier
candle, so a set of candles lying entirely in the future was aligned to the
wall clock and its window stamps moved on every request. The origin is now
always the earliest candle. Skip-empty semantics and the partial result on
cancellation are unchanged.

Tests cover the cancellation path, that cancellation lands only at window
boundaries, the empty-window skip, candles more than 292 years apart, and
that unsorted input aggregates the same as sorted input.
Pull Request #65: Aggregate candles in a single pass

50 of 51 new or added lines in 1 file covered. (98.04%)

1 existing line in 1 file now uncovered.

658 of 744 relevant lines covered (88.44%)

105.8 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
97.18
1.63% app/web/aggregate.go

Coverage Regressions

Lines Coverage ∆ File
1
97.18
1.63% app/web/aggregate.go
Jobs
ID Job ID Ran Files Coverage
1 33739405608.1 03 Sep 2026 09:32AM UTC 8
88.44
GitHub Action Run
Source Files on build 33739405608
  • Tree
  • List 8
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #65
  • PR Base - master (#32351751461)
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