Summary
Make Zero Reference findings compact, actionable, honest about their scope, and explicit about configuration target.
Motivation
The current CodeLens repeats the symbol name in a full sentence and uses an empty command. The Toggle CodeLens command can also update the global setting when no workspace override exists, without telling the user which scope changed.
Scope
- Replace
"<symbol>" has zero references with 0 workspace references.
- Add a tooltip explaining that external and dynamic consumers might not be visible to the current language server.
- Give CodeLens and inline labels a real command.
- Present relevant actions such as refresh, ignore this declaration, and open Zero Reference settings.
- Replace the opaque toggle with explicit workspace and global enable/disable commands, or an equally clear scope selection.
- If display modes are introduced, migrate from the implementation-specific
useCodeLens setting to an enabled setting without breaking existing configuration.
- Avoid informational notification spam during normal editing.
Acceptance criteria
- Every rendered CodeLens has a meaningful command and tooltip.
- The label does not repeat the declaration name.
- Workspace commands never mutate global configuration, and global commands never create a workspace override.
- Existing
zeroReference.useCodeLens values are migrated or honored with a documented deprecation path.
- Command visibility and configuration-target behavior have Extension Host tests.
Dependencies
Summary
Make Zero Reference findings compact, actionable, honest about their scope, and explicit about configuration target.
Motivation
The current CodeLens repeats the symbol name in a full sentence and uses an empty command. The
Toggle CodeLenscommand can also update the global setting when no workspace override exists, without telling the user which scope changed.Scope
"<symbol>" has zero referenceswith0 workspace references.useCodeLenssetting to anenabledsetting without breaking existing configuration.Acceptance criteria
zeroReference.useCodeLensvalues are migrated or honored with a documented deprecation path.Dependencies
Ignore this symbolaction.