DEV Community

Hitesh Sachdeva
Hitesh Sachdeva

Posted on

Fixing Playbook Update Drawer Title in OpenCTI

Hacktoberfest: Contribution Chronicles

Introduction

So… this week was quite a journey. After exploring a few repositories for Hacktoberfest, I came across OpenCTI, a large open-source threat intelligence platform. At first glance, it looked a bit intimidating — the project is huge, with multiple modules and a complex frontend-backend setup. But that’s exactly what made me curious to give it a shot.

Discovering the Issue

While browsing through beginner-friendly issues, I found one titled:

“Playbook update drawer title is wrongly named ‘Update a decay rule’” (Issue #12824)

The label said “good first issue”, so I decided to go for it. Even though it looked like a small UI change, it was a good opportunity to understand the project structure and make my first code contribution to OpenCTI.

Understanding the Problem

The bug was pretty straightforward:

When you go to Processing → Automation → Update a playbook, the title of the update drawer incorrectly displayed “Update a decay rule” instead of “Update a playbook.”

It sounds simple, but for someone new to the project, figuring out where that label comes from in a massive codebase can be tricky.

Getting Started

Setting up OpenCTI locally was my first challenge. The installation steps involved multiple services and dependencies, and I had to spend some time making sure everything was configured properly before I could even reproduce the issue.

Once I got it running, to locate where this incorrect title was coming from, I used the grep command to search the entire frontend codebase for the phrase “Update a decay rule”:

grep -R "Update a decay rule" opencti-platform/opencti-front/
Enter fullscreen mode Exit fullscreen mode

After a few matches, I found the exact file responsible for rendering the playbook update drawer.

The Fix

The fix turned out to be simple — just correcting the title string to “Update a playbook.”

Even though it was a one-line fix, the process of locating it, testing the change locally, and making sure nothing else broke was a great learning experience.

After thoroughly testing the fix on my local setup and confirming that the drawer title displayed correctly, I committed the change and submitted a pull request:
PR #12967 – Fix playbook update drawer title

The Review

After submitting the PR, it had to go through several automated checks, and a maintainer needed to verify the changes. It was my first code-related PR for Hacktoberfest, so I was both nervous and excited. Thankfully, after the checks passed and the maintainer verified the update, everything worked perfectly.

What I Learned

Even though this was a small UI fix, I learned a lot from this experience:

  • How to navigate and understand a large-scale open-source project.
  • The importance of setting up and reproducing an issue before fixing it.
  • How to sign commits properly as part of open-source contribution standards.

Reflection

If I had to do it again, I’d explore more around the component structure to understand how similar labels are managed, maybe even propose a small refactor to centralize them.

This may have been a small fix, but it was my first actual code change for Hacktoberfest, and it gave me a lot of motivation to continue contributing. Now that I’ve got a better understanding of the workflow, I’m planning to look for slightly more complex issues next, maybe something involving code search or functionality improvements.

Top comments (0)