mattermost-mobile-upstream/app/products
Nick Misasi 344062a19d
[MM-68856] Respect default agent and persist last-selected agent in agent selectors (#9829)
* [MM-68856] Respect default agent and persist last-selected agent in agent selectors

Mobile agent selectors always defaulted to the first agent and did not
remember the user's previous choice, ignoring the system-wide default
agent configured on the server.

Selectors now resolve the active agent with the precedence
saved-preference -> system default (is_default) -> first, and persist
explicit selections via the shared `agents/selected_agent` core
preference so the choice restores across surfaces and clients.

Applied to the rewrite options, channel summary, and agent chat
selectors. Part of a coordinated 3-repo change (webapp,
mattermost-plugin-agents, mobile) sharing the same preference contract.

Co-authored-by: Cursor <cursoragent@cursor.com>

* [MM-68856] Address review feedback on agent selector

- await savePreference in saveSelectedAgent so its errors stay inside the
  try/catch and callers get a consistent {error} result.
- Surface persistence failures from the resolved {error} on all three
  selector surfaces (agent chat, channel summary, rewrite options) via
  logError instead of dropping them silently.
- Rename agent selection tests to the `should...` convention.

Co-authored-by: Cursor <cursoragent@cursor.com>

* [MM-68856] Address review feedback on agent selector structure

Split channel summary and rewrite options HOCs into index files, switch
persist calls to async/await, and cover non-empty selectedAgentId on mount.

Co-authored-by: Cursor <cursoragent@cursor.com>

* [MM-68856] Log agent selection failures with getFullErrorMessage

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 20:13:11 -04:00
..
agents [MM-68856] Respect default agent and persist last-selected agent in agent selectors (#9829) 2026-07-16 20:13:11 -04:00
boards Add BoardView, PropertyField, PropertyValue WatermelonDB tables (#9708) 2026-06-01 12:46:40 +02:00
calls fixes audio devices not showing on android audio selector during a call (#9905) 2026-07-02 16:47:32 +02:00
playbooks Add date/datetime field support with timezone features for Apps Forms (#9521) 2026-07-16 08:09:47 -06:00