rhan-oai
21295f47e2
[codex-tui] pass thread source for tui threads ( #21401 )
...
## Summary
- mark TUI-created thread starts and forks with explicit `thread_source
= user`
- add focused coverage for embedded and remote lifecycle request
builders
## Why
Thread analytics now consume an explicit thread-level source
classification instead of inferring it from `session_source`. The TUI
still omitted that field, so TUI-created interactive threads would
continue to land as `null` even after the new analytics plumbing
shipped.
## Validation
- `cargo test -p codex-tui app_server_session --lib`
2026-05-06 13:18:41 -07:00
..
2026-05-06 08:35:42 -07:00
2026-05-06 19:42:45 +00:00
2026-05-06 13:11:44 -07:00
2026-05-05 11:17:47 -07:00
2026-05-05 11:17:47 -07:00
2026-05-01 09:39:48 -07:00
2026-05-05 11:17:47 -07:00
2026-04-21 17:10:36 +00:00
2026-05-04 16:11:15 -03:00
2026-04-30 22:42:48 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 13:32:54 -07:00
2026-05-05 11:17:47 -07:00
2026-05-05 11:17:47 -07:00
2026-04-28 08:51:44 -07:00
2026-04-30 11:34:34 -07:00
2026-05-05 11:17:47 -07:00
2026-05-06 08:35:42 -07:00
2026-04-30 11:34:34 -07:00
2026-05-06 08:35:42 -07:00
2026-04-30 11:34:34 -07:00
2026-05-06 13:18:41 -07:00
2026-05-06 08:35:42 -07:00
2026-04-30 10:52:19 -07:00
2026-04-13 18:27:00 -07:00
2026-04-10 20:25:31 -07:00
2026-04-30 11:34:34 -07:00
2026-05-04 16:11:15 -03:00
2026-05-06 13:11:44 -07:00
2026-04-20 16:12:17 -07:00
2026-05-05 16:18:02 +00:00
2026-04-29 17:22:41 -07:00
2026-05-02 01:20:57 +00:00
2026-04-25 22:00:32 -03:00
2026-04-30 11:34:34 -07:00
2026-04-30 10:52:19 -07:00
2026-04-30 11:34:34 -07:00
2026-04-17 17:58:32 -07:00
2026-04-29 00:45:24 +00:00
2026-05-05 17:09:25 -03:00
2026-04-30 22:42:07 -07:00
2026-05-06 08:35:42 -07:00
2026-05-01 09:39:48 -07:00
2026-05-05 11:17:47 -07:00
2026-05-04 19:18:56 +00:00
2026-05-04 19:18:56 +00:00
2026-05-05 11:17:47 -07:00
2026-05-05 21:45:29 +00:00
2026-04-13 18:27:00 -07:00
2026-04-21 22:33:24 -07:00
2026-04-30 11:34:34 -07:00
2026-04-27 13:40:46 -07:00
2026-04-27 13:40:46 -07:00
2026-04-25 22:00:32 -03:00
2026-04-19 22:39:53 -07:00
2026-04-29 17:22:41 -07:00
2026-04-25 22:00:32 -03:00
2026-05-01 09:07:56 -07:00
2026-04-30 11:34:34 -07:00
2026-04-25 17:09:29 -07:00
2026-04-10 20:25:31 -07:00
2026-05-05 11:17:47 -07:00
2026-04-30 11:34:34 -07:00
2026-04-25 22:00:32 -03:00
2026-05-06 15:23:25 +02:00
2026-04-10 20:25:31 -07:00
2026-05-04 11:46:03 -07:00
2026-05-06 08:35:42 -07:00
2026-04-20 20:46:55 -07:00
2026-05-05 11:17:47 -07:00
2026-05-01 09:07:56 -07:00
2026-05-02 01:20:57 +00:00
2026-05-02 01:20:57 +00:00
2026-04-17 08:39:37 -07:00
2026-04-30 11:34:34 -07:00
2026-04-30 22:42:48 -07:00
2026-04-30 10:52:19 -07:00
2026-04-20 00:37:40 +00:00
2026-04-25 22:00:32 -03:00
2026-05-05 11:17:47 -07:00
2026-04-27 23:33:59 -07:00
2026-04-25 22:00:32 -03:00
2026-04-25 17:09:29 -07:00
2026-04-25 17:09:29 -07:00
2026-04-30 11:34:34 -07:00
2026-04-25 22:00:32 -03:00
2026-05-05 17:09:25 -03:00