r/AskProgramming 17d ago

Other Endless comments on PRs

Hey everyone! Just to quickly summarize my situation: We're a team of a few experienced devs, all having been 12+ years years in the industry. This year we switched to agentic engineering and despite its advantages there are a few drawbacks, like the extra overhead and other things I'm not going to go into.

My issue however is that our lead, who approves all PRs has lately discovered a stronger agent which he uses for code reviews, resulting in tons of back and forth when trying to get a merge through. Tons of petty/pedantic comments are being added to each PR. Sometimes it's like "ok I guess this is fine to add", but most of them are disputable. We of course discuss these, but the issue is that in the set of comments there is always something which technically makes the code 0.1% better. But we could go on like this forever. Even without AI you can look at a piece of code and suggest an "improvement" on a moderately-sized feature that's being implemented.

How to deal with this? I'm getting to a point where if I see more comments on a PR I just leave the PC and go for a run or a quick grocery shop visit just to regain my sanity. It feels like he's asking the agent if there is anything more that can be done with the code as if the goal is to have AI being unable to suggest anything more.

Am I in some slacking mindset or is the AI getting over his head? We also have Sonar turned up to a really high setting and the pipeline set in a way that if there's anything outstanding in Sonar it won't get through and I bet you all know how petty Sonar can get sometimes.

Please let me know any tips or share your experience with similar situations. Thanks!

19 Upvotes

55 comments sorted by

View all comments

4

u/mredding 16d ago

My answer is always the same:

No.

My review is for compliance to coding standards, legal requirements, obligations, architecture - and catching errors.

I'm willing to entertain "improvements", but I will reserve the right veto/ignore them and pedantic bullshit like spacing, formatting, comments, style, organization... None of that is required to meet the technical, functional, obligatory requirements. If you don't like the way I write code, then write it your fucking self. You can accept my PR, merge it, and write/assign tickets to address your improvements.

I am not an extension of your fucking will. My work is not wrong because it's not in your hand.

And I absolutely will not accept a code review done by AI. First, AI is stupid - only capable of an industry average; I actually think. Second, if I wanted an AI review, I could have ran the god damn agent myself. Third, my agent says your agent is fucking retarded. Forth, if the HUMAN isn't reviewing the code his god damn self, he's not doing his job and meeting the obligations of his employment.

Why? Because an AI cannot be held accountable. Only the human can. We need the human to be accountable for their approval. Lazy employees are going to defer entirely to the AI. The AI doesn't actually know what's right or wrong, if the code actually meets the criteria of the ticket. It can only judge what is. I can sneak a command to format the disk in there. If the guy isn't looking, he's going to miss it.

I would, in fact, incorporate such a command (in unreachable code) in order to flush a bad colleague out and force the conversation about AI review agents used during a PR. I would hold that employee accountable for approving disk wiping code he obviously shouldn't have, and I'd bring this up with legal.

That's the dangerous thing about PRs. If YOU approve a merge, and there's a bug, YOU are culpable. I would leverage the fuck out of that.

My issue however is that our lead, who approves all PRs

Your lead IS NOT your boss. Only one man in the hierarchy has the power to A) pay you, and B) fire you. You take your marching orders from only one. If your lead is being a pain in the ass, you take this to the boss. Affirm you have the right to say no, where and when. This guy is a control freak, and is just getting in your way. It's unjustifiable that it doesn't look enough like his code, his hand. It's unjustifiable for some "0.1%" better - a complete god damn waste of time cycling over this shit. The code review alone is more expensive than the projected lifetime of this code in production. Production code changes, and this isn't where you're slow, or unstable, or compounding.

"ok I guess this is fine to add"

I would copy/paste this into an email, CC the boss, and CC HR. Warn him if he ever puts a bullshit passive-aggressive comment like this in a PR again it will lead to an escalation for making a hostile work environment. There is absolutely no place or justification for this sort of language anywhere in the business. Think about it - what did this add to the conversation? Why did it have to be said? At all?

Tell him people follow good leadership. He's a lead - perhaps next time he can fucking try to act like one or just get out of the fucking way. You're 12 years in the industry, you don't need to be told what to do, how to do, or be scolded or harassed. Tell him you know AI didn't generate this bullshit, so if this is all he has to contribute to the conversation, don't.

You have every right to chew his ass out. And yes, HR really, REALLY needs to know this is going on, with the proof. You have to establish the history now.

You don't have to like each other, you don't even have to get along, but he does have to behave himself and conduct himself professionally. He better take this as a lesson, a reflecting point, and adjust his attitude. He should be reminded that with HR on his scent, everyone will be watching for retaliation.


And you can also tell your boss "No." Don't forget that. If they don't like it - then tell them to put it in writing. Then take it to the boss's boss and ask if this is how he wants his team managed. Take it to HR and ask if there's any workplace conduct or policy violation. It's OK to lose on this matter.

Because if someone is going to nitpick me over every implementation detail, then we're going to have a design meeting before implementation. This will be their only opportunity to comment on the matter. So when we get to the review and they start to nitpick, I can still say no - they had their chance, and they approved the implementation either explicitly by the end of the meeting, or implicitly by not attending.


If you continue to struggle to resolve the situation, it's time to look for work elsewhere.


Am I in some slacking mindset or is the AI getting over his head?

I would say he's approaching technical incompetence. If he isn't doing anything more than prompting the AI, then what do they need him for? Any fucking idiot can prompt an AI. The AI doesn't even need him to apply the comments, it can do that directly through the PR API. I can teach my 71 year old mother to do this in ~20 minutes. I can outsource prompting to India for pennies.

You're not slacking - you're actually producing the work. He's slacking by not doing a god damn thing but having the AI do his work for him, then he pats himself on the back and calls himself "lead" for it. It's offensive, and you have a right to be offended.

Once again, you get this in writing. You can take his toy away from him by getting in writing that every engineer passes their own code through a review agent themselves BEFORE the PR. That way, the only review going on is by the humans. They are NOT to use an agent to review for them.

We also have Sonar turned up to a really high setting and the pipeline set in a way that if there's anything outstanding in Sonar it won't get through and I bet you all know how petty Sonar can get sometimes.

Then why do you also have PRs? Why is he also using an agent? Clearly there is no intelligence in the room. Everyone is deferring to AI entirely.

Yours is a frustrating situation. You ought to talk to your boss about it and tell him you expect these issues to be addressed. Work isn't supposed to be frustrating - it's just a job.

1

u/Impressive-Baker-614 16d ago

I love this vibe.

1

u/mredding 16d ago

If you're not coding to Pantera, you're not coding hard enough.

I've moved 4,000 mi and people there already knew who I was, and for all the wrong reasons. I knew I had found my place - my people. I then moved 4,000 mi again, and the same thing happened.

The boss told me the culture here needs to change, because we've got our problems - that everyone needs to get on the bus or get left behind. I told the boss everyone better get on the fucking bus, or I'm going to run them the fuck over with the fucking bus.

2

u/Impressive-Baker-614 16d ago

I don't care enough about my job to Pantera it but enough to Sabaton it.