STS Experiments

Minimal causal sequence experiments

Download as .zip Download as .tar.gz View on GitHub

This repository is a collection of case studies (experiments) for bugs found with STS.

See the walkthrough and documentation for a description of the contents of these directories.

Running old experiments

To properly rerun an old experiment you may need to rollback STS, POX, Hassel, and the control software to the software versions when the experiment was originally recorded.

The original software versions are stored in each experiment's metadata file. We provide two scripts in STS to automatically read the information stored there, rollback the software, and rerun experiments:

Usage: run_cmd_per_experiment [options]
    -c, --command-path PATH          Absolute path to a command to run within each directory
    -e, --exclude-synthetic          Whether to exclude synthetic bug experiments
    -r, --rollback-sts               Whether to rollback STS + dependencies to the versions specified in metadata.json

We often write a simple shell script to execute some analysis on the experiment, and pass the path to the shell script to run_cmd_per_experiment with -c.