Function: eca-chat--apply-per-chat-config
eca-chat--apply-per-chat-config is a natively compiled function
defined in eca-chat.el.
Signature
(eca-chat--apply-per-chat-config CHAT-CONFIG BUFFER)
Documentation
Apply the per-chat fields of CHAT-CONFIG to BUFFER's local state.
Used by eca-chat-config-updated to drive a single chat's UI from
a config/updated broadcast.
Source Code
;; Defined in /nix/store/jklqzw6pzz6j4jrbv8wy0iwgi7jlrbld-emacs-packages-deps/share/emacs/site-lisp/elpa/eca-20260928.1827/eca-chat.el
(defun eca-chat--apply-per-chat-config (chat-config buffer)
"Apply the per-chat fields of CHAT-CONFIG to BUFFER's local state.
Used by `eca-chat-config-updated' to drive a single chat's UI from
a `config/updated' broadcast."
(with-current-buffer buffer
(when (plist-member chat-config :variants)
(setq-local eca-chat--available-variants
(append (plist-get chat-config :variants) nil)))
(when (plist-member chat-config :selectModel)
(setq-local eca-chat--selected-model
(plist-get chat-config :selectModel)))
(when (plist-member chat-config :selectAgent)
(setq-local eca-chat--selected-agent
(plist-get chat-config :selectAgent)))
(when (plist-member chat-config :selectVariant)
(setq-local eca-chat--selected-variant
(eca-chat--normalize-variant
(plist-get chat-config :selectVariant))))
;; Server-driven trust restore on chat resume (eca #426): keep the
;; mode-line shield/flame indicator in sync with the persisted
;; per-chat trust state so it matches the server's auto-approval
;; behavior for subsequent tool calls.
(when (plist-member chat-config :selectTrust)
(setq-local eca-chat--selected-trust
(eq t (plist-get chat-config :selectTrust))))
(force-mode-line-update)))