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

FlexMeasures / flexmeasures / 29166857744
81%
main: 81%

Build:
Build:
LAST BUILD BRANCH: fix/latest-task-run-timestamp
DEFAULT BRANCH: main
Ran 11 Jul 2026 08:37PM UTC
Jobs 1
Files 172
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

11 Jul 2026 08:20PM UTC coverage: 81.461% (+0.03%) from 81.433%
29166857744

Pull #2297

github

Flix6x
fix: address stack code review findings

- API automation creation now checks that the caller may read every sensor
  referenced in the parameters/config and record data on the sensors the
  automation writes to, closing a cross-account data read/write hole.
- `add report --as-job` implies --save-config (the worker rebuilds the
  reporter from its data source, so jobs without stored config always crashed).
- Report automation parameters are validated with the chosen reporter's own
  parameters schema, not the base schema.
- Invalid start-offset/end-offset strings are rejected at creation instead of
  being silently skipped at run time (which yielded empty report windows).
- run_report_job wipes the shared cached reporter's parameter state, like the
  automation runner already did, so consecutive jobs in one worker process
  don't pollute each other.
- Default report windows now anchor to the end of the last *successfully*
  covered window, recorded by the reporting job upon success — failed jobs no
  longer create permanent reporting gaps, and the enqueue-time minute-rollover
  gap is gone (the recorded anchor is the window end itself).
- The cron-period fallback window is computed in the platform timezone,
  matching how the runner decides when automations fire.
- Job stats for schedules automations also scan flex-model device sensors
  (which may belong to child assets), so failed per-device jobs show up.
- The trigger provenance kwarg is excluded from the job cache hash, so
  identical schedule requests from different origins dedupe again.

Part of FlexMeasures/flexmeasures#2288

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Rbix8k1JfeUWNXEmHEZVpX
Pull Request #2297: Reports as jobs and as automations

220 of 260 new or added lines in 10 files covered. (84.62%)

4 existing lines in 3 files now uncovered.

14861 of 18243 relevant lines covered (81.46%)

0.81 hits per line

Uncovered Changes

Lines Coverage ∆ File
16
86.51
2.82% flexmeasures/data/services/automations.py
15
80.63
-1.11% flexmeasures/api/v3_0/assets.py
7
71.71
-0.48% flexmeasures/cli/data_add.py
2
95.12
flexmeasures/data/services/reporting.py

Coverage Regressions

Lines Coverage ∆ File
2
86.51
2.82% flexmeasures/data/services/automations.py
1
71.71
-0.48% flexmeasures/cli/data_add.py
1
88.74
-0.43% flexmeasures/data/models/data_sources.py
Jobs
ID Job ID Ran Files Coverage
1 29166857744.1 11 Jul 2026 08:37PM UTC 172
81.46
GitHub Action Run
Source Files on build 29166857744
  • Tree
  • List 172
  • Changed 11
  • Source Changed 10
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29166857744
  • Pull Request #2297
  • PR Base - feat/2288-automations-crud (#29160370996)
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