| LOW | .golangci.yml | 1 | version: "2" |
| LOW | internal/ui/anim/anim.go | 21 | const ( |
| LOW | internal/ui/chat/applyhighlight_callback_test.go | 61 | |
| LOW | internal/ui/chat/assistant_thinking_window_test.go | 21 | // threshold deterministically. Each paragraph is tagged with its |
| LOW | internal/ui/chat/assistant_thinking_window_test.go | 101 | // width and is not safe for concurrent Render calls). |
| LOW | internal/ui/chat/assistant_thinking_window_test.go | 301 | // thinking block sits in tail-window mode must NOT invalidate the |
| LOW | internal/ui/chat/assistant.go | 21 | const assistantMessageTruncateFormat = "… (%d lines hidden) [click or space to expand]" |
| LOW | internal/ui/chat/assistant.go | 41 | |
| LOW | internal/ui/chat/assistant.go | 221 | } |
| LOW | internal/ui/chat/assistant.go | 541 | return (isThinking || !isFinished) && !hasContent && !hasToolCalls |
| LOW | internal/ui/chat/assistant.go | 581 | // F8: also drop the streaming-markdown stable-prefix cache because |
| LOW | internal/ui/chat/assistant.go | 621 | return a.thinkingViewMode != thinkingCollapsed |
| LOW | internal/ui/chat/agent.go | 81 | } |
| LOW | internal/ui/chat/incremental_glamour_test.go | 61 | b.WriteByte(s[i]) |
| LOW | internal/ui/chat/incremental_glamour_test.go | 261 | }, |
| LOW | internal/ui/chat/incremental_glamour_test.go | 561 | require.Equal(t, normalizeRender(fresh), normalizeRender(out)) |
| LOW | internal/ui/chat/incremental_glamour_test.go | 641 | // ----------------------------------------------------------------------- |
| LOW | internal/ui/chat/incremental_glamour_test.go | 661 | |
| LOW | internal/ui/chat/streaming_markdown.go | 1 | package chat |
| LOW | internal/ui/chat/streaming_markdown.go | 21 | // between calls. The boundary check is therefore deliberately |
| LOW | internal/ui/chat/streaming_markdown.go | 41 | // Reset drops every cached field. After Reset the next Render call |
| LOW | internal/ui/chat/streaming_markdown.go | 181 | } |
| LOW | internal/ui/chat/streaming_markdown.go | 201 | // we have the slightest doubt we return -1 and let the caller fall |
| LOW | internal/ui/chat/streaming_markdown.go | 241 | } |
| LOW | internal/ui/chat/streaming_markdown.go | 341 | // prefixHasOpenHazard reports whether prefix contains any of three |
| LOW | internal/ui/chat/streaming_markdown.go | 361 | // |
| LOW | internal/ui/chat/streaming_markdown.go | 381 | // the prefix forces -1. Suffix-side reference detection is |
| LOW | internal/ui/chat/streaming_markdown.go | 421 | } |
| LOW | internal/ui/notification/notification.go | 1 | // Package notification provides desktop notification support for the UI. |
| LOW | internal/ui/dialog/common.go | 61 | type RenderContext struct { |
| LOW | internal/ui/common/markdown.go | 21 | |
| LOW | internal/ui/common/markdown.go | 101 | |
| LOW | internal/ui/common/capabilities.go | 21 | // Columns is the number of character columns in the terminal. |
| LOW | internal/ui/list/list.go | 41 | // the keys that govern invalidation (width and version). The |
| LOW | internal/ui/list/list.go | 221 | } |
| LOW | internal/ui/list/item.go | 1 | package list |
| LOW | internal/ui/list/item.go | 21 | type Item interface { |
| LOW | internal/ui/list/item.go | 41 | // Versioned is a tiny embeddable helper that satisfies Item.Version() |
| LOW | internal/ui/model/chat_draw_cache_test.go | 261 | want := freshStyledRender(u.chat.list.Render(), w, h) |
| LOW | internal/ui/model/chat.go | 61 | pendingClickID int // Incremented on each click to invalidate old pending clicks |
| LOW | internal/ui/model/chat.go | 141 | |
| LOW | internal/cmd/run.go | 301 | // streaming SSE events into a final, complete stdout for `crush run`. |
| LOW | internal/cmd/run.go | 361 | s.read[msg.ID] = len(content) |
| LOW | internal/cmd/root.go | 161 | // copied from cobra: |
| LOW | internal/cmd/clientserverrace/race_test.go | 21 | "sync/atomic" |
| LOW | internal/config/resolve.go | 81 | // |
| LOW | internal/config/resolve.go | 101 | if err != nil { |
| LOW | internal/config/config.go | 101 | // The original API key template before resolution (for re-resolution on auth errors). |
| LOW | internal/config/config.go | 321 | } |
| LOW | internal/config/config.go | 361 | return nil, fmt.Errorf("arg %d: %w", i, err) |
| LOW | internal/config/config.go | 381 | return "", nil |
| LOW | internal/config/config.go | 421 | if v == "" { |
| LOW | internal/config/config.go | 461 | // sanitized by ResolveValue and is wrapped with %w so errors.Is/As |
| LOW | internal/shell/dispatch_windows_test.go | 1 | //go:build windows |
| LOW | internal/shell/run.go | 21 | // a shell alias. |
| LOW | internal/shell/run.go | 41 | // each command reaches the exec layer. nil disables blocking entirely. |
| LOW | internal/shell/dispatch.go | 21 | ) |
| LOW | internal/shell/doc.go | 1 | package shell |
| LOW | internal/shell/doc.go | 21 | // shell := shell.NewShell(nil) |
| LOW | internal/shell/jq.go | 201 | // - between readers (before opening the next file / consuming stdin); |
| 49 more matches not shown… |