microsoft/typescript-go · error

completion item data is nil

Error message

completion item data is nil

What it means

Error "completion item data is nil" thrown in microsoft/typescript-go.

Source

Thrown at internal/ls/completions.go:5380

	// Auto-import that comes attached to a class member snippet
	SourceClassMemberSnippet = "ClassMemberSnippet/"
	// A type-only import that needs to be promoted in order to be used at the completion location
	SourceTypeOnlyAlias = "TypeOnlyAlias/"
	// Auto-import that comes attached to an object literal method snippet
	SourceObjectLiteralMethodSnippet = "ObjectLiteralMethodSnippet/"
	// Case completions for switch statements
	SourceSwitchCases = "SwitchCases/"
	// Completions for an object literal expression
	SourceObjectLiteralMemberWithComma = "ObjectLiteralMemberWithComma/"
)

func (l *LanguageService) ResolveCompletionItem(
	ctx context.Context,
	item *lsproto.CompletionItem,
	data *lsproto.CompletionItemData,
) (*lsproto.CompletionItem, error) {
	if data == nil {
		return nil, errors.New("completion item data is nil")
	}

	program, file := l.tryGetProgramAndFile(data.FileName)
	if file == nil {
		return nil, fmt.Errorf("file not found: %s", data.FileName)
	}

	checker, done := program.GetTypeCheckerForFile(ctx, file)
	defer done()
	return l.getCompletionItemDetails(ctx, program, checker, int(data.Position), file, item, data), nil
}

func getCompletionDocumentationFormat(ctx context.Context) lsproto.MarkupKind {
	return lsproto.PreferredMarkupKind(lsproto.GetClientCapabilities(ctx).TextDocument.Completion.CompletionItem.DocumentationFormat)
}

func (l *LanguageService) getCompletionItemDetails(
	ctx context.Context,

View on GitHub (pinned to 1bcfa18d79)

When it happens

Trigger: Thrown at internal/ls/completions.go:5380 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of microsoft/typescript-go@1bcfa18d79 (2026-08-16). Data as JSON: /api/errors/774d09cdf8260b15. Report an issue: GitHub.