Class: Portage::Ucp::Authenticator Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/portage/ucp/authenticator.rb

Overview

This class is abstract.

Pluggable auth contract (§9). Given the MCP server_context for a tool call, return an auth context (any truthy value) or raise Portage::Ucp::AuthenticationError. There is deliberately no default that allows anonymous mutation — an unconfigured server rejects every mutating capability call (see UnconfiguredAuthenticator below). Mcp::Server.build calls it only for mutating tools: those whose adapter method takes idempotency_key:. Every other tool (catalog search, product, cart, checkout and order lookups) never reaches it, and Server.build has no option to change that.

Direct Known Subclasses

UnconfiguredAuthenticator

Instance Method Summary collapse

Instance Method Details

#call(_server_context) ⇒ Object



13
14
15
# File 'lib/portage/ucp/authenticator.rb', line 13

def call(_server_context)
  raise NotImplementedError, "#{self.class} must implement #call"
end