Commit graph

4805 commits

Author SHA1 Message Date
andikarachman
3dca104bdf refactor: remove integration_test.py and update README 2026-01-13 19:16:06 +07:00
andikarachman
ce57451403 docs: update README to reflect removed cognify pipeline tests 2026-01-13 19:13:27 +07:00
andikarachman
eecebb9e2d test: remove cognify pipeline tests from translation integration tests
Keep only standalone translation module tests (translate_text and
language detection) that don't depend on the cognify pipeline.
2026-01-13 19:10:52 +07:00
andikarachman
d2f98fe880 refactor: remove auto-translate from cognify pipeline
The translation module is kept as a standalone task that can be used
independently. Users can manually add translate_content to their
custom pipelines if needed.
2026-01-13 19:08:15 +07:00
andikarachman
aac115cc84 fix(tests): resolve asyncio event loop issue in translation integration tests 2026-01-13 18:52:04 +07:00
andikarachman
d70957978e fix: improve error handling consistency
- Use TranslationProviderError instead of ValueError in azure_provider.py batch translation
- Replace bare except blocks with specific ValidationError in config_test.py
2026-01-13 18:52:04 +07:00
andikarachman
b6aa33f343 refactor: rename OpenAI translation provider to LLM provider
- Rename OpenAITranslationProvider to LLMTranslationProvider
- Rename openai_provider.py to llm_provider.py
- Change provider type from 'openai' to 'llm' in TranslationProviderType
- Update all test files to use 'llm' provider and has_llm_api_key()
- Add AliasChoices for explicit env var mapping in TranslationConfig
- Update translate_content.py to fallback to config.target_language
- Update cognify.py docstrings to reference 'llm' provider
- Update .env.template and test README documentation

