Anatomy of a Run Analysis
For complex failures like non-trivial unit and integration tests, Colimit generates a Root Cause Analysis that you can learn from and interact with, functioning as a Debugging Workbench.
Anatomy of a Run Analysis
A run analysis is actually a wealth of information, functioning a detailed Root Cause Analysis report for what likely caused the build failure. If your build failed and the Solution
tab doesn't seem quite right, head over to the Analysis
tab to dig into what Colimit discovered and all the possible hypotheses it came up with about what could have gone wrong.
If the build error is truly complex, it's unlikely that Colimit will figure out the perfect fix on the first try, but by reading the analysis you can reflect on a lot of different hypotheses to get your own ideas flowing, and then interactively contribute your ideas for Colimit to re-analyze. Alternatively, you can share a link to the analysis with your team to get conversations started.
A run analysis consists of a lot of information, but we'll limit our explanation to the 3 major parts:
- Relevant
Log Excerpts
from the build logs. - The Top 3
Potential Causes
of the error. - The Top 3
Fix Options
for the most likely cause.
Log Excerpts
At the top of the Analysis
, Colimit presents a list of relevant log excerpts from the build logs, along with explanations about why the excerpts are important and what they mean.
Top 3 Potential Causes
Next, Colimit presents the Top 3 Potential Causes of the error, along with a brief explanation of why each is a likely cause.
The really cool thing is that Colimit will also present both Supporting Evidence
and Contradictory Evidence
for each potential cause. Contradictory evidence in particular is something that most AI tools don't know, as they are usually overconfident in their own hypotheses.
Finally, Colimit discusses the Implications
of each potential cause if its true, and determines a Confidence
score for each.
Top 3 Fix Options
Colimit also presents the Top 3 Fix Options for the cause it believes is most likely, along with a brief explanation of why each is a likely fix.
Besides the explanation, each fix option also includes Pros
and Cons
of implementing that fix, along with Implications
on the fix on the rest of your codebase.
The Run Analysis
ends with a Chosen Fix
, along with an implementation strategy, which is used to implement the fix in the Solution
tab.