Skip to content

feat(scanner): add per-plugin configuration system to PluginRegistry and Scanner - #91

Open
Senthemodder wants to merge 1 commit into
VeridionLabs:mainfrom
Senthemodder:feat/issue-21-plugin-configuration-system
Open

feat(scanner): add per-plugin configuration system to PluginRegistry and Scanner#91
Senthemodder wants to merge 1 commit into
VeridionLabs:mainfrom
Senthemodder:feat/issue-21-plugin-configuration-system

Conversation

@Senthemodder

Copy link
Copy Markdown

Fixes #21

Summary

Adds a per-plugin configuration system allowing severity overrides, pattern disabling, enabled/disabled toggling, and schema validation via PluginRegistry and Scanner.

Changes

  • Extended @veridion/scanner-types with PluginConfig, ConfigPropertySchema, and PluginConfigSchema types; added optional configSchema to PluginMetadata.
  • Updated PluginRegistry:
    • register(plugin, config?): accepts optional configuration and validates against plugin.metadata.configSchema if defined.
    • getPluginConfig(pluginId): retrieves current configuration.
    • setPluginConfig(pluginId, config): updates plugin configuration with schema validation.
    • unregister(pluginId): removes stored configuration on unregistration.
  • Updated Scanner.runPlugin:
    • Skips execution when config.enabled === false.
    • Filters out findings matching config.disabledPatterns.
    • Applies config.severityOverride to findings.
  • Authored unit tests in packages/scanner-core/src/plugin-registry.test.ts and packages/scanner-core/src/scanner.test.ts covering config registration, retrieval, updating, schema validation, severity overrides, pattern suppression, and disabled skipping.

Verification

  • pnpm --filter @veridion/scanner-core test: 14/14 tests passed (10 registry + 4 scanner).
  • pnpm --filter @veridion/scanner-core typecheck: 0 errors.
  • pnpm --filter @veridion/scanner-core lint: 0 warnings.
  • Full workspace test suite: 39/39 turbo tasks passed with exit code 0.

@Kami-no-san

Copy link
Copy Markdown
Contributor

Please fix lint failures

@Senthemodder

Senthemodder commented Sep 7, 2026 via email

Copy link
Copy Markdown
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Scanner: Add plugin configuration system with per-plugin settings

2 participants