Skip to content

Conversation

@BruinGrowly
Copy link
Owner

This commit introduces a .harmonizer.yml configuration file to allow users to customize the Harmonizer's behavior.

This new feature provides two key benefits:

  1. File Exclusion: Users can now specify a list of glob patterns under the exclude key to prevent certain files and directories (e.g., venv/, tests/) from being analyzed.

  2. Custom Vocabulary: Users can extend the Harmonizer's semantic dictionary by adding their own domain-specific keywords under the custom_vocabulary key, mapping them to one of the four core dimensions (love, justice, power, wisdom).

To support this, the following changes have been made:

  • Added PyYAML to requirements.txt for YAML parsing.
  • Implemented configuration loading logic in harmonizer/main.py.
  • Integrated file exclusion and custom vocabulary into the analysis pipeline.
  • Added comprehensive tests for the new configuration features.
  • Created a new docs/CONFIGURATION.md guide and updated the README.md.

In addition, the project structure has been refactored to a standard root-level package layout, and the test suite has been stabilized to resolve persistent import errors.

This commit introduces a `.harmonizer.yml` configuration file to allow users to customize the Harmonizer's behavior.

This new feature provides two key benefits:

1.  **File Exclusion:** Users can now specify a list of glob patterns under the `exclude` key to prevent certain files and directories (e.g., `venv/`, `tests/`) from being analyzed.

2.  **Custom Vocabulary:** Users can extend the Harmonizer's semantic dictionary by adding their own domain-specific keywords under the `custom_vocabulary` key, mapping them to one of the four core dimensions (love, justice, power, wisdom).

To support this, the following changes have been made:
- Added `PyYAML` to `requirements.txt` for YAML parsing.
- Implemented configuration loading logic in `harmonizer/main.py`.
- Integrated file exclusion and custom vocabulary into the analysis pipeline.
- Added comprehensive tests for the new configuration features.
- Created a new `docs/CONFIGURATION.md` guide and updated the `README.md`.

In addition, the project structure has been refactored to a standard root-level package layout, and the test suite has been stabilized to resolve persistent import errors.
@BruinGrowly BruinGrowly merged commit f419fa8 into main Nov 3, 2025
4 of 14 checks passed
@BruinGrowly BruinGrowly deleted the feat-config-file branch November 3, 2025 05:33
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.

2 participants