Module: Legion::Extensions::Agentic::Self::Agency::Helpers::Constants

Defined in:
lib/legion/extensions/agentic/self/agency/helpers/constants.rb

Constant Summary collapse

DEFAULT_EFFICACY =

Initial self-efficacy for new domains (moderate confidence)

0.5
EFFICACY_ALPHA =

EMA alpha for efficacy updates (slow adaptation)

0.12
MASTERY_BOOST =

How much mastery success boosts efficacy

0.15
FAILURE_PENALTY =

How much failure reduces efficacy (asymmetric — failures hit harder)

0.20
VICARIOUS_MULTIPLIER =

Vicarious learning multiplier (learning from others’ outcomes)

0.4
PERSUASION_MULTIPLIER =

Verbal persuasion multiplier (being told you can/can’t do something)

0.25
PHYSIOLOGICAL_MULTIPLIER =

Physiological state influence on efficacy

0.15
EFFICACY_FLOOR =

Minimum efficacy (never zero — always some belief in possibility)

0.05
EFFICACY_CEILING =

Maximum efficacy (never perfectly certain)

0.98
DECAY_RATE =

Domain decay rate per tick (unused domains slowly regress toward default)

0.002
MAX_DOMAINS =

Maximum tracked domains

100
MAX_HISTORY_PER_DOMAIN =

Maximum outcome history per domain

50
MAX_TOTAL_HISTORY =

Maximum total outcome events

500
EFFICACY_SOURCES =

Sources of efficacy information (Bandura’s four sources)

%i[mastery vicarious persuasion physiological].freeze
ATTRIBUTION_LEVELS =

Agency attribution levels

{
  full_agency:    0.8,
  partial_agency: 0.5,
  low_agency:     0.3,
  no_agency:      0.0
}.freeze
OUTCOME_TYPES =

Outcome types

%i[success failure partial_success unexpected].freeze
EFFICACY_LABELS =

Efficacy level labels

{
  (0.8..)     => :highly_capable,
  (0.6...0.8) => :capable,
  (0.4...0.6) => :uncertain,
  (0.2...0.4) => :doubtful,
  (..0.2)     => :helpless
}.freeze