OSD600 - Lab2
Hyunjin Shin (Jin)
Posted on September 19, 2024
Link to Anh's repo where I made a pull request
Link to Forked Repo on my github repo.
Link to the pull request That I made
Link to Issues on Anh's repo
Link to the Pull Request that I recieved from Arina Kolodeznikova
This week, I created a pull request to Anh's Repo. I implemented a partial feature of --token-usage option, with which the tool will display the token usage.
There was a huge change in his code from last week. He refactored his code, and changed quite a lot of things. Therefore, I had to throughly read and test his code from the begining. From testing and reading, I found quite a few of issues and then I created issues on his repo.
After that, I started working on implementing the new feature; however there was some problem. Since his current code has many bugs, I could complete my code. I was a little bit confused at what I should do. I was like "Should I fix all the bugs and then implement my part?" or "Should I just implement my part, but not integrate into his other codes and then let him fix other issues(some of them are just bugs and some of them are more about how the tool should behave) and integrate the part?"
As I didn't fully understand of his idea of what tool he wants to build, I decided not to fix other issues and just to create issues and then implement the new feature and make a pull request, so that he can use my code later.
While I was working on this lab, I had some questions. First, I made a mistake. I started working on implementation before I sync the forked repo. And then, I realized it's different from his latest commit. Then, I synced it and pulled it again and started working again. The question that came to my mind was "What if while I am working on a pull request(some changes, or bug fixes, or new feature), the owner make so huge change on his code that my pull request gets kind of too different to merge?"
I think the more people work on one project, this type of problem will be more frequent. I think it could be very confusing and make development more complicated. I wonder if there is a certain rule or custom for this and what I should do in those situations.
As for the pull request to my repo, Arina contributed. Her first pull request was almost perfect and the code style was good. There was only a tiny thing to fix. She printed the token usage with stdout instead of stderr; so, I left a comment about it and she fixed it and updated the pull request again. Then, I checked it and merged it into my main branch. And also she let me know that there is one issue with my ai. My tool currently only supports openrouter api, and for some reason, it doesn't give the token usage information. She kindly checked with other APIs and they gave the token usage correctly. Therefore, I am going to support other LLM models for my tool.
Posted on September 19, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.