Pull requests¶
On GitLab, pull requests are called merge requests. Everything on this page works the same there.
Publishing¶
Publish commits the change to Lyzentra's branch, opens a pull request to the base branch, posts the link on the issue and moves the issue to In review.
The pull request description has the goal and acceptance criteria, the proof of work, Lyzentra's review of its own change, and any security findings. In projects that only use free models, it also says that the code was never sent to a paid AI service.
Lyzentra never merges. Review the pull request as you would any other.
Asking for changes¶
You can ask Lyzentra to change its pull request from GitHub or from the app. Either way it downloads the branch as it is now, including commits other people pushed, makes the change, runs the build, tests and checks again, then pushes one commit to the same pull request and replies with what it did.
From GitHub, comment on the pull request:
/agent fix return 204 when the cart is empty and add a test for it
The command has to start the line. You can also leave it on a specific line under Files changed, and Lyzentra knows which line you mean.
A review works too: under Review changes, choose Request changes. Lyzentra uses the review text and all of its line comments.
From the app, open the run and click Revise pull request.
A few things to know:
- Only people with write access to the repository can trigger Lyzentra. Comments from bots are ignored.
/agent fixonly works on pull requests Lyzentra opened. For anyone else's, use/agent review.- If Lyzentra can't make the change, it says so on the pull request and leaves it as it was.
- A change with high-risk security findings is not pushed. Lyzentra asks for a maintainer to look at the run.
CI¶
The run page has a CI section with the checks your repository ran on the pull request's latest commit: GitHub Actions jobs, other GitHub check runs and commit statuses, or the jobs of the latest GitLab pipeline. Each check links to its page. While anything is still running, the section refreshes every 30 seconds; Refresh reloads it any time.
When a check fails, click Fix failing CI. Lyzentra reads the failing jobs' logs (the end of each log, plus any annotations), fixes the cause and pushes one commit to the same pull request, the same way as Revise pull request. It's told not to skip or weaken tests to get a green build, but read the commit like any other.
GitLab jobs marked allow failure are shown but don't count as failed.
If your feedback is a general rule rather than a one-off ("we always use Optional here"), Lyzentra may suggest it
as a project rule. See Project settings.