II.
Page JSON
Structured · livepage:docs-harness-features-backlog-gaps-ecosystem-gap-eco-005
GAP-ECO-005: Plugin Validation and Diagnostics json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "page:docs-harness-features-backlog-gaps-ecosystem-gap-eco-005",
"_kind": "Page",
"_file": "wiki/docs/harness-features-backlog/gaps/ecosystem/gap-eco-005.md",
"_cluster": "wiki",
"attributes": {
"nodeKind": "Page",
"sourcePath": "docs/harness-features-backlog/gaps/ecosystem/GAP-ECO-005.md",
"sourceKind": "repo-docs",
"title": "GAP-ECO-005: Plugin Validation and Diagnostics",
"displayName": "GAP-ECO-005: Plugin Validation and Diagnostics",
"slug": "docs/harness-features-backlog/gaps/ecosystem/gap-eco-005",
"articlePath": "wiki/docs/harness-features-backlog/gaps/ecosystem/GAP-ECO-005.md",
"article": "\n# GAP-ECO-005: Plugin Validation and Diagnostics\n\n| Field | Value |\n|-------|-------|\n| Category | ecosystem |\n| Priority | Medium |\n| Effort | S |\n| Status | Missing |\n\n## Description\nValidate plugin manifests, check component loading, and provide clear diagnostics\nwhen plugins fail.\n\n## CC Implementation\n- `validatePlugin.ts` -- comprehensive manifest validation\n- `ValidatePlugin.tsx` -- validation UI with detailed results\n- `PluginErrors.tsx` -- structured error display per error type\n- `pluginStartupCheck.ts` -- boot-time validation\n- 12+ discriminated error types (path-not-found, git-auth-failed, manifest-parse-error,\n mcp-config-invalid, hook-load-failed, etc.)\n- `PluginOptionsDialog.tsx` -- plugin configuration UI\n\n## Current State\nBabysitter's `readPluginPackage` reads manifests but validation is minimal.\nNo structured error types. No diagnostic UI. Plugin load failures produce\ngeneric errors.\n\n## Target State\nStructured plugin error types with actionable messages. A `plugin:validate`\ncommand that checks manifest, components, dependencies, and compatibility.\nClear error messages explaining what went wrong and how to fix it.\n\n## Dependencies\n- [GAP-ECO-001](GAP-ECO-001.md) -- needs to validate CC plugin format too\n\n## Key Files\n| Component | Path |\n|-----------|------|\n| CC validator | `src/utils/plugins/validatePlugin.ts` |\n| CC errors | `src/commands/plugin/PluginErrors.tsx` |\n\n## Recommendation\nPhase 4 (M6). Start with structured error types matching CC's taxonomy. Then add\n`plugin:validate` command.\n",
"documents": []
},
"outgoingEdges": [],
"incomingEdges": [
{
"from": "page:docs-harness-features-backlog",
"to": "page:docs-harness-features-backlog-gaps-ecosystem-gap-eco-005",
"kind": "contains_page"
}
]
}