Brian Lee
c03bbff483
Constrain API-key model access programs to server support ( #53689 )
...
## Why
Servers can advertise cyber access programs without accepting them for API-key accounts. The TUI must account for server support before exposing those programs.
## What changed
- Check `features.api_key_cyber_access_programs` at startup and when loading models for API-key accounts, clearing `available_access_programs` when forwarding is unavailable.
- Use thread-scoped feature settings after thread creation and honor feature requirements and CLI overrides at startup.
- Refresh account-scoped models when switching to or from API-key authentication or changing API-key thread context, clearing cached access programs while the refresh is pending.
## Testing
Extend session tests to cover enabled and disabled server settings, CLI overrides, and catalog filtering before and after thread creation. Update account-change tests to handle the model refresh.
GitOrigin-RevId: c80de30a0063b84949098d137715d8678bd70587
2026-10-13 15:03:34 +00:00
..
2026-10-06 23:04:26 +00:00
2026-10-12 22:44:06 +00:00
2026-10-13 15:03:34 +00:00
2026-10-02 06:22:31 +00:00
2026-10-06 16:56:39 +00:00
2026-09-20 00:06:00 +00:00
2026-10-10 18:04:13 +00:00
2026-10-02 21:42:23 +00:00
2026-10-02 15:56:32 +00:00
2026-10-07 06:07:47 +00:00
2026-09-23 15:05:59 +00:00
2026-09-20 16:44:47 +00:00
2026-09-10 06:06:21 +00:00
2026-10-10 18:04:13 +00:00
2026-10-06 23:04:26 +00:00
2026-10-12 17:39:17 +00:00
2026-10-06 23:04:26 +00:00
2026-10-07 06:07:47 +00:00
2026-10-09 23:16:46 +00:00
2026-10-06 23:04:26 +00:00
2026-09-16 16:56:18 +00:00
2026-10-09 23:16:46 +00:00
2026-10-03 03:06:40 +00:00
2026-10-12 17:39:17 +00:00
2026-10-06 23:04:26 +00:00
2026-10-06 23:04:26 +00:00
2026-09-12 04:29:48 +00:00
2026-10-10 18:04:13 +00:00
2026-10-12 17:39:17 +00:00
2026-10-09 02:59:21 +00:00
2026-10-12 17:39:17 +00:00
2026-10-12 17:39:17 +00:00
2026-10-04 03:51:52 +00:00
2026-09-21 00:16:33 +00:00
2026-09-29 16:00:05 +00:00
2026-10-11 23:44:43 +00:00
2026-10-06 16:56:39 +00:00
2026-09-24 22:44:55 +00:00
2026-10-12 22:44:06 +00:00
2026-10-12 22:44:06 +00:00
2026-10-10 22:28:01 +00:00
2026-08-17 19:11:34 +00:00
2026-08-17 19:11:34 +00:00
2026-10-11 17:43:08 +00:00
2026-10-11 17:43:08 +00:00
2026-10-08 19:02:53 +00:00
2026-09-29 23:09:32 +00:00
2026-10-01 17:22:19 +00:00
2026-10-13 15:03:34 +00:00
2026-09-26 04:09:02 +00:00
2026-09-23 00:49:19 +00:00
2026-09-21 00:16:33 +00:00
2026-09-24 17:21:45 +00:00
2026-09-20 03:02:25 +00:00
2026-10-08 20:49:14 +00:00
2026-10-06 16:56:39 +00:00
2026-09-19 20:27:28 +00:00
2026-10-06 16:56:39 +00:00
2026-09-20 00:34:38 +00:00
2026-09-26 22:50:16 +00:00
2026-10-08 20:49:14 +00:00
2026-09-20 00:06:25 +00:00
2026-10-11 17:43:08 +00:00
2026-09-28 00:53:05 +00:00
2026-09-04 21:17:25 +00:00
2026-09-29 04:13:14 +00:00
2026-10-08 19:02:53 +00:00
2026-09-16 01:50:50 +00:00
2026-09-21 00:22:58 +00:00
2026-09-20 00:34:38 +00:00
2026-10-06 23:19:16 +00:00
2026-10-03 02:52:56 +00:00
2026-10-06 16:56:39 +00:00
2026-10-10 19:15:09 +00:00
2026-10-08 20:49:14 +00:00
2026-10-11 15:50:16 +00:00
2026-10-06 16:56:39 +00:00
2026-09-16 19:58:06 +00:00
2026-10-10 22:28:01 +00:00
2026-09-17 18:20:28 +00:00
2026-09-25 08:25:37 +00:00
2026-09-02 21:50:51 +00:00
2026-09-22 22:45:08 +00:00
2026-10-01 02:59:26 +00:00
2026-09-08 21:41:02 +00:00
2026-09-12 18:16:17 +00:00
2026-10-10 18:50:34 +00:00
2026-09-20 00:03:43 +00:00
2026-10-11 17:43:08 +00:00
2026-09-20 03:02:25 +00:00
2026-10-01 01:35:40 +00:00
2026-09-25 15:34:02 +00:00
2026-10-10 22:28:01 +00:00
2026-10-12 17:39:17 +00:00
2026-10-12 17:14:59 +00:00
2026-10-12 17:14:59 +00:00
2026-10-06 16:56:39 +00:00
2026-10-08 19:02:53 +00:00
2026-09-19 17:03:26 +00:00
2026-10-12 17:39:17 +00:00
2026-09-29 04:17:32 +00:00
2026-10-10 01:25:00 +00:00
2026-10-04 16:57:01 +00:00
2026-10-06 00:58:19 +00:00
2026-09-20 03:02:25 +00:00
2026-10-11 17:43:08 +00:00
2026-10-11 17:43:08 +00:00
2026-10-12 17:39:17 +00:00
2026-10-06 16:56:39 +00:00
2026-08-17 21:03:06 +00:00
2026-10-06 16:56:39 +00:00
2026-10-03 03:00:46 +00:00
2026-10-12 17:39:17 +00:00
2026-10-01 05:25:31 +00:00
2026-10-01 05:25:31 +00:00
2026-10-06 16:56:39 +00:00
2026-09-19 00:19:20 +00:00
2026-10-06 16:56:39 +00:00
2026-09-24 17:55:29 +00:00
2026-09-20 20:38:26 +00:00
2026-09-20 20:38:26 +00:00
2026-10-11 15:50:16 +00:00
2026-09-26 22:40:08 +00:00
2026-10-07 19:28:14 +00:00
2026-10-07 19:28:14 +00:00
2026-10-12 17:39:17 +00:00
2026-10-12 17:39:17 +00:00
2026-10-12 17:39:17 +00:00
2026-10-12 17:39:17 +00:00
2026-10-08 17:31:08 +00:00
2026-10-01 04:15:13 +00:00
2026-09-25 20:26:45 +00:00
2026-09-30 03:33:19 +00:00