The LLM provider now uses whatever LLM is configured in cognee
(OpenAI, Azure, Ollama, Anthropic, etc.) instead of being tied to OpenAI.
2026-01-13 18:52:04 +07:00
andikarachman
2a9d795723 feat(translation): address PR review feedback
- Add langdetect>=1.0.9 as direct dependency in pyproject.toml
- Wrap exceptions with TranslationProviderError in azure_provider.py
- Add progress logging for large batch translations (every 100 chunks)
- Add clear_translation_config_cache helper for testing
- Set __cause__ on exceptions for proper exception chaining
- Change TranslationResult.confidence_score to Optional[float]
- Google provider: set confidence_score=None (API doesn't provide it)
- Google provider: simplify translate methods with kwargs dict
- Add assertion for result length in integration test
2026-01-13 18:52:04 +07:00
andikarachman
82e4c45118 refactor: use TranslationProviderError instead of ValueError for consistency 2026-01-13 18:46:01 +07:00
andikarachman
79980293ed feat: add rate limiting with asyncio.Semaphore to batch translations 2026-01-13 18:46:01 +07:00
andikarachman
6b36d9093d feat: add timeout_seconds to to_dict() for debugging context 2026-01-13 18:46:01 +07:00
andikarachman
5d03366dad docs: add module docstring to base.py 2026-01-13 18:46:01 +07:00
andikarachman
9e226e2dae refactor: address code review feedback
- Made is_available() abstract in base.py with proper implementation in providers
- Added original_error parameter to UnsupportedLanguageError and TranslationConfigError
- Added Field validation for confidence_threshold bounds (0.0-1.0)
- Changed @lru_cache to @lru_cache() for explicit style
- Added get_translation_provider to __all__ in providers/__init__.py
- Replaced deprecated asyncio.get_event_loop() with get_running_loop()
- Added debug logging to is_available() in GoogleTranslationProvider
- Added TODO comment for confidence score improvement in OpenAIProvider
- Added None check for read_query_prompt() with fallback default prompt
- Moved ClientSession outside batch loop in AzureTranslationProvider
- Fixed Optional[float] type annotation in detect_language()
- Added Note section documenting in-place mutation in translate_content()
- Added test_confidence_threshold_validation() for bounds testing
- Added descriptive assertion messages to config tests
- Converted all async tests to use @pytest.mark.asyncio decorators
- Replaced manual skip checks with @pytest.mark.skipif
- Removed manual main() blocks, tests now pytest-only
- Changed Chinese language assertion to use startswith('zh') for flexibility
2026-01-13 18:46:01 +07:00
andikarachman
00e318b3ed test: add comprehensive translation module tests
- Add unit tests for translation configuration, language detection, providers, and translate_content task
- Add integration tests for full cognify pipeline with translation
- All 40 tests passing (32 unit + 8 integration)
- Tests use asyncio.run() pattern matching project style
- Tests named with *_test.py suffix per project convention
- Update README with test documentation

Formatting changes:
- Apply ruff format to cognify.py (bracket placement style)

Signed-off-by: andikarachman <andika.rachman.y@gmail.com>
2026-01-13 18:46:01 +07:00
andikarachman
d7962bd44a fix(translation): Remove UUID fields from vector index_fields
- Fixed ValidationError when indexing TranslatedContent and LanguageMetadata
- UUID fields (original_chunk_id, content_id) cannot be indexed as text in vector databases
- Kept UUID fields in models for relationships, only removed from index_fields metadata
2026-01-13 18:46:01 +07:00
andikarachman
c9b1767050 feat(translation): implement multilingual content translation task
- Add translation module with OpenAI, Google, Azure provider support
- Implement language detection using langdetect
- Add TranslatedContent and LanguageMetadata models
- Integrate translation task into cognify pipeline
- Add auto_translate parameter to cognify() function
- Preserve original text alongside translations
- Support custom translation providers and target languages
2026-01-13 18:46:01 +07:00
vasilije
ab990f7c5c docs: add CLAUDE.md for Claude Code guidance
Add comprehensive CLAUDE.md file to guide future Claude Code instances working in this repository. Includes:
- Development commands (setup, testing, code quality)
- Architecture overview (ECL pipeline, data flows, key patterns)
- Complete configuration guide (LLM providers, databases, storage)
- All 15 search types with descriptions
- Extension points for custom functionality
- Troubleshooting common issues

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-11 16:04:11 +01:00
Vasilije
861c5e33da
refactor: add type hints for user_id and visualization server args (#1987)
<!-- .github/pull_request_template.md -->

## Description
Resolves #1986 

I addressed all `ANN001` errors in `cognee/shared/utils.py`.
Updated functions:
1. send_telemetry
2. start_visualization_server
3. _sanitize_nested_properties
4. embed_logo

While fixing these errors, i've noticed that the `send_telemetry`
function lacked a type hint for `user_id`. After analyzing the `User`
models and usage patterns in the codebase, I found that `user_id` is not
strictly a `str` but can also be a `uuid.UUID` object.

Therefore, I updated the type hint to `Union[str, uuid.UUID]` (importing
`uuid` and `typing.Union`) to accurately reflect the data structure and
improve type safety.

## Acceptance Criteria
* [x] The code passes static analysis (`ruff`) without `ANN001` errors
in `cognee/shared/utils.py`.
* [x] Correct imports (`uuid`, `Union`) are added and sorted.

[Check Steps]
1. Run 'uv run ruff check cognee/shared/utils.py --select ANN001'
5. Expected result: No errors found.

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [x] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [x] **I have tested my changes thoroughly before submitting this PR**
- [x] **This PR contains minimal changes necessary to address the
issue/feature**
- [x] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [x] All new and existing tests pass
- [x] I have searched existing PRs to ensure this change hasn't been
submitted already
- [x] I have linked any relevant issues in the description
- [x] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Refactor**
* Improved type annotations across telemetry and sanitization utilities
for safer handling of IDs and nested properties.
* Ensured additional properties are sanitized before telemetry is sent.
* Added explicit type hints for visualization startup and logo embedding
parameters for clearer IDE support.

This release contains no user-facing changes.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-10 15:27:52 +01:00
HectorSin
4189cda895 refactor: simplify type hint and add return type for sanitize function
Signed-off-by: HectorSin <kkang15634@ajou.ac.kr>
2026-01-10 21:25:25 +09:00
HectorSin
da5660b716 refactor: fix mutable default argument in send_telemetry
Signed-off-by: HectorSin <kkang15634@ajou.ac.kr>
2026-01-10 21:21:04 +09:00
HectorSin
46c12cc0ee refactor: resolve remaining ANN001 errors in utils.py
Signed-off-by: HectorSin <kkang15634@ajou.ac.kr>
2026-01-10 21:13:10 +09:00
HectorSin
ebf2aaaa5c refactor: add type hint for handler_class
Signed-off-by: HectorSin <kkang15634@ajou.ac.kr>
2026-01-10 20:58:08 +09:00
HectorSin
f73457ef72 refactor: add type hints for user_id and visualization server args
Signed-off-by: HectorSin <kkang15634@ajou.ac.kr>
2026-01-10 20:29:50 +09:00
Vasilije
2c23063da7
fix: Better error message if cognee is run without cognee.add and cognee.cognify (#1940)
<!-- .github/pull_request_template.md -->

## Description
<!--
Please provide a clear, human-generated description of the changes in
this PR.
DO NOT use AI-generated descriptions. We want to understand your thought
process and reasoning.
-->

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Bug Fixes**
* Improved error messaging in search functionality with clearer,
actionable feedback when database or user configuration prerequisites
are not met
* Standardized error response format for consistent and informative
error reporting across search operations

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-10 11:21:52 +01:00
Vasilije
f03ab671e6
fix: Remove Jon Doe enitity reference due to hallucination issues (#1939)
<!-- .github/pull_request_template.md -->

## Description
<!--
Please provide a clear, human-generated description of the changes in
this PR.
DO NOT use AI-generated descriptions. We want to understand your thought
process and reasoning.
-->

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Clarifies and tightens coreference resolution guidance across
knowledge-graph prompt templates.
> 
> - Updates coreference rules to emphasize using the most complete,
human-readable identifiers consistently (`generate_graph_prompt*.txt`)
> - Tweaks examples, notably replacing the John Doe example with a
generic "X" case in the one-shot prompt
> - Minor wording/formatting cleanups; no code changes or logic
modifications
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
8499258272. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Refined entity resolution guidance in knowledge graph generation
prompts to use more generic instructions, improving flexibility and
consistency in how entities are identified throughout the system.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-10 08:49:23 +01:00
Vasilije
a3c04d30be
Merge branch 'dev' into COG-3283 2026-01-10 08:48:55 +01:00
Vasilije
7a421dd968
Chore: Update helm chart (#1984)
<!-- .github/pull_request_template.md -->

## Description
Updated example Helm chart:
* connected PostgreSQL + pgvector to Cognee
* Added required variables and secrets
* Tested with port forwarding
* Updated readme
<!--
Please provide a clear, human-generated description of the changes in
this PR.
DO NOT use AI-generated descriptions. We want to understand your thought
process and reasoning.
-->

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [x] Other (please specify): Cloud

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Updated deployment guide with example setup instructions, deployment
commands, and port forwarding details for local access.

* **Configuration**
  * Added LLM model and provider configuration settings.
* Enhanced deployment with environment variables and memory resource
limits.
  * Implemented secure secret management for API keys.
  * Adjusted resource allocations for services.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-09 19:16:45 +01:00
Pavel Zorin
fb4796204a Chore: Fix helm chart 2026-01-09 18:06:08 +01:00
Vasilije
6dc08eb5d0
Chore: Remove Lint and Format check in favor to pre-commit (#1983)
<!-- .github/pull_request_template.md -->

## Description
Removed `List and Format check` steps. It's all done by pre-commit
checks
## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [x] Other (please specify): Dev Experience

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Streamlined the continuous integration workflow by removing redundant
job steps from the automated testing pipeline. Unit tests and
integration tests continue to run as expected.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-09 15:39:01 +01:00
Pavel Zorin
aeb2f39fd8 Chore: Remove Lint and Format check in favor to pre-commit 2026-01-09 14:15:36 +01:00
Vasilije
14c5a306b3
fix: Resolve issue with distributed test (#1982)
<!-- .github/pull_request_template.md -->

## Description
Update poetry lock for distributed Cognee

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.
2026-01-09 12:54:41 +01:00
Igor Ilic
6db193ef36 fix: Resolve issue with distributed test 2026-01-09 11:20:16 +01:00
Vasilije
beb8932fea
fix: Handle Dependabot security issues (#1968)
<!-- .github/pull_request_template.md -->

## Description
Fix security issue with langchain raised by Dependabot:
https://github.com/topoteretes/cognee/security/dependabot/73

Older version of langchain has an issue

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [X ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ X] **I have tested my changes thoroughly before submitting this PR**
- [X ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ X] My code follows the project's coding standards and style
guidelines
- [ X] I have added tests that prove my fix is effective or that my
feature works
- [ X] I have added necessary documentation (if applicable)
- [X ] All new and existing tests pass
- [X ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ X] I have linked any relevant issues in the description
- [ X] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Addresses Dependabot alerts by updating critical dependencies and
refreshing the Python lockfile.
> 
> - Adds `langchain-core` to optional deps and updates locked version to
`1.2.6` (introduces `uuid-utils`)
> - Tightens HTTP stack: raises `aiohttp` to `>=3.13.3`, adds `urllib3`
runtime dep (locked to `2.6.2`)
> - Bumps frontend `next` to `16.1.7`
> - Regenerates `uv.lock` with numerous package/version updates and
platform wheels; adjusts `kubernetes` to `33.1.0` with `oauthlib` dep
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
1eb4197f1a. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->



<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
  * Updated Next.js to 16.1.7.
  * Relaxed aiohttp dependency constraint.
  * Added urllib3 as a dependency.
  * Added langchain-core to optional dependencies.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-08 21:29:20 +01:00
Vasilije
c3c8961631
Merge branch 'dev' into ffix_sec 2026-01-08 21:29:02 +01:00
Vasilije
abc6faff34
fix: fix security issue (#1967)
<!-- .github/pull_request_template.md -->

## Description
Fix security issue reported by the user
https://github.com/topoteretes/cognee/issues/1950

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [x] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [x] **I have tested my changes thoroughly before submitting this PR**
- [x] **This PR contains minimal changes necessary to address the
issue/feature**
- [x] My code follows the project's coding standards and style
guidelines
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have added necessary documentation (if applicable)
- [x] All new and existing tests pass
- [x] I have searched existing PRs to ensure this change hasn't been
submitted already
- [x] I have linked any relevant issues in the description
- [x] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> - **Dependencies:** Adds `cbor2>=5.8.0` to `pyproject.toml`; updates
`uv.lock` (including version bump and wheels) to reflect new dependency.
> - **CI/Docs:** Refines `.github/pull_request_template.md` (simplified
change types; renamed `Screenshots` section to request proof of local
tests passing).
> - **Code cleanup:** Minor formatting changes in
`LiteLLMEmbeddingEngine.py` and `get_api_auth_backend.py` with no
functional impact.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
aa4ab1ed8a. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
  * Added the cbor2 serialization library to project dependencies.

* **Documentation**
* Updated the pull request template: simplified change-type options,
tightened acceptance criteria, expanded the pre-submission checklist
with additional verification items, and renamed/clarified the
screenshots section to request local test evidence.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-08 21:28:21 +01:00
Vasilije
ada0a2be4f
Merge branch 'dev' into fix_security_issue 2026-01-08 21:28:11 +01:00
Vasilije
b1ff473a38
COG-3395: Chore: pre-commit, pre-commit action, contribution guide update (#1979)
## Description
Revisited the `CONTRIBUTING.md`:
* Added the `Required tools`
* Pre-commit requirement. It replaces `ruff` and other linting guides
* Fixed `test_library.py` paths. Made sure that the testing guide is
complete and works
* Added a `pre-commit` step to `Pre-Test` workflow. It will fail if
`pre-commit` has issues and no other tests will be triggered
* Added a sufficient LLM configuration example for tests. Moved
`cognee/.env.example` to the project root for convenience

>>> Requires: https://github.com/topoteretes/cognee/pull/1980 <<<

## Acceptance Criteria
`pre-commit` action works 
Tested pre-commit locally. If a commit violates the rules - it rejects
it and fixes the issues. Then we need to `git commit ...` again.

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [x] Other (please specify): CI and DevExp improvement

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Documentation**
* Expanded contributor guide with setup, required tools, testing
instructions, examples, and updated PR submission guidance.
* Updated pull-request checklist to reference contributing instructions.

* **Chores**
* Added three new local environment variables for LLM configuration and
updated example env file.
  * Added a pre-commit validation step to CI.
  * Updated ignore list to exclude a local environment file.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-08 19:59:20 +01:00
Pavel Zorin
3e602fdad7 Renamed the pre_test workflow 2026-01-08 19:19:11 +01:00
Pavel Zorin
15a88accac Chore: use pre-commit action 2026-01-08 19:19:11 +01:00
Pavel Zorin
b0fe1a8439 CI: Speed up pre-test workflow 2026-01-08 19:19:11 +01:00
Pavel Zorin
962ddf4257 Chore: pre-commit, pre-commit action, contribution guide update 2026-01-08 19:19:07 +01:00
Vasilije
fde921ca3e
chore: Remove trailing whitespaces in the project, fix YAMLs (#1980)
<!-- .github/pull_request_template.md -->

## Description
Removes trailing whitespaces from all files in the project. Needed by
https://github.com/topoteretes/cognee/pull/1979

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Added `topK` parameter support in search functionality to control
result count (1-100).
  * Added Python tool configuration via mise.toml.

* **Documentation**
* Enhanced issue templates with improved UI metadata, labels, and
clearer guidance for bug reports, feature requests, and documentation
issues.
* Expanded CONTRIBUTING.md with comprehensive contribution guidelines
and community information.

* **Chores**
* Removed unused modules: `cognee.modules.retrieval` and
`cognee.tasks.temporal_graph`.
* Applied consistent formatting and whitespace normalization across
configuration files, workflows, and documentation.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-08 19:16:09 +01:00
Pavel Zorin
7a48e22b13 chore: Remove trailing whitespaces in the project, fix YAMLs 2026-01-08 17:15:53 +01:00
vasilije
1eb4197f1a add uv lock 2026-01-08 16:05:36 +01:00
Vasilije
c50b5fa139
Merge branch 'dev' into fix_security_issue 2026-01-08 16:00:21 +01:00
Vasilije
42dc9351f2
Merge branch 'dev' into ffix_sec 2026-01-08 15:53:44 +01:00
Vasilije
5cf63617a1
Fix dev branch ci (#1978)
<!-- .github/pull_request_template.md -->

## Description
Resolve issues with CI for dev branch with slight contributor PR
refactors

## Acceptance Criteria
<!--
* Key requirements to the new feature or modification;
* Proof that the changes work and meet the requirements;
* Include instructions on how to verify the changes. Describe how to
test it locally;
* Proof that it's sufficiently tested.
-->

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [ ] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
<!-- Add screenshots or videos to help explain your changes -->

## Pre-submission Checklist
<!-- Please check all boxes that apply before submitting your PR -->
- [ ] **I have tested my changes thoroughly before submitting this PR**
- [ ] **This PR contains minimal changes necessary to address the
issue/feature**
- [ ] My code follows the project's coding standards and style
guidelines
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [ ] All new and existing tests pass
- [ ] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages

## DCO Affirmation
I affirm that all code in every commit of this pull request conforms to
the terms of the Topoteretes Developer Certificate of Origin.
2026-01-08 15:49:59 +01:00
Igor Ilic
7de3356b1f fix: Resolve issue with migration order 2026-01-08 14:28:39 +01:00
Igor Ilic
00697c4491 chore: Update poetry lock 2026-01-08 14:21:05 +01:00
Vasilije
1772439ea5
Update aiohttp version in pyproject.toml 2026-01-08 13:49:39 +01:00