Questions, hypotheses, answers, and evidence
The whole purpose of collecting and analyzing data, creating artifacts,
calculating numbers is to produce evidence to support answers to questions.
Calkit allows connecting these all together through the metadata in
calkit.yaml.
Take this example:
questions:
- question: How does the system respond to increasing $x$?
hypothesis: The value of $y$ increases linearly with $x$.
answer: $y$ increases quadratically with $x$, not linearly.
evidence:
- kind: figure
path: figures/x-vs-y.png
- kind: result
path: results/summary.json
key: r_squared_quadratic
Early on in the project, we may start with a question, then add a hypothesis, then an answer with some evidence. This evidence references artifacts created by the project pipeline, which can be seen in its declared outputs. This allows us to trace back all the way back to the primary artifacts, e.g., raw data and code, to verify with zero ambiguity (so long as the pipeline is not stale). This also helps tie everything together and give a structured summary of the project's findings.