One of our projects, Meta, built out (and beyond) many of the ideas mentioned in this post: http://hci.stanford.edu/publications/2016/ethan/meta.pdf
We found that auto-documentation via these kinds of run-time traces is really powerful. If you add in a bit of centralization (connecting traces across many users), this can also be a useful way to capture bugs or unforeseen behavior.