Repository navigation
Plugin resolve failures: structured list instead of text match - #360
Conversation
resolvePlugins now returns failures alongside warnings. The install task and passthrough install use that list, so a warning from a plugin that resolved can't count as a failure because of its text.
PR Summary by QodoTrack plugin resolution failures separately from warnings
AI Description
Diagram
High-Level Assessment
Files changed (5)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can reply 'qodo' on any finding to push back, ask questions, or dig deeper |
Summary
Qodo follow-up for #358. Plugin failures were picked out of the warnings by the phrase "failed to resolve and was skipped". A warning from a plugin that did resolve could contain those words (for example an
mcp.jsondiagnostic that echoes a key), and it would count as an install failure.Stacked on #358: merge this into
fix/status-plugin-resolve-failuresfirst, then #358 intodevelop.What changed
resolvePlugins(plugin-install.ts) returnsfailures: one message per declared plugin that failed to resolve. Each is still inwarningstoo, so callers that only print warnings are unchanged.reportPluginResults(server install) and the passthrough install readfailuresinstead of searching the warning text. The server install drops failures from the warnings by exact match, so the message is still shown once.Test plan
reportPluginResultscases now pass{ warnings, failures }.resolvePluginsisolation test: a plugin with no manifest is returned infailures, and the same message is inwarnings.bunx tsc --noEmit; the CLI suite has no assertion failures (only the known Windows EBUSY temp cleanup).Checklist
bunx tsc --noEmitpasses🤖 Generated with Claude Code