Overview
When pushing changes to an Aurora plugin repository, the build process may fail during the linting phase with the error "Error while loading rule 'import/no-cycle': typescript with invalid interface loaded as resolver." This issue manifests in both local development environments and GitHub Actions CI pipelines, blocking plugin development and deployment. The error stems from a compatibility issue between ESLint 8.57.1, eslint-plugin-import, and the TypeScript resolver interface in the Aurora SDK's linting infrastructure.
- Build failures during the linting stage with exit code 1
- Error message: "EslintPluginImportResolveError: Error while loading rule 'import/no-cycle': typescript with invalid interface loaded as resolver"
- Message: "Linting failed for plugin" followed by process termination
- Failures occur in both local
npm runbuild commands and GitHub Actions workflows - The error appears even with valid React component code that follows Aurora SDK patterns
Solution
This issue has been resolved in Aurora SDK version 25.11.2 and later. There are two approaches to fix this problem:
Method 1: Upgrade Aurora SDK (Recommended)
The recommended solution is to upgrade your Aurora SDK to version 25.11.2 or later, which resolves the underlying dependency compatibility issue.
Step 1: Update Aurora SDK Version
Open your plugin repository's package.json file and update the khoros-aurora-sdk version to ~25.11.2 or later:
Step 2: Clean Existing Dependencies
Remove your existing dependency installation to ensure a clean rebuild:
rm -rf node_modules rm package-lock.json
On Windows PowerShell:
Remove-Item -Recurse -Force node_modules Remove-Item package-lock.json
Step 3: Install Updated Dependencies
Run a fresh installation to generate a new lockfile with the updated SDK:
npm install
This will download Aurora SDK 25.11.2+ along with its corrected dependencies, including the compatible TypeScript resolver.
Step 4: Commit Updated Files
Commit both the modified package.json and the newly generated package-lock.json to your repository:
git add package.json package-lock.json git commit -m "Update Aurora SDK to 25.11.2 to resolve linting errors" git push
Step 5: Verify the Build
Re-run your build locally to confirm the fix:
npm run build
Then verify that the GitHub Actions build completes successfully without linting errors.
Method 2: Temporary Workaround (If SDK Upgrade Not Possible)
If you cannot immediately upgrade to Aurora SDK 25.11.2+, you can apply a temporary workaround by adding a dependency override.
Add the following overrides section to your package.json at the root level:
"overrides": {
"eslint-import-resolver-typescript": "3.6.3"
}
Then follow steps 2-5 from Method 1 above to clean dependencies, reinstall, commit, and verify the build.
overrides field requires npm 8.3.0 or later. If you encounter issues, ensure you're using Node.js 16.14+ or Node.js 18 LTS.
Summary
Aurora SDK plugin build failures caused by "typescript with invalid interface loaded as resolver" errors are resolved in Aurora SDK version 25.11.2 and later. The recommended solution is to upgrade your khoros-aurora-sdk package to version ~25.11.2 or higher, delete node_modules and package-lock.json, run npm install, and commit both files. If an immediate SDK upgrade is not feasible, a temporary workaround using dependency overrides for eslint-import-resolver-typescript version 3.6.3 can be applied. Both solutions require regenerating the lockfile and work for local development builds and CI/CD pipelines.
FAQ
Q1: Should I upgrade the Aurora SDK or use the override workaround?
Q2: Why does this error occur even though my React component code is correct?
Q3: What should I do if the build still fails after applying this fix?
package.json,
node -v and npm -v to confirm version compatibility,
npm ls khoros-aurora-sdk eslint-import-resolver-typescript eslint-plugin-import to show the installed versions,
/home/runner/.npm/_logs/...debug-0.log), and
Ciprian Nastase
Comments