mi6 / mi6/ic-ui-kit

Explore how we can ensure high-quality commit messages

Open
#4,275 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ICDS Core Team spike
Dominant language
TypeScript
Stars
53
Forks
63
Avg merge
2d 4h
Merged PRs (30d)
15

Description

Summary

Explore how we can ensure that our commit messages are high-quality, i.e. are clear and contain all the necessary information, so that they can be added to the roadmap on the website without our team needing to make too many manual changes.

💬 Description

Every time we do a release of our components, an automated PR gets created to update the ICDS website and this includes an update to our roadmap (using the updateRoadmap.js script).

updateRoadmap.js takes the short description from the message of each new commit added in the latest release and adds it as a bullet point in the "Recently shipped" section of the roadmap.

The issue is that the short descriptions in these commit messages sometimes don't contain enough information (e.g. what component has been affected by the change, or it's just a bit unclear). Also, sometimes the commit type might not be correct, e.g. it could be chore when it should be fix, meaning it won't show up in the roadmap. This all means that whoever is doing the release has to go in and manually update the list of changes.

It would be good if we could somehow ensure that everyone writes their commit messages with all the necessary information, and in a way that's appropriate for the roadmap, so we can limit the amount of manual changes we need to make to the roadmap.

Suggestions:

  • Add a new PR checklist item to ensure people check their commit messages
  • Maybe some kind of AI check to capture any necessary changes to commit messages people may have missed?
  • Add extra info to the Commitizen guidance that comes up when people do git commit
🚨 Urgency (low, medium or high)

I feel like this is quite high - because it can slow down releases having to constantly manually make changes.

Why do we need it?

To speed up releases.

I think the roadmap may always need some manual changes (e.g. remove any references to changes that aren't relevant to customers) but it would be good to at least reduce the amount of effort required here a bit.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading updateRoadmap.js and the existing Commitizen guidance to understand how commit descriptions and types become roadmap entries. Review the suggested PR checklist and AI-check approaches, then define an agreed process that preserves necessary component and change information while reducing manual roadmap edits.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, javascript, typescript
Domain
developer-experience, release, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.