Skip to content

Enhanced CodeChunk Model with Rich Metadata #8

Description

@FredericoPerimLopes

🎯 Objective

Enhance the CodeChunk model to include rich metadata for improved code retrieval accuracy and semantic understanding.

📋 Current State

  • Basic CodeChunk model with file_path, content, line numbers, language, semantic_type
  • Limited metadata for search relevance scoring
  • No cross-file relationship tracking

🚀 Proposed Enhancements

Enhanced CodeChunk Model Fields

class CodeChunk(BaseModel):
    # Existing fields
    file_path: str
    content: str
    start_line: int
    end_line: int
    language: str
    semantic_type: str
    embedding: list[float] | None = None
    
    # New metadata fields
    function_signature: str | None = None          # Full function signature
    class_name: str | None = None                  # Parent class name
    function_name: str | None = None               # Function/method name
    parameter_types: list[str] | None = None       # Parameter type annotations
    return_type: str | None = None                 # Return type annotation
    inheritance_chain: list[str] | None = None     # Class inheritance hierarchy
    import_statements: list[str] | None = None     # Related imports
    docstring: str | None = None                   # Documentation string
    complexity_score: int | None = None            # Cyclomatic complexity
    dependencies: list[str] | None = None          # Cross-file dependencies
    interfaces: list[str] | None = None            # Implemented interfaces
    decorators: list[str] | None = None            # Function/class decorators

✅ Success Criteria

  • Enhanced CodeChunk model with all metadata fields
  • Backward compatibility with existing chunks
  • Database schema migration support
  • Updated tests for new model structure
  • Documentation for new metadata fields

🔗 Dependencies

  • None (foundation task)

📅 Estimated Timeline

1-2 days

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions