chore(lint): drop all //nolint:ireturn directives via allow-list · Entire
chore(lint): drop all //nolint:ireturn directives via allow-list
f658b69→main·toothbrush·3w ago·7 files·+10 added/-8 removed
ireturn directives fought with gofmt/nolintlint: depending on the golangci-lint version the directive was either flagged as unused or required again. Keep the linter enabled (still guards new code) but move the 7 inline directives into the .golangci.yaml allow-list: bubbletea/v2.Msg, huh/v2.Theme, checkpoint.CommittedStore, checkpoint.TemporaryStore. summarize.Generator was already allowed.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com
Sessions
b4ce64fa3570View transcript
Changes
7
M.golangci.yaml+4
cmd/entire/cli
Mactivity_tui.go+1/-1
Mattach.go+1/-1
checkpoint
Mopen.go+1/-1
strategy
Mmanual_commit.go+2/-2
Mmanual_commit_condensation.go+1/-1
uiform
Muiform.go-2
113 unmodified lines
114
115
116
117
118
119
120
121
2 unmodified lines
124
125
126
127
128
129
130
131
113 unmodified lines
- empty
- stdlib
- charm.land/bubbletea/v2.Model
- charm.land/bubbletea/v2.Msg
- charm.land/huh/v2.Theme
- grpc.DialOption
- github.com/entireio/cli/cmd/entire/cli/summarize.Generator
- github.com/entireio/cli/cmd/entire/cli/agent..+
2 unmodified lines
- github.com/entireio/cli/cmd/entire/cli/review/types.AgentReviewer
- github.com/entireio/cli/cmd/entire/cli/review.SynthesisProvider
- github.com/entireio/cli/cmd/entire/cli/checkpoint.CommittedReader
- github.com/entireio/cli/cmd/entire/cli/checkpoint.CommittedStore
- github.com/entireio/cli/cmd/entire/cli/checkpoint.TemporaryStore
- github.com/entireio/cli/cmd/entire/cli/strategy.Strategy
- github.com/entireio/cli/internal/entireclient/tokenstore.store
- github.com/go-git/go-git/v6/x/plugin.Signer
M.golangci.yaml+4
69 unmodified lines
70
71
72
73
73
74
75
76
69 unmodified lines
return nil
}
func (m activityModel) fetchData() tea.Msg { //nolint:ireturn // bubbletea Cmd signature requires tea.Msg return
func (m activityModel) fetchData() tea.Msg {
activity, commits, err := fetchActivityData(m.ctx, m.client)
if err != nil {
return activityErrMsg{err: err}
}
Mcmd/entire/cli/activity_tui.go+1/-1
61 unmodified lines
62
63
64
65
65
66
67
68
61 unmodified lines
// openAttachStore opens the committed store for the resolved topology. refs is
// passed explicitly so attach preserves PrimaryAsRead() pinning.
func openAttachStore(ctx context.Context, repo *git.Repository, refs cpkg.CommittedRefs) (cpkg.CommittedStore, error) { //nolint:ireturn // committed store capability preserves attach's read-ref override
func openAttachStore(ctx context.Context, repo *git.Repository, refs cpkg.CommittedRefs) (cpkg.CommittedStore, error) {
stores, err := cpkg.Open(ctx, repo, cpkg.OpenOptions{Refs: &refs})
if err != nil {
return nil, fmt.Errorf("open checkpoint store: %w", err)
}
Mcmd/entire/cli/attach.go+1/-1
54 unmodified lines
55
56
57
58
58
59
60
61
54 unmodified lines
// Temporary returns the git-backed temporary shadow-branch store.
func (s *Stores) Temporary() TemporaryStore { return s.temporary } //nolint:ireturn // temporary store capability is the abstraction boundary
func (s *Stores) Temporary() TemporaryStore { return s.temporary }
// Refs returns the resolved committed-ref topology.
func (s *Stores) Refs() CommittedRefs { return s.refs }
Mcmd/entire/cli/checkpoint/open.go+1/-1
51 unmodified lines
52
53
54
55
55
56
57
58
3 unmodified lines
62
63
64
65
65
66
67
68
51 unmodified lines
// topology. Writes target refs.Primary; reads target refs.Read. The strategy's
// blob fetcher is wired in so reads can fetch blobs on demand after a treeless
// fetch.
func (s *ManualCommitStrategy) getCheckpointStore(ctx context.Context, repo *git.Repository) (checkpoint.CommittedStore, error) { //nolint:ireturn // committed store capability is the abstraction boundary
func (s *ManualCommitStrategy) getCheckpointStore(ctx context.Context, repo *git.Repository) (checkpoint.CommittedStore, error) {
stores, err := s.getCheckpointStores(ctx, repo)
if err != nil {
return nil, err
3 unmodified lines
// getTemporaryStore returns the git-backed shadow-branch store with the
// strategy's blob fetcher wired in.
func (s *ManualCommitStrategy) getTemporaryStore(ctx context.Context, repo *git.Repository) (checkpoint.TemporaryStore, error) { //nolint:ireturn // temporary store capability is the abstraction boundary
func (s *ManualCommitStrategy) getTemporaryStore(ctx context.Context, repo *git.Repository) (checkpoint.TemporaryStore, error) {
stores, err := s.getCheckpointStores(ctx, repo)
if err != nil {
return nil, err
Mcmd/entire/cli/strategy/manual_commit.go+2/-2
532 unmodified lines
533
534
535
536
536
537
538
539
532 unmodified lines
// The return type is the summarize.Generator interface rather than the concrete
// adapter pointer so callers can't accidentally hold a non-nil interface that
// wraps a nil pointer (the classic Go nil-interface footgun).
func buildSummaryGenerator(ctx context.Context) summarize.Generator { //nolint:ireturn,nolintlint // interface return is intentional for provider abstraction and nil-safety; nolintlint flagged as "unused" under some linter versions but ireturn fires in others
func buildSummaryGenerator(ctx context.Context) summarize.Generator {
s, err := settings.Load(ctx)
if err != nil {
// Warn (not Debug): this is the auto-summarize hot path on every commit.
Mcmd/entire/cli/strategy/manual_commit_condensation.go+1/-1
19 unmodified lines
20
21
22
23
24
23
24
25
19 unmodified lines
// Theme returns Entire's standard huh theme.
//
//nolint:ireturn // huh.Theme is an interface in v2
func Theme() huh.Theme {
return huh.ThemeFunc(huh.ThemeDracula)
}
Mcmd/entire/cli/uiform/uiform.go-2