A different approach that we took to root causing bugs that you may find interesting is that we first try to reproduce the bug before coming up with a fix for it.
This is essentially a (RCA <-> Repro test case) loop until we're recreated the bug. If our attempts are not converging and we’re on the wrong track, we ask for human input.
Oh the repro runs in an isolated sandbox, and all interactions outside the sandbox (with lets say other services or databases) are mocked. The repro harness doesn't have access outside of it.
This also allows us to inject various types of faults, which is helpful with debugging more complex systems.
This is essentially a (RCA <-> Repro test case) loop until we're recreated the bug. If our attempts are not converging and we’re on the wrong track, we ask for human input.
are you using any AI tools to debug productions issues at this time?
https://news.ycombinator.com/item?id=48901182
https://news.ycombinator.com/item?id=48901202
This also allows us to inject various types of faults, which is helpful with debugging more complex systems.
I think FixBugs is most useful during high volume bug triage. This is where having a low false-positive async debugging agent is most helpful.
are you using any AI tools to debug productions issues at this time?