We breaks as programs change. We introduce a tracing and analysis framework that leverages aspect-oriented programming and reflection to (a) capture partial or full execution traces with high-level semantics, (b) compare and analyze traces across program versions to aid in understanding the affects of code changes on program execution.