Module: Legion::Extensions::Agentic::Memory::Archaeology::Runners::CognitiveArchaeology

Extended by:
CognitiveArchaeology
Includes:
Helpers::Lex
Included in:
Client, CognitiveArchaeology
Defined in:
lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb

Instance Method Summary collapse

Instance Method Details

#archaeology_status(engine: nil) ⇒ Object



62
63
64
65
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 62

def archaeology_status(engine: nil, **)
  eng = resolve_engine(engine)
  { success: true, report: eng.archaeology_report }
end

#create_site(domain:, engine: nil) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 12

def create_site(domain:, engine: nil, **)
  eng  = resolve_engine(engine)
  site = eng.create_site(domain: domain)
  { success: true, site: site.survey }
rescue ArgumentError => e
  { success: false, error: e.message }
end

#decay_all(rate: Helpers::Constants::PRESERVATION_DECAY, engine: nil) ⇒ Object



56
57
58
59
60
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 56

def decay_all(rate: Helpers::Constants::PRESERVATION_DECAY, engine: nil, **)
  eng = resolve_engine(engine)
  eng.decay_all!(rate: rate)
  { success: true, remaining: eng.all_artifacts.size }
end

#dig(site_id:, engine: nil) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 20

def dig(site_id:, engine: nil, **)
  eng    = resolve_engine(engine)
  result = eng.dig(site_id: site_id)
  { success: true }.merge(result)
rescue ArgumentError => e
  { success: false, error: e.message }
end

#excavate(site_id:, engine: nil) ⇒ Object



28
29
30
31
32
33
34
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 28

def excavate(site_id:, engine: nil, **)
  eng      = resolve_engine(engine)
  artifact = eng.excavate(site_id: site_id)
  { success: true, artifact: artifact.to_h }
rescue ArgumentError => e
  { success: false, error: e.message }
end

#list_artifacts(engine: nil, type: nil, domain: nil, depth_level: nil) ⇒ Object



46
47
48
49
50
51
52
53
54
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 46

def list_artifacts(engine: nil, type: nil, domain: nil,
                   depth_level: nil, **)
  eng     = resolve_engine(engine)
  results = filter_results(eng.all_artifacts,
                           type: type, domain: domain,
                           depth_level: depth_level)
  { success: true, artifacts: results.map(&:to_h),
    count: results.size }
end

#restore_artifact(artifact_id:, boost: 0.15, engine: nil) ⇒ Object



36
37
38
39
40
41
42
43
44
# File 'lib/legion/extensions/agentic/memory/archaeology/runners/cognitive_archaeology.rb', line 36

def restore_artifact(artifact_id:, boost: 0.15, engine: nil, **)
  eng      = resolve_engine(engine)
  artifact = eng.restore_artifact(
    artifact_id: artifact_id, boost: boost
  )
  { success: true, artifact: artifact.to_h }
rescue ArgumentError => e
  { success: false, error: e.message }
end