MkDev11
111d6839e0
Feat/Abstract Assistant into module with registry (#1020)
* Abstract Assistant into module with registry (fixes #1016)
- Add Assistant module with registry/factory (builtin, external)
- Assistant.for_chat(chat) routes by family.assistant_type
- Assistant.config_for(chat) delegates to Builtin for backward compat
- Assistant.available_types returns registered types
- Add Assistant::Base (Broadcastable, respond_to contract)
- Move current behavior to Assistant::Builtin (Provided + Configurable)
- Add Assistant::External stub for future OpenClaw/WebSocket
- Migration: add families.assistant_type (default builtin)
- Family: validate assistant_type inclusion
- Tests: for_chat routing, available_types, External stub, blank chat guard
* Fix RuboCop layout: indentation in Assistant module and tests
* Move new test methods above private so Minitest discovers them
* Clear thinking indicator in External#respond_to to avoid stuck UI
* Rebase onto upstream main: fix schema to avoid spurious diffs
- Rebase feature/abstract-assistant-1016 onto we-promise/main
- Rename migration to 20260218120001 to avoid duplicate version with backfill_crypto_subtype
- Regenerate schema from upstream + assistant_type only (keeps vector_store_id, realized_gain, etc.)
- PR schema diff now shows only assistant_type addition and version bump
---------
Co-authored-by: mkdev11 <jaysmth689+github@users.noreply.github.com>
2026-02-23 07:38:58 -05:00
..
2026-01-16 21:04:10 +01:00
2026-02-11 15:22:56 +01:00
2026-02-19 18:07:47 +01:00
2026-01-07 15:59:04 +01:00
2026-01-07 15:59:04 +01:00
2026-01-22 22:23:09 +01:00
2026-02-06 18:04:03 +01:00
2026-02-06 18:04:03 +01:00
2026-02-07 16:41:31 +01:00
2026-02-06 18:30:50 +01:00
2026-02-08 18:19:37 +01:00
2026-01-09 13:14:14 +01:00
2026-02-19 18:58:01 +01:00
2026-01-23 00:53:24 +01:00
2026-02-07 16:41:31 +01:00
2025-10-28 19:32:27 +01:00
2025-05-24 19:16:55 -04:00
2026-02-08 18:19:37 +01:00
2025-11-01 09:12:42 +01:00
2026-02-16 13:50:06 +01:00
2026-01-27 15:45:50 +01:00
2025-11-24 14:07:14 +01:00
2026-01-10 17:24:23 +01:00
2026-01-10 20:11:00 +01:00
2026-01-08 11:44:38 +01:00
2026-01-22 20:52:49 +01:00
2026-02-16 13:50:06 +01:00
2026-02-16 13:50:06 +01:00
2025-07-15 11:42:41 -04:00
2026-02-11 15:22:56 +01:00
2026-01-22 15:25:43 +01:00
2026-01-07 15:59:04 +01:00
2025-11-24 14:07:14 +01:00
2026-02-03 15:45:25 +01:00
2026-02-06 21:25:52 +01:00
2025-05-27 05:04:58 -05:00
2026-02-23 07:38:58 -05:00
2025-11-01 10:15:33 +01:00
2026-01-21 22:10:15 +01:00
2026-01-31 09:41:28 +01:00
2025-12-22 20:41:37 +01:00
2026-02-15 10:33:51 +01:00
2025-10-24 12:04:19 +02:00
2026-01-21 22:56:39 +01:00
2026-01-21 22:56:39 +01:00
2026-01-18 11:27:09 +01:00
2026-01-07 15:59:04 +01:00
2026-02-19 19:51:42 +01:00
2026-02-19 18:07:47 +01:00
2026-02-11 15:22:56 +01:00
2025-09-24 00:19:51 +02:00
2026-02-15 10:33:51 +01:00
2026-02-06 18:30:50 +01:00
2025-09-24 00:19:51 +02:00
2026-01-12 14:40:30 +01:00
2026-01-22 22:23:09 +01:00
2026-02-08 18:19:37 +01:00
2026-02-08 18:19:37 +01:00
2026-01-18 17:29:02 +01:00
2026-02-09 11:09:25 +01:00
2026-01-10 15:43:07 +01:00
2026-01-22 20:37:07 +01:00
2026-02-06 18:04:29 +01:00
2025-10-25 22:23:28 +02:00
2026-02-03 15:45:25 +01:00
2025-11-11 19:51:07 +01:00
2025-10-31 13:29:44 +01:00
2025-12-17 16:03:05 +01:00
2025-12-07 13:20:54 +01:00
2026-02-13 19:53:24 +01:00
2025-11-11 19:51:07 +01:00
2026-01-13 09:32:05 +01:00
2025-08-12 02:59:16 +02:00
2025-11-17 21:51:37 +01:00
2025-10-22 19:51:24 +02:00
2026-01-23 00:27:00 +01:00
2026-01-22 20:52:49 +01:00
2026-01-23 00:27:00 +01:00
2026-01-22 20:52:49 +01:00
2026-02-10 23:14:58 +01:00
2025-05-24 17:58:17 -04:00
2026-01-16 21:04:10 +01:00
2026-01-16 21:04:10 +01:00
2026-01-23 22:12:02 +01:00
2026-02-16 13:50:06 +01:00
2026-01-12 15:35:14 -05:00
2025-05-27 05:04:58 -05:00
2026-02-09 11:09:25 +01:00