on main help sign in
ci: update golangci-lint to v2.10 and fix new issues (#2355)
commit8a9000b6bd23f0451f953282c5c59a91add8c0c8 authorAndrey Nering <andreynering@users.noreply.github.com> dateWed 4 Mar 2026, 18:33 (7 months ago) parentae1bac3
6 files changed+21−21
.github/workflows/lint.yml+1−1 internal/agent/tools/references.go+3−3 internal/agent/tools/search.go+4−4 internal/agent/tools/sourcegraph.go+8−8 internal/agent/tools/web_fetch.go+3−3 internal/ui/chat/tools.go+2−2
.github/workflows/lint.yml+1−1
@@ -8,5 +8,5 @@ jobs:
88 uses: charmbracelet/meta/.github/workflows/lint.yml@main
99 with:
1010 golangci_path: .golangci.yml
11− golangci_version: v2.9
11+ golangci_version: v2.10
1212 timeout: 10m
internal/agent/tools/references.go+3−3
@@ -176,15 +176,15 @@ func formatReferences(locations []protocol.Location) string {
176176 sort.Strings(files)
177177
178178 var output strings.Builder
179− output.WriteString(fmt.Sprintf("Found %d reference(s) in %d file(s):\n\n", len(locations), len(files)))
179+ fmt.Fprintf(&output, "Found %d reference(s) in %d file(s):\n\n", len(locations), len(files))
180180
181181 for _, file := range files {
182182 refs := fileRefs[file]
183− output.WriteString(fmt.Sprintf("%s (%d reference(s)):\n", file, len(refs)))
183+ fmt.Fprintf(&output, "%s (%d reference(s)):\n", file, len(refs))
184184 for _, ref := range refs {
185185 line := ref.Range.Start.Line + 1
186186 char := ref.Range.Start.Character + 1
187− output.WriteString(fmt.Sprintf(" Line %d, Column %d\n", line, char))
187+ fmt.Fprintf(&output, " Line %d, Column %d\n", line, char)
188188 }
189189 output.WriteString("\n")
190190 }
internal/agent/tools/search.go+4−4
@@ -191,11 +191,11 @@ func formatSearchResults(results []SearchResult) string {
191191 }
192192
193193 var sb strings.Builder
194− sb.WriteString(fmt.Sprintf("Found %d search results:\n\n", len(results)))
194+ fmt.Fprintf(&sb, "Found %d search results:\n\n", len(results))
195195 for _, result := range results {
196− sb.WriteString(fmt.Sprintf("%d. %s\n", result.Position, result.Title))
197− sb.WriteString(fmt.Sprintf(" URL: %s\n", result.Link))
198− sb.WriteString(fmt.Sprintf(" Summary: %s\n\n", result.Snippet))
196+ fmt.Fprintf(&sb, "%d. %s\n", result.Position, result.Title)
197+ fmt.Fprintf(&sb, " URL: %s\n", result.Link)
198+ fmt.Fprintf(&sb, " Summary: %s\n\n", result.Snippet)
199199 }
200200 return sb.String()
201201}
internal/agent/tools/sourcegraph.go+8−8
@@ -145,7 +145,7 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
145145 for _, err := range errors {
146146 if errMap, ok := err.(map[string]any); ok {
147147 if message, ok := errMap["message"].(string); ok {
148− buffer.WriteString(fmt.Sprintf("- %s\n", message))
148+ fmt.Fprintf(&buffer, "- %s\n", message)
149149 }
150150 }
151151 }
@@ -172,7 +172,7 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
172172 limitHit, _ := searchResults["limitHit"].(bool)
173173
174174 buffer.WriteString("# Sourcegraph Search Results\n\n")
175− buffer.WriteString(fmt.Sprintf("Found %d matches across %d results\n", int(matchCount), int(resultCount)))
175+ fmt.Fprintf(&buffer, "Found %d matches across %d results\n", int(matchCount), int(resultCount))
176176
177177 if limitHit {
178178 buffer.WriteString("(Result limit reached, try a more specific query)\n")
@@ -215,10 +215,10 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
215215 fileURL, _ := file["url"].(string)
216216 fileContent, _ := file["content"].(string)
217217
218− buffer.WriteString(fmt.Sprintf("## Result %d: %s/%s\n\n", i+1, repoName, filePath))
218+ fmt.Fprintf(&buffer, "## Result %d: %s/%s\n\n", i+1, repoName, filePath)
219219
220220 if fileURL != "" {
221− buffer.WriteString(fmt.Sprintf("URL: %s\n\n", fileURL))
221+ fmt.Fprintf(&buffer, "URL: %s\n\n", fileURL)
222222 }
223223
224224 if len(lineMatches) > 0 {
@@ -240,24 +240,24 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
240240
241241 for j := startLine - 1; j < int(lineNumber)-1 && j < len(lines); j++ {
242242 if j >= 0 {
243− buffer.WriteString(fmt.Sprintf("%d| %s\n", j+1, lines[j]))
243+ fmt.Fprintf(&buffer, "%d| %s\n", j+1, lines[j])
244244 }
245245 }
246246
247− buffer.WriteString(fmt.Sprintf("%d| %s\n", int(lineNumber), preview))
247+ fmt.Fprintf(&buffer, "%d| %s\n", int(lineNumber), preview)
248248
249249 endLine := int(lineNumber) + contextWindow
250250
251251 for j := int(lineNumber); j < endLine && j < len(lines); j++ {
252252 if j < len(lines) {
253− buffer.WriteString(fmt.Sprintf("%d| %s\n", j+1, lines[j]))
253+ fmt.Fprintf(&buffer, "%d| %s\n", j+1, lines[j])
254254 }
255255 }
256256
257257 buffer.WriteString("```\n\n")
258258 } else {
259259 buffer.WriteString("```\n")
260− buffer.WriteString(fmt.Sprintf("%d| %s\n", int(lineNumber), preview))
260+ fmt.Fprintf(&buffer, "%d| %s\n", int(lineNumber), preview)
261261 buffer.WriteString("```\n\n")
262262 }
263263 }
internal/agent/tools/web_fetch.go+3−3
@@ -60,11 +60,11 @@ func NewWebFetchTool(workingDir string, client *http.Client) fantasy.AgentTool {
6060 return fantasy.NewTextErrorResponse(fmt.Sprintf("Failed to close temporary file: %s", err)), nil
6161 }
6262
63− result.WriteString(fmt.Sprintf("Fetched content from %s (large page)\n\n", params.URL))
64− result.WriteString(fmt.Sprintf("Content saved to: %s\n\n", tempFilePath))
63+ fmt.Fprintf(&result, "Fetched content from %s (large page)\n\n", params.URL)
64+ fmt.Fprintf(&result, "Content saved to: %s\n\n", tempFilePath)
6565 result.WriteString("Use the view and grep tools to analyze this file.")
6666 } else {
67− result.WriteString(fmt.Sprintf("Fetched content from %s:\n\n", params.URL))
67+ fmt.Fprintf(&result, "Fetched content from %s:\n\n", params.URL)
6868 result.WriteString(content)
6969 }
7070
internal/ui/chat/tools.go+2−2
@@ -1337,7 +1337,7 @@ func (t *baseToolMessageItem) formatWebFetchResultForCopy() string {
13371337 }
13381338
13391339 var result strings.Builder
1340− result.WriteString(fmt.Sprintf("URL: %s\n\n", params.URL))
1340+ fmt.Fprintf(&result, "URL: %s\n\n", params.URL)
13411341 result.WriteString("```markdown\n")
13421342 result.WriteString(t.result.Content)
13431343 result.WriteString("\n```")
@@ -1354,7 +1354,7 @@ func (t *baseToolMessageItem) formatAgentResultForCopy() string {
13541354 var result strings.Builder
13551355
13561356 if t.result.Content != "" {
1357− result.WriteString(fmt.Sprintf("```markdown\n%s\n```", t.result.Content))
1357+ fmt.Fprintf(&result, "```markdown\n%s\n```", t.result.Content)
13581358 }
13591359
13601360 return result.String()