An extension of tshistory which provides a supervision workflow. Series have two sources: automatic and manual, and override rules between automatic/manual. sources.
supervision: imply manual -> keepnans
Added tag 0.13.0 for changeset e428df148da3
tsio/rename: add the `propagate` parameter

heads

tip
browse log
0.13.0
browse .tar.gz

clone

read-only
https://hg.sr.ht/~pythonian/tshistory_supervision
read/write
ssh://hg@hg.sr.ht/~pythonian/tshistory_supervision

#TSHISTORY SUPERVISION

#Purpose

This component provides a supervision mechanism over tshistory.

The central use case is as follows:

  • time series from third party providers are stored as is

  • from time to time, a data analyst will want to override (bogus) values, and need to know what values were overriden

  • when upstream fix its bogus values the fixed values must override the data analyst fixes

  • the complete series history must retain information on the supervision activity

#Usage

The basic tshistory usage is described on its own documentation.

An override is made as follows:

>>> tsa.update('my-series', series, 'analyst@corp.com', manual=True)

This also works with the replace api call.

Inserted values will show up in the next .get call.

Specific API calls exist to provide a standard workflow:

  • .edited returns a couple series and markers where series is like the output of a standard .get call and markers a boolean series indicating whether any data point is from upstream or a manual edition.

The series metadata grows a new supervision-status attribute, whose value can be one of unsupervised, supervised and hand-crafted.

Hand-crafted is for series that are entirely made of manual updates.