Class: ClaudeMemory::Audit::Runner

Inherits:
Object
  • Object
show all
Defined in:
lib/claude_memory/audit/runner.rb

Overview

Orchestrates the audit: opens a StoreManager, runs every check in CHECK_METHODS, collects findings, computes an exit code.

The runner itself is read-only. Suggestions in each Finding name the commands a user (or skill) would run to remediate; the audit never writes.

Defined Under Namespace

Classes: Result

Constant Summary collapse

CHECK_METHODS =
%i[
  open_conflicts
  single_cardinality_multiplicity
  single_cardinality_churn
  distillation_backlog
  shortcut_decision_leak
  shortcut_convention_scope
  duplicate_global_conventions
  bare_conclusion_rate
  project_starvation
  auto_memory_unimported
  orphaned_observations
  observation_promotion_consistency
  observation_tombstone_chain
  observation_status_corroboration
].freeze

Instance Method Summary collapse

Constructor Details

#initialize(manager: nil) ⇒ Runner

Returns a new instance of Runner.



37
38
39
# File 'lib/claude_memory/audit/runner.rb', line 37

def initialize(manager: nil)
  @manager = manager || Store::StoreManager.new
end

Instance Method Details

#runObject



41
42
43
44
# File 'lib/claude_memory/audit/runner.rb', line 41

def run
  findings = CHECK_METHODS.flat_map { |method| Checks.public_send(method, @manager) }
  Result.new(findings: findings, stats: collect_stats)
end