FAQ
Common questions.
Why does ocra report so few findings?
By design. ocra favors precision: reviewers are told what not to flag, findings are validated and fact-checked against the code, and findings outside a task's own files are dropped to avoid duplicates. An empty report on a correct change is a good outcome.
How much does a review cost?
It depends on the models and the size of the change. In the evaluation runs, with Gemini on Vertex AI at list prices, a review cost $1.57 on average (median $1.15, from $0.07 to $3.98); see Measured quality. ocra review --plan shows the tasks and the size of each first prompt without calling a model, --max-cost-usd sets a spend limit for the run, and every run prints tokens and cost per attempt and in total. Grouping related files and the 30-step cap per review agent keep costs bounded.
Which models can I use?
Any model OpenCode supports, written as provider/model. Configure a failback chain per tier so an overloaded model does not fail your review.
Does it work with GitHub pull requests?
Yes. ocra review --pr <number> reviews a pull request, and the GitHub Action posts inline comments and one summary comment, re-reviewing only what changed on later pushes. See GitHub pull requests.
Does it work with GitLab?
Yes, GitLab.com and self-managed GitLab: ocra review --mr <iid> reviews a merge request and posts threads and one summary note, in a GitLab CI job or from the command line. See GitLab merge requests.
Why doesn't the model give line numbers?
Models often get line numbers wrong. They quote the code instead, and ocra resolves the quote to lines. See How it works.
Where are results stored?
Each review (not --plan) writes .ocra/sessions/<id>/events.jsonl and report.json in the reviewed repository.