Start from the alert
Use the title and stack trace as the issue text. On GitHub, add the codna-fix label to the issue and the App picks it up.
Paste the alert into codna fix, or label the GitHub issue codna-fix. Codna follows the call paths the trace names and opens a pull request with root cause attached.
The problem
Codna builds a dependency and blast-radius graph of the repository from its import patterns. No model call, zero tokens. The frames in the trace are nodes in that graph, so the agent follows the call paths back to the cause instead of patching the line that threw.
How Codna fixes it
Use the title and stack trace as the issue text. On GitHub, add the codna-fix label to the issue and the App picks it up.
Codna builds a dependency and blast-radius graph of the repository from its import patterns. No model call, zero tokens. The agent receives an evidence bundle scoped to the issue: the suspect files, the call paths, the failing test. Codna prints the raw-to-bundle token size on every run.
Every fix reports root cause, confidence, blast radius and regression risk, and passes a risk gate before it is applied or a pull request opens. With --open-pr, or through the GitHub App, the pull request states the issue, the root cause, the symbols touched and a confidence score, and asks for review before merging. Codna never merges.
codna fix https://github.com/org/repo --issue "Sentry CHECKOUT-1421: TypeError in session handler" --open-pr
What you get
Paste as much of the trace as you have; Codna uses it to localize.
The pull request states the issue, the root cause, the symbols touched and a confidence score.
Codna reports regression risk and blast radius on the fix.
The proof
Give it the alert as the issue. Codna builds a dependency and blast-radius graph of the repository from its import patterns. No model call, zero tokens. The agent receives an evidence bundle scoped to the issue: the suspect files, the call paths, the failing test. Codna prints the raw-to-bundle token size on every run. Every fix reports root cause, confidence, blast radius and regression risk, and passes a risk gate before it is applied or a pull request opens.
The trace names the frames; the graph knows what they depend on. The agent works from that evidence, not the whole repository.
Paste what you have. More frames help localization; the title alone is enough to start.
Codna reports blast radius and regression risk on every fix and runs a risk gate before anything is applied. Add --tests --apply to re-run your tests.
Yes. Issue, root cause, symbols touched and a confidence score, with a request to review before merging.
Understanding runs on your machine and spends no tokens. Only the evidence bundle or the diff reaches your model provider, with your key from the OS keychain. Set privacy.egress to fail-closed in codna.yaml and Codna runs your tests only under kernel-level network denial. Secret redaction is always on.
Related