Skip to content

bug(knowledge): tree-sitter ImportError silently swallowed in CodeIndexer — /index/code shows skipped=1 with no diagnostic #4938

@mrveiss

Description

@mrveiss

Bug

extract_python and extract_javascript in code_indexer.py return {'nodes': [], 'edges': []} on ImportError (missing tree-sitter-python / tree-sitter-javascript):

except ImportError as exc:
    logger.error('tree-sitter-python not installed: %s', exc)
    return {'nodes': [], 'edges': []}

CodeIndexer.index_file only reads extracted['nodes'] and extracted['edges']. When nodes is empty the file is recorded as skipped with no error attached. The /index/code API response returns {success: 0, failed: 0, skipped: 1} with no indication that indexing produced zero results due to a missing dependency rather than an empty file.

Impact

Operators deploying without tree-sitter installed get no actionable feedback — silent failure.

Fix

Return a dep_error key from extractors on ImportError. In index_file, check for this key and append to result.errors with result.failed += 1.

File

autobot-backend/services/knowledge/code_indexer.py

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions