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

FlexMeasures / flexmeasures / 35012763314
86%

Build:
DEFAULT BRANCH: main
Ran 15 Sep 2026 07:29PM UTC
Jobs 1
Files 183
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

15 Sep 2026 07:17PM UTC coverage: 85.476% (+0.08%) from 85.401%
35012763314

push

github

web-flow
CRUD for automations in the API and UI (#2294)

* feat: add Automation data model

Automations are recurring tasks (for now: computing forecasts) defined per
asset. The recurrence is defined by a cron string, and the work to be done
is defined by a data generator (linked through a data source) together with
the parameters to call it with.

Includes a migration for the new table, and new dependencies on croniter
(cron matching/validation) and cron-descriptor (natural-language recurrence
descriptions).

Part of FlexMeasures/flexmeasures#2288

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Rbix8k1JfeUWNXEmHEZVpX

* feat: CLI commands to manage and run automations

- `flexmeasures add automation` creates an automation (active by default),
  validating the forecast parameters with the forecast parameter schema and
  storing the forecaster config on a data source.
- `flexmeasures edit automation` edits the name, recurrence (cron string)
  or activation status.
- `flexmeasures delete automation` deletes an automation.
- All three record their events in the asset's audit log.
- `flexmeasures jobs run-automations` queues jobs for all automations due
  this minute (to be run once per minute, e.g. via cron), with a Redis-based
  guard against duplicate runs within the same minute.

Part of FlexMeasures/flexmeasures#2288

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Rbix8k1JfeUWNXEmHEZVpX

* feat: record on forecasting jobs how they were created

Data generators can now be told how their queued jobs got triggered (via the
CLI, the API or an automation), and the train-predict pipeline stores this
on the jobs as meta data. The asset's status page shows it in a new
'Created Via' column of the jobs table.

Part of FlexMeasures/flexmeasures#2288

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Rbix8... (continued)

219 of 229 new or added lines in 9 files covered. (95.63%)

19032 of 22266 relevant lines covered (85.48%)

0.85 hits per line

Uncovered Changes

Lines Coverage ∆ File
4
92.93
2.05% flexmeasures/data/services/automations.py
2
87.4
0.63% flexmeasures/api/v3_0/assets.py
2
79.03
-0.56% flexmeasures/cli/data_add.py
2
92.59
0.14% flexmeasures/data/schemas/automations.py
Jobs
ID Job ID Ran Files Coverage
1 35012763314.1 15 Sep 2026 07:29PM UTC 183
85.48
GitHub Action Run
Source Files on build 35012763314
  • Tree
  • List 183
  • Changed 10
  • Source Changed 9
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #35012763314
  • 29b2dce9 on github
  • Prev Build on main (#34865426266)
  • Next Build on main (#35068141867)
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