-
Notifications
You must be signed in to change notification settings - Fork 0
fix missing slash command candidates
Date: 2026-07-18 Tracking: Issue #51, sub-issue #58
The current slash-command parser, presentation view model, and Remote UI
notification path correctly produce eight candidates for /. The most likely
cause of the missing list is a stale Experimental Instance registration using
the former extension identity alongside the current registration.
The fix removes only the stale registration, preserves the current extension and other Experimental Instance settings, and adds regression coverage so the obsolete identity cannot return in packaged or deployed artifacts.
- Remove only the former extension registration and deployment folder after Visual Studio and related extension hosts have stopped.
- Centralize the internal extension identifier, publisher, display name, and version source used by extension metadata and safe startup diagnostics.
- Log only fixed extension identity values. Do not log prompt text, slash-command arguments, local paths, or raw app-server payloads.
- Correct stale identity examples in the design documentation and document how to diagnose and remove duplicate Experimental Instance deployments.
- Record the implementation and validation result in the task log.
- Preserve asynchronous composer echo suppression, the nested slash-command presentation context, and raw embedded Remote UI XAML.
If the issue still reproduces after a clean current deployment, update the candidate collection in a batch and make the list selection binding one-way. Change layout only if UI Automation proves that candidate elements exist but are clipped outside the visible tool window.
- Verify
/opens eight candidates and/refilters to/reasoningand/review. - Verify empty input, normal text, non-leading slash text, and
//close the list. - Exercise Remote UI serialization and notification dispatch for the child view model, collection changes, selection, and open state.
- Verify extension metadata, the VSIX manifest, and deployment metadata use the current identifier and publisher and exclude the former identifier.
- Build with zero warnings, then run the complete test suite without rebuilding.
- Inspect the final VSIX manifest, assembly, embedded XAML, and deployed assembly identity.
- Manually verify keyboard and pointer interactions in a clean Experimental Instance, including narrow layouts, dark and high-contrast themes, and increased display scaling.
- No public API or package changes.
- Keep the out-of-process Extensibility SDK deployment model.
- Do not add legacy VSSDK deployment or launch properties.
- Source, comments, tests, documentation, and commit messages remain in English.