To have it silently just start adding marketing copy to git commit messages is pretty bad. To have that added text not be visible to the user in the UI so they can remove it before commit is just much worse.
This kind of thing being released speaks to a greater disfunction over there. Not a good look at all and I am not a Microsoft or AI hater. But my commit messages are not where you move fast and break things
The bad news is - where else have this happened in VS Code?
- A happy user of (n)vim
I noticed that as soon as you make a bug report/feature request on VSCode's repo, you instantly get someone's OpenClaw agent with an automated pull request that sometimes wants to change defaults in the main codebase
Looks like AI is really trigger-happy with that, with zero understanding or care that there's thousands of users affected and it's not just one individual's settings.json
Also, the hallucinated PR does not necessarily address the original issue whatsoever, just like this PR. It should have functionality to detect AI-authored code, but whoever made the PR skipped actually doing the hard work and just changed a default to always on, exactly the kind of misunderstanding you see with OpenClaw shotgun PRs
(Meaning the devs use it themself, that is great incentive to fix things)
This is one of the problems, but it is not only one. To be better, should be:
1. It should be visible in the UI for entering the commit message, to make it clear what it is doing.
2. It should not add such a thing if the Copilot is disabled. (It is mentioned by dmitriv and would hopefully be fixed soon enough)
I do not use Copilot nor any other LLMs nor VS Code, but if the problems are corrected then I think the feature would probably be reasonable.
How else is a poor programmer gonna hit their KPIs and get that promo?
What does that even mean? The git log exists. Do you mean they should shove the entire git log in the face of every user on every update?
Obviously this change was a massive fuckup, but that sentence makes absolutely no sense.
The outlined story feels unfortunately very believable to me.
Teams need to push out the most number of features, and nobody stops even for a second to think about how a feature might affect other flows or other users not in the feature request.
It might have been quickly reviewed to check if the code does what it needs to do (add the coauthor note).
Do you think reviewers will think about unwanted effects, when they need get back to feeding their own poorly thought out and underspec’d features to their LLMs?
This basically invalidates the entire premise that it was an innocent mistake. It's impossible for me to believe that you actually thought that people wouldn't care about 100% of their commits being attributed to Copilot even when it was never used. Either you're misconstruing what you caught with the testing beforehand or your entire development process is tainted, because there's no way that a non-evil corporation would see this default behavior and think that people would be fine with it. It seems far more likely you just thought you could get away with it.
I think many people agree here.
> This seems hard for me to believe. I expect more from Microsoft.
Those are some baseless expectations given the entire company's history
What metric did Microsoft use to assess that VS Code users "expect" their commits to have unsolicited messages added to them?
> Obviously, it should not be on when disableAIFeatures is on and it should not be reporting changes that were not done by AI.
Did you discuss adding these messages with your legal department?
What is Microsoft's position on adding such authorship statements to the code Microsoft did not author?
Or is Microsoft stating that using LLM assistants makes Microsoft a co-author of the code?
Does Microsoft have copyright claims on the code if LLM assistants are used at any time during its creation?
[0]https://github.com/microsoft/vscode/pull/313725/commits/1e70...
> "feel free to reach me directly (my alias @microsoft.com) or"
- a project manager vibe-coded the change without thinking it through at all
- the PR was reviewed by an LLM
- an actual engineer gave LGTM without really reviewing the changes, trusting the LLM
Did I get this right?
The PMs vibe-coding and having no idea what they're doing isn't even the main issue (although it is pretty bad).
The main issue is: how are the actual engineers supposed to "review" the slop? They probably report to the same PM or are at below in the org chart and might be evaluated by them. Not just at MS, but any company.
Such a conflict of interest would be detrimental to quality anywhere. You wouldn't build a bridge like this, nor should you software.
The docs for the function to interpret trailers even says this explicitly: https://git-scm.com/docs/git-interpret-trailers
> Add or parse structured information in commit messages
Anyone with a bit of software experience knows it’s easy to miss things when you are doing your own tasks + context switching + giving reviews. We should exercise kindness and empathy instead of projecting evil intentions.
Funny how these "mistakes" only seem to happen in ways that align with the agenda of the supposedly non-evil corporation.
Pretty sure no one thought “let’s add a lie to every commit and hopefully no one minds. Free Marketing yay!” at Microsoft.
I am not a legal, so can't comment on legal things. However, I have already responded elsewhere here that this feature has nothing to do with licensing or ownership and was added for those that want the attribution. I understand the desire to see anything Microsoft as bad and evil, but we are really just trying to make a better experience.
I'll respond to the third one, thanks!
> are you interested in my opinion on (n)vim?
The first comment is three short lines. One of them is the extremely reasonable and relevant question of where else this has happened in VSCode.
And you think that the commenter is wondering about your opinion on (n)vim? That is what you think they are interested in?
Could you just, like, ignore the signature if it is distracting you from the only other line that has a question in it?
Stop making HN a worse place for everyone by being unnecessarily hostile. (and this comment is only mildly directed at you but rather at a bunch of people in this thread)
> As folks mentioned here - many similar tools do this as well.
It's really doubtful they have the same behavior people are complaining about here: namely including the authored by Copilot statement when it wasn't used (or even enabled).
That’s pretty close to “included when it wasn’t used (or even enabled)” since it’s opt-in by default and you have to explicitly say no. It’s not even clear where to turn it off, I just rely on the AI to figure out not to do it.
That is a very different case to VS Code which is something you can in fact use without Copilot.
(Both is not fine with me)
Here's one:
I think a senior sysadmin needs to sit you down in their office and have a very serious talk with you about the responsibility that comes with writing code other people run. I am serious. We used to have these talks with everyone who got sudo access. You shouldn't be shipping code if you don't understand the trust that is required of people in your position.
This isn't just about this "feature" being active when AI features are disabled, the way you mis-implemented this has resulted in it modifying the commit message with the user even seeing it! That is malicious behavior, not an innocent little feature "to make life easier".
I've fully switched off of VS Code to Kate now, which is faster and better behaved in most cases anyway. Bye.
This should not be vibe-coded by someone who has absolutely no idea about any of these things.
Seethe
Only callous disregard for your users
> many similar tools do this as well
But since we have normalised that, it’s okay?
And another thing is, why was there absolutely no pushback from your part on any of the issues with the original PR, and why it was merged within hours in that state?
Does anyone (or any team) have ownership of the extensions/git/package.json file?
Literally who?
I simply do not believe you
I think the default to on should also be reconsidered regardless. The assessment (co-authored by AI) may be valid but the assumption the user wants that advertising is exactly that, an assumption, and a dubious one at that.
Then make it an extension, not a IDE-behaviour thing. Is that so complicated, so difficult?
I'd argue that this was extremely non-urgent and the fact that this got rushed so sloppily is a giant red flag about the priorities of you and your team. You asked about constructive criticism, and yet you're also acting like this is a one-off innocent mistake by only addressing what you've done to roll this back for now and address the immediate issue. I don't buy the premise that we could trust that this was a mistake made in good faith when it's something that you clearly should have known people would be so upset about if you got it wrong.
Can you expand on this? Who "expects" their code editor to lie about using Copilot?
To me, “let’s add false attribution to every commit by default without informing the user” falls squarely into that category. I don’t think I’ve ever worked in an environment where something like that wouldn’t have been red-flagged in three seconds by anyone who took even a casual glance. I’d honestly be embarrassed if such a proposal even made it into a public pull request for my organization, nevermind that pull request getting merged.
The idea was to track AI-only changes and add the trailer when such changes were detected AND the setting was enabled. Obviously, we didn't want to attribute all changes to AI. There is a bug in change detection (which slipped through testing), which led to even non-AI changes being tracked. And thus we have this problem.
The PR linked here wasn't even implementing the feature, it was changing the default for the setting.
In another comment you say you caught it in testing and didn't think it needed fixing, which is it?
Please elaborate on what "similar tools" claim that commits are co-authored by AI when the AI features are all turned off. You're trying to defend the theoretically correct version of this that you didn't make, not the actual version you did make.
> I am open to any (constructive) comments/suggestions
It's hard to take this seriously; you know exactly what you did wrong here and what you should have done instead. Testing that this doesn't happen when Copilot was not used is extremely trivial; if you're not lying about it being unintentional, the fact that it didn't occur to anyone to do it still says more than enough about what the priorities are here. At absolute best, the priorities of you and your team are so fundamentally wrong that it's impossible to trust any of you going forward.
- It wasn't our intention
- Our users asked for it [you'll have to take our word for it]
- Everyone else is doing it anyway
- Statement that I am reasonable and will be co-operative with the community but with conditions
That's a bingo!
As a result I’ll be uninstalling vscode from all my machines, I’m tired of disabling things in vscode I didn’t ask for especially in regards to AI.
There are open source tools that clearly respect users more and have a track record of not doing these kinds of stupid things.
Be better.
But I'm an idiot every day too, so I can relate. We can only learn from these mistakes, keep it up!