Class: Agent::SessionContext::SemanticCategories

Inherits:
Object
  • Object
show all
Defined in:
lib/agent/session_context/semantic_categories.rb

Defined Under Namespace

Classes: Category

Constant Summary collapse

ALL =
[
  Category.new(
    external_key: "goals",
    internal_kind: :goal,
    snapshot_field: :goals,
    prompt_description: "stated goals or desired outcomes from the conversation",
    item_shape: :text
  ),
  Category.new(
    external_key: "decisions",
    internal_kind: :decision,
    snapshot_field: :decisions,
    prompt_description: "decisions the participants have already made",
    item_shape: :text
  ),
  Category.new(
    external_key: "terms",
    internal_kind: :term,
    snapshot_field: :terms,
    prompt_description: "project-specific terms with their definitions",
    item_shape: :term
  ),
  Category.new(
    external_key: "constraints",
    internal_kind: :constraint,
    snapshot_field: :constraints,
    prompt_description: "limits, requirements, or non-negotiables",
    item_shape: :text
  ),
  Category.new(
    external_key: "open_questions",
    internal_kind: :open_question,
    snapshot_field: :open_questions,
    prompt_description: "questions that are still unresolved",
    item_shape: :text
  ),
  Category.new(
    external_key: "next_actions",
    internal_kind: :next_action,
    snapshot_field: :next_actions,
    prompt_description: "concrete follow-up actions that someone should take",
    item_shape: :text
  )
].freeze

Class Method Summary collapse

Class Method Details

.all ⇒ Object



66
67
68
# File 'lib/agent/session_context/semantic_categories.rb', line 66

def all
  ALL
end

.external_keys ⇒ Object



70
71
72
# File 'lib/agent/session_context/semantic_categories.rb', line 70

def external_keys
  EXTERNAL_KEYS
end

.lookup(identifier) ⇒ Object



78
79
80
81
82
83
84
85
# File 'lib/agent/session_context/semantic_categories.rb', line 78

def lookup(identifier)
  case identifier
  when String
    EXTERNAL_INDEX[identifier]
  when Symbol
    INTERNAL_INDEX[identifier]
  end
end

.snapshot_fields ⇒ Object



74
75
76
# File 'lib/agent/session_context/semantic_categories.rb', line 74

def snapshot_fields
  SNAPSHOT_FIELDS
end