- Fix getCoverageSummary() returning early from a task that had coverage
but no matching coverageFiles, preventing subsequent tasks from being
checked
- Use URI.file().fsPath instead of hardcoded POSIX path strings in test
assertions for cross-platform compatibility
(Commit message generated by Copilot)
- Extracts 6 pure helper functions (buildTestRunSummary, getCoverageSummary,
getOverallCoverageSummary, getFileCoverageDetails, mergeLineRanges,
getFailureDetails) as module-level exports for better testability
- Makes RunTestTool class public to allow external instantiation in tests
- Adds comprehensive 44-test suite covering all helper functions and tool behavior
- Tests include coverage details formatting, failure message handling, test result
summarization, and line range merging logic
- Uses upcastPartial<T>() for type-safe mock creation without any type casts
(Commit message generated by Copilot)
* Add inline hover actions to AI Customization tree items
Add menu-contributable inline action buttons that appear on hover for
file items in the Chat Customization tree view. Actions registered in
the 'inline' menu group appear as icon buttons on hover/focus/selection.
New actions:
- Delete: removes customization file with confirmation dialog
- Copy Path: copies file path to clipboard
Existing actions (Open, Run Prompt) are preserved in context menu and
Open is also shown as an inline hover button.
Follows the standard VS Code pattern used by SCM, Explorer, and other
tree views: ActionBar in tree renderer populated from IMenuService with
the 'inline' group filter.
Fixes part of microsoft/vscode#297343
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Add inline hover action buttons to Chat Customizations management editor
Add an ActionBar to AICustomizationItemRenderer populated from the
AICustomizationManagementItemMenuId menu's inline group. The Delete
action (trash icon) now appears as a hover button on each list item.
The .item-right container already had CSS opacity transitions for
hover visibility — this commit populates it with menu-driven actions.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Address review feedback: safe delete, non-file URI handling, dedup context menu
- Delete action: guard against non-file URIs, use useTrash + recursive
- Copy Path: fall back to uri.toString() for non-file schemes
- Include storage in tree view renderer context for when-clause filtering
- Fix duplicate Delete in management editor context menu by using
getContextMenuActions with 'inline' filter instead of getFlatContextMenuActions
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Refresh management editor list after file deletions
The list only subscribed to onDidChangeCustomAgents and
onDidChangeSlashCommands, which don't fire for all prompt types.
Subscribe to fileService.onDidFilesChange for deletions so the list
refreshes immediately after using the inline delete button.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* reset
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* plugin system: add support for rules ('instructions') from Open Plugin spec
- Adds IAgentPluginInstruction interface and instructions property to IAgentPlugin
observable stream, following the same pattern as commands/skills/agents
- Implements _readRules() method in agentPluginServiceImpl to discover rule files
(.mdc, .md, .instructions.md) from the rules/ directory and supplemental paths
defined in the plugin manifest. Uses longest-match-first suffix stripping to
correctly derive rule names.
- Wires observeComponent('rules', ...) in _toPlugin() to integrate manifest
'rules' field configuration with the discovery mechanism
- Adds plugin instructions to the prompt file discovery system via watchPluginPromptFilesForType,
making instructions available alongside filesystem-discovered instructions
- Includes comprehensive test coverage for rule discovery patterns, suffix stripping,
deduplication, and reactive observable integration
(Commit message generated by Copilot)
* comments