diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 000000000..b898850cb --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,58 @@ +--- +name: Bug Report +about: Create a report to help us improve +title: '[BUG] ' +labels: ['bug'] +assignees: '' +--- + +## Bug Description +A clear and concise description of what the bug is. + +## Location +**File(s)**: +**Line(s)**: + +## Current Behavior +What is currently happening? + +## Expected Behavior +What should happen instead? + +## Steps to Reproduce +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +## Environment +- OS: [e.g. Ubuntu 20.04, macOS 12.0] +- Python Version: [e.g. 3.9, 3.10] +- Cognee Version: [e.g. 0.1.5] +- LLM Provider: [e.g. OpenAI, Ollama, Gemini] + +## Error Output +``` +Paste any error messages or logs here +``` + +## Additional Context +Add any other context about the problem here. + +## Related Issues +Link any related issues or TODOs from the codebase. + +## Priority +- [ ] High - Blocks functionality +- [ ] Medium - Affects user experience +- [ ] Low - Minor issue + +## Labels to Add +Select appropriate labels: +- [ ] `testing` - Related to tests +- [ ] `api` - API-related +- [ ] `database` - Database-related +- [ ] `llm-support` - LLM integration +- [ ] `ui` - User interface +- [ ] `retrieval` - Information retrieval +- [ ] `good first issue` - Good for newcomers \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/documentation.md b/.github/ISSUE_TEMPLATE/documentation.md new file mode 100644 index 000000000..cf4daa51e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation.md @@ -0,0 +1,63 @@ +--- +name: Documentation +about: Improve or add documentation +title: '[DOCS] ' +labels: ['documentation'] +assignees: '' +--- + +## Documentation Issue +What documentation is missing, unclear, or needs improvement? + +## Location +**File(s)**: +**Section/Function**: +**Current Documentation State**: [Missing/Incomplete/Unclear/Outdated] + +## Problem +Describe what makes the current documentation insufficient: +- [ ] Missing entirely +- [ ] Incomplete information +- [ ] Unclear explanations +- [ ] Outdated information +- [ ] Poor examples +- [ ] Hard to find + +## Proposed Improvement +What should be documented or how should it be improved? + +## Target Audience +Who is this documentation for? +- [ ] New contributors +- [ ] End users +- [ ] API developers +- [ ] System administrators +- [ ] Advanced users + +## Content Outline +Provide a rough outline of what should be documented: +1. +2. +3. + +## Examples Needed +What examples would be helpful? + +## Related Code +Link to relevant code files or functions that need documentation. + +## Additional Context +Add any other context or examples about the documentation improvement. + +## Priority +- [ ] High - Blocking contributor onboarding +- [ ] Medium - Important for user experience +- [ ] Low - Nice-to-have improvement + +## Labels to Add +Select appropriate labels: +- [ ] `good first issue` - Perfect for newcomers +- [ ] `api` - API documentation +- [ ] `testing` - Test documentation +- [ ] `contributor-experience` - For contributors +- [ ] `user-guide` - For end users \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/enhancement.md b/.github/ISSUE_TEMPLATE/enhancement.md new file mode 100644 index 000000000..db4694f33 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/enhancement.md @@ -0,0 +1,60 @@ +--- +name: Enhancement/Feature Request +about: Suggest an idea or improvement for this project +title: '[ENHANCEMENT] ' +labels: ['enhancement'] +assignees: '' +--- + +## Enhancement Description +A clear and concise description of what the enhancement is. + +## Problem/Motivation +What problem does this solve? What's the motivation behind this enhancement? + +## Location (if applicable) +**File(s)**: +**Line(s)**: +**TODO/Comment Reference**: + +## Proposed Solution +Describe the solution you'd like to see implemented. + +## Alternative Solutions +Describe any alternative solutions or features you've considered. + +## Implementation Details +- [ ] API changes required +- [ ] Database schema changes +- [ ] Breaking changes +- [ ] New dependencies needed +- [ ] Documentation updates needed + +## Acceptance Criteria +- [ ] Criterion 1 +- [ ] Criterion 2 +- [ ] Criterion 3 + +## Additional Context +Add any other context, screenshots, or examples about the enhancement here. + +## Related Issues/TODOs +Link any related issues or TODO comments from the codebase. + +## Priority +- [ ] High - Critical for functionality +- [ ] Medium - Important improvement +- [ ] Low - Nice-to-have + +## Labels to Add +Select appropriate labels: +- [ ] `technical-debt` - Code quality improvement +- [ ] `api` - API-related +- [ ] `database` - Database-related +- [ ] `llm-support` - LLM integration +- [ ] `ui` - User interface +- [ ] `permissions` - Authentication/authorization +- [ ] `pipeline` - Pipeline-related +- [ ] `visualization` - Data visualization +- [ ] `good first issue` - Good for newcomers +- [ ] `help wanted` - Extra attention needed \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/good-first-issue.md b/.github/ISSUE_TEMPLATE/good-first-issue.md new file mode 100644 index 000000000..310d66917 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/good-first-issue.md @@ -0,0 +1,74 @@ +--- +name: Good First Issue +about: Create an issue perfect for new contributors +title: '[GOOD FIRST ISSUE] ' +labels: ['good first issue', 'help wanted'] +assignees: '' +--- + +## Issue Description +A clear and beginner-friendly description of what needs to be done. + +## Location +**File(s)**: +**Line(s)**: +**Function/Class**: + +## What Needs to Be Done +Step-by-step description of the task: +1. +2. +3. + +## Context/Background +Brief explanation of why this is needed and how it fits into the larger codebase. + +## Expected Outcome +What should the final result look like? + +## Getting Started +### Setup Instructions +1. Fork the repository +2. Clone your fork: `git clone https://github.com/YOUR_USERNAME/cognee.git` +3. Install dependencies: `uv sync --all-extras` or `pip install -e .` +4. Create a branch: `git checkout -b fix/issue-description` + +### Testing +How to test the changes: +```bash +# Commands to run tests +``` + +### Files to Focus On +- Primary file to modify: +- Related files to review: +- Test files to update: + +## Acceptance Criteria +- [ ] Criterion 1 +- [ ] Criterion 2 +- [ ] Tests pass +- [ ] Code follows project style guidelines +- [ ] Documentation updated (if needed) + +## Resources +- [Contributing Guide](../../CONTRIBUTING.md) +- [Code of Conduct](../../CODE_OF_CONDUCT.md) +- Relevant documentation links + +## Need Help? +- Join our [Discord community](https://discord.gg/bcy8xFAtfd) +- Comment on this issue with questions +- Tag @maintainer-username for guidance + +## Estimated Time +โฑ๏ธ **Estimated time**: [15 minutes / 1 hour / 2-3 hours] + +## Skills Needed +- [ ] Python basics +- [ ] Git/GitHub +- [ ] Testing (optional) +- [ ] Documentation (optional) + +## Additional Context +Any extra information that might be helpful for new contributors. \ No newline at end of file diff --git a/README_CONTRIBUTOR_ISSUES.md b/README_CONTRIBUTOR_ISSUES.md new file mode 100644 index 000000000..c27c69a2d --- /dev/null +++ b/README_CONTRIBUTOR_ISSUES.md @@ -0,0 +1,177 @@ +# Cognee Contributor Issues Analysis & Setup + +This document contains the complete analysis and tools needed to implement the contributor issue management system discussed in the engineering Slack channel. + +## ๐Ÿ“‹ Executive Summary + +**Found**: 15+ distinct issues that should be converted to GitHub issues +**Categories**: Testing bugs, infrastructure improvements, technical debt, documentation, and code quality +**Impact**: Will significantly improve contributor onboarding and project maintainability + +## ๐Ÿ“ Files Created + +### 1. Analysis Document +- **`github_issues_analysis.md`** - Complete categorized list of all issues found in the codebase + +### 2. GitHub Issue Templates +- **`.github/ISSUE_TEMPLATE/bug_report.md`** - Template for bug reports +- **`.github/ISSUE_TEMPLATE/enhancement.md`** - Template for feature requests and improvements +- **`.github/ISSUE_TEMPLATE/documentation.md`** - Template for documentation improvements +- **`.github/ISSUE_TEMPLATE/good-first-issue.md`** - Template specifically for newcomer-friendly issues + +### 3. Examples & Guidelines +- **`example_github_issues.md`** - Detailed examples showing how to use the templates +- **This file** - Implementation guide and next steps + +## ๐ŸŽฏ Key Findings + +### High Priority Issues (Need Immediate Attention) +1. **Regex Entity Extraction Test Failing** - Blocks testing pipeline +2. **Neo4j Test Disabled** - Reduces test coverage +3. **RAG Completion top_k Bug** - Affects retrieval functionality +4. **Contributor PR Testing Workflow** - Manual process needs automation + +### Infrastructure Improvements +- Automated contributor PR testing (addresses Slack discussion) +- GitHub issue management system +- Better CI/CD for external contributions + +### Technical Debt (15+ TODOs found) +- User role permissions system disabled +- "Ugly hacks" in pipeline operations +- Random task assignments +- Missing model support + +## ๐Ÿš€ Implementation Plan + +### Phase 1: Immediate Setup (This Week) +1. **Review the analysis** - Team reviews `github_issues_analysis.md` +2. **Approve templates** - Customize the issue templates if needed +3. **Create high-priority issues** - Start with the 3 testing bugs + +### Phase 2: Batch Issue Creation (Next Week) +1. **Create infrastructure issues** (2 issues) +2. **Add technical debt issues** (6 issues) +3. **Create documentation issues** (2 issues) +4. **Add code quality issues** (2 issues) + +### Phase 3: Process Establishment (Ongoing) +1. **Weekly issue review** - As discussed in Slack (Vasilije to own initially) +2. **Contributor onboarding** - Update CONTRIBUTING.md with issue guidance +3. **Template refinement** - Improve templates based on usage + +## ๐Ÿ“ How to Create Issues + +### Quick Start +1. Go to [GitHub Issues](https://github.com/topoteretes/cognee/issues/new/choose) +2. Select appropriate template +3. Use the corresponding entry from `github_issues_analysis.md` to fill in details +4. Reference `example_github_issues.md` for formatting examples + +### For Each Category: + +#### ๐Ÿงช Testing Issues (3 issues) +- Use **Bug Report** template +- Labels: `bug`, `testing`, `priority-high` +- Add `good first issue` if appropriate + +#### ๐Ÿ—๏ธ Infrastructure Issues (2 issues) +- Use **Enhancement** template +- Labels: `enhancement`, `infrastructure`, `contributor-experience` +- Mark as `help wanted` for community involvement + +#### ๐Ÿ”ง Technical Debt (6 issues) +- Use **Enhancement** template +- Labels: `technical-debt`, `enhancement`, specific area labels +- Many can be `good first issue` + +#### ๐Ÿ“š Documentation (2 issues) +- Use **Documentation** template +- Labels: `documentation`, `good first issue` +- Perfect for new contributors + +#### ๐Ÿ”ง Code Quality (2 issues) +- Use **Good First Issue** template +- Labels: `good first issue`, `code-quality`, `refactor` + +## ๐Ÿท๏ธ Recommended Label Setup + +Create these labels in GitHub repository settings: + +### Priority +- `priority-high` (red) - Critical issues affecting functionality +- `priority-medium` (orange) - Important improvements +- `priority-low` (green) - Nice-to-have enhancements + +### Type +- `bug` (red) - Something isn't working +- `enhancement` (blue) - New feature or improvement +- `technical-debt` (yellow) - Code quality improvements +- `documentation` (green) - Documentation improvements +- `testing` (purple) - Test-related issues + +### Area +- `api` - API-related issues +- `database` - Database-related issues +- `llm-support` - LLM integration issues +- `ui` - User interface issues +- `infrastructure` - CI/CD and development workflow +- `permissions` - Authentication/authorization +- `retrieval` - Information retrieval functionality +- `visualization` - Data visualization features + +### Contributor +- `good first issue` (green) - Perfect for newcomers +- `contributor-experience` - Issues affecting contributor workflow +- `help wanted` (blue) - Extra attention needed + +## ๐Ÿ’ก Benefits of This System + +### For Contributors +- **Clear entry points** - Well-defined issues with context and instructions +- **Skill-appropriate tasks** - Issues labeled by difficulty and skills needed +- **Better onboarding** - Templates guide contributors through the process + +### For Maintainers +- **Reduced management overhead** - Templates ensure consistent issue quality +- **Better prioritization** - Clear labels and priority system +- **Systematic debt reduction** - TODOs converted to trackable issues + +### For the Project +- **Improved code quality** - Technical debt gets addressed systematically +- **Better testing** - Failing tests become tracked issues +- **Enhanced contributor experience** - As discussed in Slack, this addresses the core need + +## ๐Ÿ”„ Ongoing Process + +### Weekly Review (As per Slack Discussion) +1. **Scan for new TODOs** - Regular codebase review for new issues +2. **Prioritize issues** - Ensure high-impact issues are labeled appropriately +3. **Update contributors** - Highlight good first issues for new contributors +4. **Close completed issues** - Maintain clean issue board + +### Contributor PR Workflow Integration +This addresses the specific workflow improvement discussed in Slack: +- Current: Manual branch creation and testing +- Goal: Automated PR testing with security checks +- Implementation: Create GitHub issue using enhancement template + +## ๐Ÿ“ž Next Steps + +1. **Team Review**: Review this analysis in next engineering meeting +2. **Template Approval**: Customize templates if needed +3. **Label Setup**: Create the recommended labels in GitHub +4. **Issue Creation**: Start with high-priority issues +5. **Process Documentation**: Update CONTRIBUTING.md with new process +6. **Automation**: Create issue for contributor PR workflow automation + +## ๐Ÿ“ˆ Success Metrics + +- **Issue Resolution Rate**: Track how quickly issues get resolved +- **Contributor Engagement**: Monitor new contributor participation +- **Code Quality**: Measure reduction in TODO comments and technical debt +- **Testing Coverage**: Track test failures and improvements + +--- + +**Note**: This analysis directly addresses the engineering team's discussion about making development more public and providing clear contribution paths for external developers. The systematic approach ensures sustainable growth while maintaining code quality. \ No newline at end of file diff --git a/example_github_issues.md b/example_github_issues.md new file mode 100644 index 000000000..7338e1ad7 --- /dev/null +++ b/example_github_issues.md @@ -0,0 +1,224 @@ +# Example GitHub Issues + +These are examples of how to create GitHub issues for the identified problems using the templates. + +## Example 1: High Priority Bug + +**Title**: [BUG] Regex Entity Extraction Test Failing + +**Labels**: `bug`, `testing`, `good first issue` + +**Content**: +```markdown +## Bug Description +The regex entity extraction test is currently failing and needs to be fixed. This test is part of the entity extraction module and prevents proper validation of the regex functionality. + +## Location +**File(s)**: `cognee/tests/unit/entity_extraction/regex_entity_extraction_test.py` +**Line(s)**: 85 + +## Current Behavior +The test is failing and has been marked with a TODO comment indicating it needs to be fixed. + +## Expected Behavior +The regex entity extraction test should pass and properly validate the regex entity extraction functionality. + +## Steps to Reproduce +1. Run the test suite +2. Execute the specific test: `python -m pytest cognee/tests/unit/entity_extraction/regex_entity_extraction_test.py` +3. Observe test failure + +## Environment +- All environments affected +- Python Version: 3.8+ +- Cognee Version: Current dev branch + +## Error Output +``` +# Test failure output would go here +``` + +## Additional Context +TODO comment from line 85: "TODO: Lazar to fix regex for test, it's failing currently" + +## Related Issues +Part of the broader testing infrastructure improvements needed for contributor PRs. + +## Priority +- [x] High - Blocks functionality +- [ ] Medium - Affects user experience +- [ ] Low - Minor issue + +## Labels to Add +- [x] `testing` - Related to tests +- [x] `good first issue` - Good for newcomers +``` + +## Example 2: Infrastructure Enhancement + +**Title**: [ENHANCEMENT] Automate Contributor PR Testing Workflow + +**Labels**: `enhancement`, `infrastructure`, `contributor-experience` + +**Content**: +```markdown +## Enhancement Description +Automate the contributor PR testing workflow to eliminate manual branch creation and testing processes. + +## Problem/Motivation +Currently, testing contributor PRs requires manual intervention: +1. Create a new branch from contributor's PR +2. Push to origin manually +3. Run test_suites from GitHub pointing to the branch + +This creates friction for maintainers and delays feedback to contributors. + +## Location (if applicable) +**File(s)**: `.github/workflows/` (various workflow files) +**TODO/Comment Reference**: From Slack discussion about contributor PR workflow automation + +## Proposed Solution +Implement automated workflow that: +1. Automatically creates test branches for contributor PRs +2. Runs full test suite on contributor PRs +3. Provides security scanning for malicious GitHub Action changes +4. Reports results back to the PR + +## Alternative Solutions +- Use GitHub's built-in PR testing with security restrictions +- Fork-based testing with approval gates +- Separate testing environment for external contributions + +## Implementation Details +- [x] API changes required +- [ ] Database schema changes +- [ ] Breaking changes +- [ ] New dependencies needed +- [x] Documentation updates needed + +## Acceptance Criteria +- [ ] Contributor PRs automatically trigger test suite +- [ ] Security scanning prevents malicious workflow changes +- [ ] Test results are reported back to PR +- [ ] Maintainer approval still required for merge +- [ ] Documentation updated with new workflow + +## Additional Context +Current workflow documented in Notion page referenced in Slack discussion. Need to build upon the existing improved workflow. + +## Related Issues/TODOs +Addresses the manual contributor PR testing process discussed in engineering Slack channel. + +## Priority +- [x] High - Critical for functionality +- [ ] Medium - Important improvement +- [ ] Low - Nice-to-have + +## Labels to Add +- [x] `infrastructure` - CI/CD and development workflow +- [x] `contributor-experience` - Issues affecting contributor workflow +- [x] `help wanted` - Extra attention needed +``` + +## Example 3: Good First Issue + +**Title**: [GOOD FIRST ISSUE] Remove "Ugly Hack" in Pipeline Operations + +**Labels**: `good first issue`, `code-quality`, `refactor` + +**Content**: +```markdown +## Issue Description +Replace a self-documented "ugly hack" in the pipeline operations with a proper solution. + +## Location +**File(s)**: `cognee/modules/pipelines/operations/pipeline.py` +**Line(s)**: 114 +**Function/Class**: Pipeline operation handling + +## What Needs to Be Done +1. Review the current code at line 114 to understand what the "hack" is doing +2. Research the proper way to implement this functionality +3. Replace the hack with clean, maintainable code +4. Ensure all tests still pass +5. Update any related documentation + +## Context/Background +The current code contains a comment "# Ugly hack, but no easier way to do this." This indicates technical debt that should be addressed. Clean code is important for maintainability and contributor onboarding. + +## Expected Outcome +The functionality should work exactly the same, but with clean, well-documented code instead of a hack. + +## Getting Started +### Setup Instructions +1. Fork the repository +2. Clone your fork: `git clone https://github.com/YOUR_USERNAME/cognee.git` +3. Install dependencies: `uv sync --all-extras` or `pip install -e .` +4. Create a branch: `git checkout -b fix/remove-pipeline-hack` + +### Testing +How to test the changes: +```bash +# Run pipeline-related tests +python -m pytest cognee/tests/ -k pipeline +# Run full test suite to ensure no regressions +python -m pytest +``` + +### Files to Focus On +- Primary file to modify: `cognee/modules/pipelines/operations/pipeline.py` +- Related files to review: Other files in `cognee/modules/pipelines/` +- Test files to update: `cognee/tests/` (pipeline-related tests) + +## Acceptance Criteria +- [ ] "Ugly hack" comment removed +- [ ] Functionality replaced with clean implementation +- [ ] All existing tests pass +- [ ] Code follows project style guidelines +- [ ] Added comments explaining the new implementation + +## Resources +- [Contributing Guide](../../CONTRIBUTING.md) +- [Code of Conduct](../../CODE_OF_CONDUCT.md) +- Python best practices documentation + +## Need Help? +- Join our [Discord community](https://discord.gg/bcy8xFAtfd) +- Comment on this issue with questions +- Tag maintainer for guidance if stuck + +## Estimated Time +โฑ๏ธ **Estimated time**: 1-2 hours + +## Skills Needed +- [x] Python basics +- [x] Git/GitHub +- [ ] Testing (optional) +- [ ] Documentation (optional) + +## Additional Context +This is a great first issue because it's well-contained, has clear success criteria, and helps improve code quality. The exact nature of the "hack" will become clear when reviewing the code. +``` + +## Quick Issue Creation Checklist + +When creating issues from the analysis document: + +### For Each Issue: +1. **Choose appropriate template** (Bug Report, Enhancement, Documentation, or Good First Issue) +2. **Add proper labels** from the recommended label list +3. **Set priority level** (High, Medium, Low) +4. **Reference the source** (file and line number from analysis) +5. **Provide context** from the analysis document +6. **Make it actionable** with clear acceptance criteria + +### Batch Creation Process: +1. Start with **High Priority Testing Issues** (3 issues) +2. Create **Infrastructure Issues** (2 issues) +3. Add **Technical Debt Issues** (6 issues) +4. Create **Documentation Issues** (2 issues) +5. Add **Code Quality Issues** (2 issues) + +### Total Issues to Create: 15+ + +This systematic approach will provide contributors with a clear path to contribute, from simple documentation fixes to more complex infrastructure improvements. \ No newline at end of file diff --git a/github_issues_analysis.md b/github_issues_analysis.md new file mode 100644 index 000000000..1cc6351b6 --- /dev/null +++ b/github_issues_analysis.md @@ -0,0 +1,159 @@ +# GitHub Issues Analysis for Cognee Contributors + +Based on analysis of the codebase and the Slack discussion about making issues public for contributors, here are all the issues, bugs, and TODOs that should be converted to GitHub issues with appropriate labels. + +## Categories and Issues + +### ๐Ÿงช Testing Issues (Label: `testing`, `bug`) + +#### High Priority +1. **Regex Entity Extraction Test Failing** + - **File**: `cognee/tests/unit/entity_extraction/regex_entity_extraction_test.py:85` + - **Issue**: Test is currently failing and needs to be fixed + - **TODO Comment**: "TODO: Lazar to fix regex for test, it's failing currently" + - **Labels**: `bug`, `testing`, `good first issue` + +2. **Neo4j Test Disabled Due to LLM Model Issues** + - **File**: `cognee/tests/test_neo4j.py:78` + - **Issue**: Test fails often on weak LLM models and has been removed + - **Labels**: `bug`, `testing`, `llm-related` + +3. **RAG Completion Retriever top_k Parameter Bug** + - **File**: `cognee/tests/unit/modules/retrieval/rag_completion_retriever_test.py:155` + - **Issue**: top_k doesn't affect the output, needs to be fixed + - **Labels**: `bug`, `retrieval`, `testing` + +### ๐Ÿ—๏ธ Infrastructure & CI/CD (Label: `infrastructure`, `contributor-experience`) + +#### High Priority +1. **Contributor PR Testing Workflow Automation** + - **Context**: From Slack thread - need automated CI/CD for contributor PRs + - **Current**: Manual process requiring branch creation and manual test runs + - **Goal**: Automate the workflow described in Notion page + - **Labels**: `infrastructure`, `contributor-experience`, `enhancement` + +2. **GitHub Issue Management System** + - **Context**: From Slack thread - need systematic approach to creating and managing GitHub issues + - **Goal**: Template system and regular process for adding new issues + - **Labels**: `meta`, `contributor-experience`, `good first issue` + +### ๐Ÿ”ง Technical Debt & TODOs (Label: `technical-debt`, `enhancement`) + +#### Medium Priority +1. **User Role Permissions System** + - **File**: `cognee/modules/users/permissions/methods/check_permission_on_documents.py:19` + - **Issue**: User role permissions temporarily disabled during rework + - **Labels**: `enhancement`, `permissions`, `technical-debt` + +2. **Default Tasks Configuration** + - **File**: `cognee/api/v1/cognify/cognify.py:41` + - **Issue**: Need better way to handle default tasks configuration + - **Comment**: "Boris's comment" - find better solution + - **Labels**: `enhancement`, `api`, `technical-debt` + +3. **Graph Database ID System** + - **File**: `cognee/modules/data/models/GraphMetrics.py:12` + - **Issue**: Change ID to reflect unique id of graph database + - **Labels**: `enhancement`, `database`, `technical-debt` + +4. **Pipeline Task Assignment** + - **File**: `cognee/modules/pipelines/operations/pipeline.py:145` + - **Issue**: Random assignment needs permanent solution + - **Labels**: `enhancement`, `pipeline`, `technical-debt` + +5. **Datasets Permission Handling** + - **File**: `cognee/api/v1/datasets/routers/get_datasets_router.py:85` + - **Issue**: Handle situation differently if user doesn't have permission to access data + - **Labels**: `enhancement`, `permissions`, `api` + +6. **Model Support Extension** + - **File**: `cognee/api/v1/responses/routers/get_responses_router.py:53` + - **Issue**: Support other models (e.g. cognee-v1-openai-gpt-3.5-turbo, etc.) + - **Labels**: `enhancement`, `llm-support`, `api` + +### ๐Ÿ› Bug Fixes (Label: `bug`) + +#### Medium Priority +1. **Pipeline Status Update Lock** + - **File**: `cognee/modules/pipelines/operations/pipeline.py:139` + - **Issue**: UI lock needed to prevent multiple backend requests + - **Current**: Commented out with TODO + - **Labels**: `bug`, `ui`, `concurrency` + +2. **Network Visualization Properties** + - **File**: `cognee/modules/visualization/cognee_network_visualization.py:36` + - **Issue**: Decide what properties to show on nodes and edges + - **Labels**: `enhancement`, `visualization`, `ux` + +### ๐Ÿ“š Documentation & User Experience (Label: `documentation`, `good first issue`) + +#### Low Priority +1. **Code Processing Documentation** + - **File**: Multiple files with "Notes:" sections need better documentation + - **Files**: + - `cognee/tasks/documents/extract_chunks_from_documents.py:34` + - `cognee/tasks/graph/extract_graph_from_code.py:14` + - `cognee/tasks/documents/check_permissions_on_documents.py:11` + - **Labels**: `documentation`, `good first issue` + +2. **Test Input Documentation** + - **File**: `cognee/tests/unit/processing/chunks/test_input.py:141` + - **Issue**: Document that keyword arguments are exclusive to one or more contexts + - **Labels**: `documentation`, `testing`, `good first issue` + +### ๐Ÿ”ง Minor Code Quality Issues (Label: `code-quality`, `good first issue`) + +1. **Remove Ugly Hack** + - **File**: `cognee/modules/pipelines/operations/pipeline.py:114` + - **Issue**: Replace "ugly hack" with proper solution + - **Labels**: `code-quality`, `refactor`, `good first issue` + +2. **Extract Chunks TODO** + - **File**: `cognee/tasks/documents/extract_chunks_from_documents.py:46` + - **Issue**: Incomplete TODO comment "todo rita" + - **Labels**: `good first issue`, `clarification-needed` + +## Recommended GitHub Issue Labels + +### Priority Labels +- `priority-high` - Critical issues affecting functionality +- `priority-medium` - Important improvements +- `priority-low` - Nice-to-have enhancements + +### Type Labels +- `bug` - Something isn't working +- `enhancement` - New feature or improvement +- `technical-debt` - Code quality improvements +- `documentation` - Documentation improvements +- `testing` - Test-related issues + +### Area Labels +- `api` - API-related issues +- `database` - Database-related issues +- `llm-support` - LLM integration issues +- `ui` - User interface issues +- `infrastructure` - CI/CD and development workflow +- `permissions` - Authentication/authorization +- `retrieval` - Information retrieval functionality +- `visualization` - Data visualization features + +### Contributor Labels +- `good first issue` - Perfect for newcomers +- `contributor-experience` - Issues affecting contributor workflow +- `help wanted` - Extra attention needed + +## Next Steps + +1. **Create Issue Templates**: Set up templates for bug reports, feature requests, and enhancements +2. **Batch Issue Creation**: Create all identified issues with proper titles, descriptions, and labels +3. **Contributor Onboarding**: Update CONTRIBUTING.md with information about these issues +4. **Regular Review Process**: Establish weekly review to add new issues as discussed in Slack + +## Issue Creation Priority Order + +1. **High Priority Testing Issues** - These affect functionality and should be fixed first +2. **Infrastructure Issues** - Will improve contributor experience immediately +3. **Medium Priority TODOs** - Technical debt that affects maintainability +4. **Documentation & Good First Issues** - Perfect for new contributors to get started + +This analysis found **15+ distinct issues** that should be converted to GitHub issues, ranging from critical bugs to good first issues for new contributors. \ No newline at end of file