Plugin details do not list bundled canvas extensions or their runtime status
- 主要语言
- 没有语言数据
- 星标
- 2.1k
- 派生
- 153
- PR 合并指标
- 30 天内没有已合并 PR
描述
### Short summary
The plugin details page lists bundled skills but doesn't list canvas extensions, even when a plugin-provided canvas is installed and running.
### Affected version or release
GitHub Copilot app 1.1.10.
### Installation context
A user-scoped marketplace plugin declared both skills and a canvas extension.
### What happened?
A plugin declared skills and a canvas extension in its manifest. The installed plugin directory contained both component types.
The extension loaded successfully, registered its tool, and opened a working canvas whose runtime source was identified as the plugin.
However, the plugin details page displayed only the skills. It contained no extension or canvas section and provided no way to discover that contribution.
Extension failures are also omitted. When an equivalent standalone user extension registered the same tool first, the plugin copy failed with:
```text
External tool name clash: already registered by another connection
```
The plugin continued to appear fully **Enabled**, with no warning that a bundled component had failed.
### Steps to reproduce
1. Open a valid installation link for a test marketplace plugin that declares at least one skill and one canvas extension.
2. Complete the installation.
3. In the plugin view opened by the installation flow, select the newly installed plugin to open its details.
4. Confirm that the extension reaches its ready state.
5. Invoke its tool and open the canvas.
6. Observe that the plugin details page lists the skills but not the canvas extension.
7. Install an equivalent user-scoped extension that registers the same external tool.
8. Reload extensions.
9. Observe that the plugin extension fails while the plugin still appears fully enabled.
### Expected behavior
Plugin details should include an **Extensions** or **Canvases** section showing every bundled extension and its runtime status.
Statuses should distinguish:
- Ready
- Disabled
- Shadowed
- Failed
If a bundled extension fails, the plugin should show a warning or partial-failure state with the error and conflicting source.
### Additional context
Related issues:
- https://github.com/github/app/issues/2506 concerns plugins and canvases missing from the global Extensions view.
- https://github.com/github/app/issues/1187 broadly requests more complete plugin installation details.
- https://github.com/github/app/issues/2073, https://github.com/github/app/issues/2158, and https://github.com/github/app/issues/2794 concern canvas discovery or availability.
This report is distinct because the canvas is successfully discovered and usable, but remains absent from its plugin's details page. It also covers the lack of per-extension runtime status.
贡献指南
调研方向
从安装流程打开的插件详情视图开始,然后追踪现有的 skills 列表以及扩展重新加载和运行时状态的处理。将其与全局 Extensions 视图以及报告中提到的相关 canvas/plugin issues 进行比较。完成的标准是:捆绑的 canvas 显示为 Ready、Disabled、Shadowed 或 Failed 状态,并且失败时显示包含错误和冲突来源的警告。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- github
- 领域
- desktop, frontend
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100