gopls adds interactive refactoring, and proposes it as an LSP standard
Go editor refactorings can now ask follow-up questions through multi-step dialogs, a capability the Go and Dart teams built as an open LSP extension for any language.
Go’s language server, gopls, can now ask questions mid-refactor instead of guessing. The Go team, working with the Dart team, added this as a new Language Server Protocol capability rather than a Go-only feature, so any editor or language server can adopt it.
The examples in the post: adding struct tags now opens a dialog to pick which tags to add, json, yaml, db, followed by a second dialog for naming convention, camelCase, snake_case or PascalCase. Implementing an interface gets a searchable dialog with autocomplete for picking the type. Moving a declaration to another file opens a file picker and updates references and imports automatically. It needs gopls v0.24.0 and the VS Code Go extension v0.56.0.
Add struct tags → [ ] json [ ] yaml [ ] db → Next
Naming convention → camelCase / snake_case / PascalCase → Apply
Why it matters: most LSP refactorings today are all-or-nothing: the server picks defaults and you clean up after. A standard for multi-step dialogs means editor-agnostic refactorings that actually ask what you want, and since it is proposed as an open LSP capability rather than a VS Code or Go-specific hack, other language servers can pick it up without reinventing it.
The caveat: today it only ships in gopls and VS Code’s Go extension. Other editors and language servers need to implement the same LSP extension before it works there too.