Skip to content

Conversation

@dkargatzis
Copy link
Member

Refactor: Module Restructure and Configuration Updates

This PR refactors the codebase structure for better organization and maintainability.

Key Changes

Module Reorganization

  • Split monolithic config.py into modular package structure
  • Consolidated providers and integrations under unified integrations/ structure
  • Extracted shared utilities into core/utils/ package
  • Moved rule utilities (codeowners, contributors) to rules/utils/

Agent Architecture

  • Removed supervisor agent in favor of factory pattern
  • Implemented get_agent() factory function for consistent agent instantiation
  • Updated all event processors to use factory pattern

Code Improvements

  • Fixed OpenAI structured output schema compatibility (removed json_schema_extra, added method="function_calling")
  • Updated logging to use rule descriptions instead of deprecated id/name fields
  • Removed unused imports and outdated references

Documentation

  • Updated all guides to match current .env.example format
  • Removed id/name fields from rule examples
  • Added watchflow.dev references for better onboarding
  • Fixed environment variable names throughout docs

Tests

  • Removed supervisor agent tests
  • Fixed timeout error type assertion
  • All 44 tests passing

Impact

  • Improved code organization and maintainability
  • Better separation of concerns
  • Consistent agent instantiation pattern
  • Updated documentation aligned with current structure

- Modularize config into package structure (split config.py)
- Reorganize providers and integrations into unified structure
- Extract shared utilities into core/utils package
- Move rule utilities (codeowners, contributors) to rules/utils
- Remove supervisor agent, implement factory pattern for agents
- Fix OpenAI structured output schema compatibility
- Update all imports and references across codebase
- Sync documentation with current structure and env vars
- Update tests to match refactored architecture

Signed-off-by: Dimitris Kargatzis <dkargatzis@gmail.com>
Signed-off-by: Dimitris Kargatzis <dkargatzis@gmail.com>
@dkargatzis dkargatzis merged commit a518bcb into main Nov 15, 2025
4 checks passed
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.

1 participant