Skip to content

refactor(plugins): Standardize plugin ID naming conventions to snake_case-#548#2048

Open
Rakshak05 wants to merge 4 commits into
utksh1:mainfrom
Rakshak05:issue-#548-new
Open

refactor(plugins): Standardize plugin ID naming conventions to snake_case-#548#2048
Rakshak05 wants to merge 4 commits into
utksh1:mainfrom
Rakshak05:issue-#548-new

Conversation

@Rakshak05

Copy link
Copy Markdown
Contributor

Description

This PR standardizes the naming convention for all plugin IDs and their directories across the codebase, resolving inconsistency issues between hyphenated and underscored names (e.g., domain-finder -> domain_finder, website-recon-2 -> website_recon, etc.).

Key changes include:

  • Renamed plugin directories and updated metadata.json identifiers to follow snake_case.
  • Added database migration 007_standardize_plugin_ids.sql to normalize plugin IDs in the workflows schema.
  • Updated all import paths, test suites, and executor references to match the new folder structure.
  • Documented naming conventions in PLUGINS.md to guide future plugin contributions.
  • Removed and gitignored the credentials file backend/data/.api_key to keep the PR clean.

Related Issues

Closes #548

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update

How Has This Been Tested?

Ran the backend unit test suite to verify that all plugins load, validate, and execute properly with standard names:

python -m pytest testing/backend/unit/test_plugins.py testing/backend/unit/test_plugin_validator.py testing/backend/unit/test_plugin_compatibility.py testing/backend/unit/test_port_scanner_plugin.py testing/backend/unit/test_subdomain_discovery_plugin.py testing/backend/unit/test_url_fuzzer_2_plugin.py testing/backend/unit/test_virtual_host_finder_plugin.py

All 200+ unit and integration tests passed successfully.

Checklist

  • My code follows the code style of this project.
  • I have performed a self-review of my own code.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.

@utksh1 utksh1 added level:advanced 55 pts difficulty label for advanced contributor PRs type:refactor Refactor work category bonus label area:plugins Scanner plugin metadata, schemas, or plugin runtime work area:backend Backend API, database, or service work labels Jul 24, 2026

@utksh1 utksh1 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This plugin-ID standardization includes catalog/docs churn, a migration, metadata/parser changes, secret-file deletion, and broad test edits. Please split the migration/runtime compatibility work from catalog/documentation cleanup, explain the migration and rollback path, and rebase before another review.

@utksh1 utksh1 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This plugin-ID migration is too broad to safely merge as one branch: it spans migration behavior, many plugin metadata files, documentation, tests, and unrelated API-key removal. Please split the compatibility/migration contract from metadata renames, remove unrelated files, and provide a migration/rollback note.

@utksh1 utksh1 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This plugin-ID migration is too broad to safely merge as one branch: it spans migration behavior, many plugin metadata files, documentation, tests, and unrelated API-key removal. Please split the compatibility/migration contract from metadata renames, remove unrelated files, and provide a migration/rollback note.

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

Labels

area:backend Backend API, database, or service work area:plugins Scanner plugin metadata, schemas, or plugin runtime work level:advanced 55 pts difficulty label for advanced contributor PRs type:refactor Refactor work category bonus label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[PLUGINS] Standardize plugin ID naming conventions across hyphenated and underscored directories

2 participants