Updated: Before you make a merge request: Checklist for common mistakes

Posted . Visible to the public. Auto-destruct in 60 days
  • Reformatted the checklist into separate “Human checks” and “Agent checks” sections.
  • Modernized the checklist items.

Changes

  • -Merge requests are often rejected for similar reasons.
  • +Merge requests are often rejected for similar reasons. To avoid this, go through the following checklist before making a merge request.
  • -To avoid this, before you send a merge request, please confirm that your code ...
  • +## Human checks
  • -- [has been reviewed by yourself beforehand](https://makandracards.com/makandra/491161-how-to-make-your-code-reviewer-fall-in-love-with-you)
  • -- fulfills every requirement defined as an [acceptance criterion](https://makandracards.com/makandra/35757-project-management-best-practices-stories)
  • -- does not have any log or debugging statements like `console.log(...)`, `byebug` etc.
  • -- has green tests
  • -- has tests for new features
  • -- has been manually tested in the browser
  • -- has [no missing translations in the UI](/makandra/3907)
  • -- has no ugly UI changes (long content breaking out of boxes, elements without margins, etc.)
  • -- works with lots of records without triggering a million queries or loading the world into memory¹
  • -- sorts **all** lists (indexes, select dropdowns, ...) by either sorting in the database or using natural_sort in Ruby
  • -- paginates long index lists
  • -- has all necessary database indexes to speed up foreign key look ups and commonly used queries
  • -- if it adds any migrations, takes care of existing records
  • -- if it creates any new tables, adds created_at and updated_at timestamps (`t.timestamps`)
  • -- if it makes major changes, has updated the README as appropriate
  • +- [ ] The change fulfills all [acceptance criteria](https://makandracards.com/makandra/35757-project-management-best-practices-stories).
  • +- [ ] You have [manually reviewed](https://makandracards.com/makandra/491161-how-to-make-your-code-reviewer-fall-in-love-with-you) and understood the entire diff. Don't ask reviewers to check decisions you haven't made yourself.
  • +- [ ] The agent has not needlessly duplicated existing logic or concepts.
  • +- [ ] The solution is reasonably simple and fits the existing architecture.
  • +- [ ] You have manually tested the change in an actual browser.
  • +- [ ] The UI/UX looks and feels good.
  • -Please also add screenshots or videos of any changed UI.
  • +## Agent checks
  • -¹ This should be verified in a private browsing window as you might not notice any issues on cached screens (E-Tags etc.)
  • +- [ ] The diff contains no unrelated changes, accidental edits, or debugging statements (`console.log`, `debugger`, etc.).
  • +- [ ] All tests are passing.
  • +- [ ] New or changed behavior is covered by tests. Prefer few E2E tests for critical user flows and many fast unit tests for details and edge cases.
  • +- [ ] There are [no missing translations in the UI](/makandra/3907)
  • +- [ ] The change performs with large datasets: no N+1 queries, excessive query counts, or unnecessarily large in-memory collections.
  • +- [ ] All lists are sorted (indexes, select dropdowns, ...).
  • +- [ ] Long index lists are paginated.
  • +- [ ] Database queries and foreign key lookups have indexes.
  • +- [ ] Migrations correctly handle existing records and leave no invalid data behind.
  • +- [ ] New tables have `created_at` and `updated_at` timestamps (`t.timestamps`)
  • +- [ ] Relevant documentation (`README.md`, `AGENTS.md`, Cards) is updated where necessary.
  • +- [ ] If any UI was added or changed, a screenshot or video was attached to the MR.
Profile picture of Henning Koch
Henning Koch
License
Source code in this card is licensed under the MIT License.
Posted by Henning Koch to makandra dev (2026-10-26 14:27)