Class: ClaudeMemory::Commands::Checks::VecCheck

Inherits:
Object
  • Object
show all
Defined in:
lib/claude_memory/commands/checks/vec_check.rb

Overview

Checks sqlite-vec extension availability and index coverage

Instance Method Summary collapse

Instance Method Details

#callObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/claude_memory/commands/checks/vec_check.rb', line 8

def call
  vec_available = check_vec_availability
  coverage = check_vec_coverage

  warnings = []
  unless vec_available
    warnings << "sqlite-vec extension not available (vector search uses slower JSON fallback)"
  end

  if vec_available && coverage && coverage[:coverage_pct] < 100 && coverage[:with_embedding] > 0
    warnings << "Vec index coverage: #{coverage[:coverage_pct]}% (#{coverage[:vec_indexed]}/#{coverage[:with_embedding]} facts). Run 'claude-memory index --vec' to backfill."
  end

  {
    status: warnings.any? ? :warning : :ok,
    label: "sqlite-vec",
    message: vec_available ? "sqlite-vec available" : "sqlite-vec not available",
    details: {
      available: vec_available,
      coverage: coverage
    },
    warnings: warnings
  }
end