update_evaluator_config
Update the active evaluator configuration for the current trading profile by enabling or disabling specific evaluators, with an option to deactivate all unlisted evaluators.
Instructions
Update the current profile's evaluator-activation config.
Maps to POST /config, JSON body {"evaluator_config": patch, "deactivate_others": deactivate_others} -- TWO top-level keys, never one
nested under the other -- see this module's docstring for the full
source-verified derivation of this exact shape and the request-body
key's literal value (EVALUATOR_CONFIG_KEY = "evaluator_config",
resolving the tool spec's/requirements doc's open question #12). patch
is submitted as-is, unwrapped, mapping evaluator class names to a
boolean (or "true"/"false" string) activation state -- the same
shape update_trading_config submits under its own key, since both
reach the same underlying models.update_tentacles_activation_config.
deactivate_others (default False, resolving open question #13):
when True, every OTHER currently-active evaluator NOT named in patch
is force-disabled -- confirmed by tracing models. update_tentacles_activation_config into TentaclesSetupConfiguration. update_activation_configuration/_deactivate_other_evaluators's own
body (see this module's docstring for the full trace); this only ever
touches tentacles whose type is one of the four evaluator subtypes
(technical-analysis/social/real-time/scripted) -- trading modes and
strategies are never affected by this flag. False (this tool's
default) is purely additive: only the evaluators named in patch have
their activation state changed, every other tentacle is left untouched.
patch's keys are evaluator CLASS NAMES, not display names -- e.g.
"RSIMomentumEvaluator", "BBMomentumEvaluator",
"DoubleMovingAverageTrendEvaluator", "MACDMomentumEvaluator",
"SuperTrendEvaluator" are real examples confirmed against the OctoBot
2.1.1 test instance's default evaluator set. Use this module's own
list_evaluators() (task 19, ADR-0009 -- reversed to GO by explicit user
decision after originally recommending NO-GO here) to discover every
evaluator's exact class name and current activation state: its name
field is exactly the string this tool's patch keys must equal, closing
the loop structurally. get_tentacle_config(name) does NOT expose
activation state (confirmed live: its config field holds only that
evaluator's own tunable parameters, e.g. RSI thresholds -- never an
enabled/disabled flag).
Output: {"evaluator_updated_config": <passthrough of OctoBot's own echoed value for this key from its success response>} -- matches the
route's own response shape (NFR-8), by direct analogy to
update_trading_config's own confirmed {"trading_updated_config": ...}
shape (same response envelope, different key extracted).
Not confirm-gated (ADR-0003): mutates which evaluators are active, does
not destroy data, expose credentials, or enable live trading. Raises
EvaluatorConfigUpdateRejectedError on any non-2xx response -- see this
module's docstring for why, for this tool's own request shape, OctoBot's
own error text is confirmed to always be an empty string in practice
(the evaluator_config branch never populates the route's own
err_message variable, exactly like the trading_config branch
update_trading_config documents).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| patch | Yes | ||
| deactivate_others | No |