We need to make sure the provenance tracking system works well enough to enable fine-grained experimentation. In particular it should:
Log any methods calls on the mopy objects which change the data in any of the dataframes. It should also store the method parameters, perhaps unless they are too large (eg if a big array was one of the input params).
Distinguish between the object types when their methods were called (eg the methods applied on StatsGroup should propagate all the way to SpectrumGroup)
(tentative) Also include the processing information from Traces.
Right now it is very simple and essentially mimics the processing tracking on the Trace object. If we need something more complex, there are some systems out there we may be able to use or take inspiration from like seisprov.
We need to make sure the provenance tracking system works well enough to enable fine-grained experimentation. In particular it should:
Log any methods calls on the mopy objects which change the data in any of the dataframes. It should also store the method parameters, perhaps unless they are too large (eg if a big array was one of the input params).
Distinguish between the object types when their methods were called (eg the methods applied on
StatsGroup
should propagate all the way toSpectrumGroup
)(tentative) Also include the processing information from
Traces
.Right now it is very simple and essentially mimics the processing tracking on the
Trace
object. If we need something more complex, there are some systems out there we may be able to use or take inspiration from like seisprov.