Summary
The Obsidian community plugin dashboard reports hundreds of @typescript-eslint/no-unsafe-* warnings for a plugin whose source passes eslint-plugin-obsidianmd locally and in GitHub Actions. The warning pattern indicates that the dashboard scanner is running type-checked rules without successfully resolving the plugin dependencies in node_modules.
If the dashboard scanner is maintained elsewhere, please redirect this issue to the appropriate repository.
Affected plugin
Observed behavior
The dashboard reports mass warnings including:
@typescript-eslint/no-unsafe-assignment
@typescript-eslint/no-unsafe-call
@typescript-eslint/no-unsafe-member-access
@typescript-eslint/no-unsafe-argument
@typescript-eslint/no-unsafe-return
Many messages specifically say the value has an error type or a type that could not be resolved. Most affected code is downstream of imports from obsidian and @microsoft/microsoft-graph-client.
Reproduction evidence
- Install the repository dependencies.
- Run
eslint-plugin-obsidianmd v0.4.1 with its recommended type-checked configuration against src/: no unsafe-type errors are reported.
- Remove or make
node_modules/obsidian unavailable and rerun the same validation. The imported Obsidian APIs become TypeScript error types and approximately 1,594 unsafe-type diagnostics appear.
- Making
@microsoft/microsoft-graph-client unavailable similarly produces another 25 diagnostics.
This matches the dashboard report pattern.
Expected behavior
Before running type-aware TypeScript ESLint rules, the community scanner should install the submitted repository lockfile dependencies and confirm that the TypeScript program can resolve imports. If dependency installation or module resolution fails, it should report that setup failure directly rather than emitting downstream unsafe-type diagnostics as source warnings.
Related report
https://forum.obsidian.md/t/bug-plugin-scorecard-linter-cannot-resolve-internal-deps-in-monorepos/116176
Summary
The Obsidian community plugin dashboard reports hundreds of
@typescript-eslint/no-unsafe-*warnings for a plugin whose source passeseslint-plugin-obsidianmdlocally and in GitHub Actions. The warning pattern indicates that the dashboard scanner is running type-checked rules without successfully resolving the plugin dependencies innode_modules.If the dashboard scanner is maintained elsewhere, please redirect this issue to the appropriate repository.
Affected plugin
JeffSteinbok/obsidian-onedriveObserved behavior
The dashboard reports mass warnings including:
@typescript-eslint/no-unsafe-assignment@typescript-eslint/no-unsafe-call@typescript-eslint/no-unsafe-member-access@typescript-eslint/no-unsafe-argument@typescript-eslint/no-unsafe-returnMany messages specifically say the value has an
errortype or a type that could not be resolved. Most affected code is downstream of imports fromobsidianand@microsoft/microsoft-graph-client.Reproduction evidence
eslint-plugin-obsidianmdv0.4.1 with its recommended type-checked configuration againstsrc/: no unsafe-type errors are reported.node_modules/obsidianunavailable and rerun the same validation. The imported Obsidian APIs become TypeScript error types and approximately 1,594 unsafe-type diagnostics appear.@microsoft/microsoft-graph-clientunavailable similarly produces another 25 diagnostics.This matches the dashboard report pattern.
Expected behavior
Before running type-aware TypeScript ESLint rules, the community scanner should install the submitted repository lockfile dependencies and confirm that the TypeScript program can resolve imports. If dependency installation or module resolution fails, it should report that setup failure directly rather than emitting downstream unsafe-type diagnostics as source warnings.
Related report
https://forum.obsidian.md/t/bug-plugin-scorecard-linter-cannot-resolve-internal-deps-in-monorepos/116176