Module: Legion::MCP::OverrideBroadcast
- Extended by:
- Logging::Helper
- Defined in:
- lib/legion/mcp/override_broadcast.rb
Constant Summary collapse
- EXCHANGE =
'legion.mesh'- ROUTING_KEY =
'override.confirmed'- CORROBORATION_BOOST =
0.3
Class Method Summary collapse
- .publish_confirmation(tool:, lex:, confidence:, tests:) ⇒ Object
- .receive_confirmation(tool:, lex:, confidence:, tests:, node:) ⇒ Object
Class Method Details
.publish_confirmation(tool:, lex:, confidence:, tests:) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/legion/mcp/override_broadcast.rb', line 14 def publish_confirmation(tool:, lex:, confidence:, tests:) return unless defined?(Legion::Transport::Messages::Dynamic) node_id = begin Legion::Settings.dig(:node, :id) rescue StandardError => e handle_exception(e, level: :debug, operation: 'legion.mcp.override_broadcast.publish_confirmation') 'unknown' end Legion::Transport::Messages::Dynamic.new( function: 'override_confirmed', exchange: EXCHANGE, routing_key: ROUTING_KEY, opts: { tool: tool, lex: lex, confidence: confidence, tests: tests, node: node_id, timestamp: Time.now.iso8601 } ).publish rescue StandardError => e handle_exception(e, level: :warn, operation: 'legion.mcp.override_broadcast.publish_confirmation') log.warn("Override broadcast failed: #{e.}") end |
.receive_confirmation(tool:, lex:, confidence:, tests:, node:) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/legion/mcp/override_broadcast.rb', line 37 def receive_confirmation(tool:, lex:, confidence:, tests:, node:) return unless defined?(Legion::LLM::OverrideConfidence) existing = Legion::LLM::OverrideConfidence.lookup(tool) if existing new_confidence = (existing[:confidence] + CORROBORATION_BOOST).clamp(0.0, 1.0) Legion::LLM::OverrideConfidence.record(tool: tool, lex: lex, confidence: new_confidence) else Legion::LLM::OverrideConfidence.record(tool: tool, lex: lex, confidence: confidence * 0.8) end store_to_apollo(tool: tool, lex: lex, confidence: confidence, tests: tests, node: node) rescue StandardError => e handle_exception(e, level: :warn, operation: 'legion.mcp.override_broadcast.receive_confirmation') log.warn("Override receive failed: #{e.}") end |