-
Notifications
You must be signed in to change notification settings - Fork 307
Description
🏥 CI Failure Investigation - Run #34439
Summary
test and Integration: Workflow String & Sanitization jobs fail because plugin validation only allows Copilot even though some tests compile workflows that import plugins for Claude.
Failure Details
- Run: 21803157533
- Commit: d529f4f
- Trigger: push
Root Cause Analysis
validatePluginSupport rejects any engine whose SupportsPlugins() returns false. Claude and Codex embed BaseEngine with supportsPlugins false, so all plugin-related tests for those engines hit the error path even though their installation steps call GeneratePluginInstallationSteps. The error message still hard-codes the Copilot-only sentence, so the advice pointed users to switching engines even though Claude and Codex were supposed to work.
Failed Jobs and Errors
- test:
pkg/workflow/plugin_import_test.go:296–error: engine 'claude' does not support plugins... Only the 'copilot' engine currently supports plugin installation. - Integration: Workflow String & Sanitization:
pkg/workflow/plugin_compilation_test.go:95–error: engine 'claude' does not support plugins... Only the 'copilot' engine currently supports plugin installation.
Investigation Findings
- Plugin compilation and import tests for Claude require
SupportsPlugins()to return true sovalidatePluginSupportallows plugin installation. - The
supportsPluginsflag was only set for Copilot, so Claude/Codex were treated as unsupported even though their installation steps already install plugins. validatePluginSupportalso hard-coded the Copilot-only message, so the error sounded like the only fix was to switch engines even though Claude/Codex were intended to support plugins.
Recommended Actions
- Enable plugin capability metadata for Claude and Codex and update
validatePluginSupportto list every engine that supports plugins (already done). - Add a regression test that asserts the validation message reports the supported engines whenever
supportsPluginsis updated so future engine additions stay in sync.
Prevention Strategies
Keep engine capability metadata (supportsPlugins) and validation messaging synchronized with the actual install steps. When a new engine starts installing plugins, make the corresponding capability switch and update validatePluginSupport so the error messaging reflects every engine that can install plugins.
AI Team Self-Improvement
When adding plugin installation steps for a new engine, remember to update its BaseEngine capability flags and re-run validatePluginSupport tests so the user-facing error messages list all supported engines.
Historical Context
The only recent CI Failure Doctor issue was unrelated (displayFileContent logging). This plugin validation regression surfaced when tests started exercising Claude and Codex plugin flows.
AI generated by CI Failure Doctor
To add this workflow in your repository, run
gh aw add githubnext/agentics/workflows/ci-doctor.md@ea350161ad5dcc9624cf510f134c6a9e39a6f94d. See usage guide.
- expires on Feb 9, 2026, 6:40 PM UTC