Colby McHenry
3298db1292
feat(steps): render fork decisions as points with per-arm edges and captions
...
Adds full support for decisions at forks in both the code graph and the UI. Key changes introduce a decision model for forks (innermost guard decisions), propagate decision data through the server and wire layer, and render decisions in the UI as distinct points with labeled arms. New components (ForkPoint and DecisionCaption) visualize the decision and its arms, while utilities (armWords, forkLabel) generate arm captions. The order reading (canvas) now shows decisions as points, and arms are drawn as separate edges (yes/no/case), with labels and captions displayed under the deciding box. Tests, typings, and docs updated to reflect the new decision visualization and behavior, including selection reach and resting-label semantics. This lays the groundwork for clearer visualization of conditional navigation and guarded branches on the order canvas.
2026-08-31 17:10:13 -05:00
..
2026-04-06 14:27:13 -05:00
2026-08-26 10:37:50 -05:00
2026-06-02 10:15:27 -05:00
2026-06-22 12:06:35 -05:00
2026-06-28 22:46:24 -05:00
2026-07-06 09:07:15 -05:00
2026-07-12 20:09:03 -05:00
2026-07-15 19:11:06 -05:00
2026-08-29 13:40:05 -05:00
2026-08-29 13:46:01 -05:00
2026-07-19 17:48:27 -05:00
2026-08-06 17:50:25 +09:00
2026-06-20 21:22:52 -05:00
2026-07-02 18:41:55 -05:00
2026-07-02 19:02:16 -05:00
2026-06-13 14:48:52 -05:00
2026-08-26 10:39:06 -05:00
2026-08-26 10:38:21 -05:00
2026-07-16 14:39:26 -05:00
2026-07-16 15:30:17 -05:00
2026-06-28 22:01:47 -05:00
2026-08-26 16:17:09 -05:00
2026-08-20 12:53:49 -05:00
2026-06-13 15:18:55 -05:00
2026-07-09 20:54:45 -05:00
2026-05-21 15:48:04 -05:00
2026-06-08 00:10:10 -04:00
2026-06-08 22:43:54 -04:00
2026-08-06 17:50:25 +09:00
2026-07-01 12:13:42 -05:00
2026-06-08 01:25:21 -04:00
2026-06-28 20:11:05 -05:00
2026-07-07 09:13:13 -05:00
2026-06-13 13:53:38 -05:00
2026-08-20 12:53:49 -05:00
2026-06-27 13:47:29 -05:00
2026-08-03 23:13:59 -05:00
2026-06-21 14:03:07 -05:00
2026-08-27 07:57:00 -05:00
2026-08-22 11:55:14 -05:00
2026-05-24 04:41:04 -05:00
2026-07-02 12:56:02 -05:00
2026-08-26 10:39:15 -05:00
2026-08-26 10:39:15 -05:00
2026-06-26 20:25:47 -05:00
2026-08-04 00:56:50 -05:00
2026-08-04 02:13:46 -05:00
2026-08-01 01:50:44 -05:00
2026-08-06 15:10:46 -05:00
2026-06-22 12:06:35 -05:00
2026-08-05 13:47:24 -05:00
2026-08-06 14:35:56 -05:00
2026-08-04 00:37:17 -05:00
2026-08-06 02:59:46 -05:00
2026-08-06 14:07:22 -05:00
2026-08-06 21:11:51 -05:00
2026-07-10 16:20:28 -05:00
2026-07-03 14:32:20 -05:00
2026-08-06 01:44:45 -05:00
2026-08-22 09:05:30 -07:00
2026-08-20 09:10:07 -07:00
2026-08-04 00:56:50 -05:00
2026-08-04 00:02:45 -05:00
2026-08-06 03:45:28 -05:00
2026-06-28 22:23:35 -05:00
2026-08-05 13:24:06 -05:00
2026-06-22 12:06:35 -05:00
2026-06-06 11:02:59 -04:00
2026-08-31 17:10:13 -05:00
2026-06-22 16:16:23 -05:00
2026-08-26 10:39:15 -05:00
2026-05-26 02:14:00 -05:00
2026-06-13 09:48:44 -05:00
2026-07-16 16:11:24 -05:00
2026-08-20 12:53:49 -05:00
2026-07-07 14:17:16 -05:00
2026-08-28 14:52:40 -05:00
2026-07-02 17:05:51 -05:00
2026-08-01 01:36:07 -05:00
2026-08-06 04:54:05 -05:00
2026-08-03 23:13:59 -05:00
2026-05-28 23:41:11 -05:00
2026-08-22 11:53:33 -05:00
2026-05-20 10:32:08 -05:00
2026-07-16 14:52:11 -05:00
2026-06-22 18:16:11 -05:00
2026-07-10 03:42:30 -05:00
2026-07-01 13:37:20 -05:00
2026-08-20 09:10:07 -07:00
2026-07-07 10:11:58 -05:00
2026-07-07 13:01:38 -05:00
2026-06-29 23:15:41 -05:00
2026-06-26 20:25:47 -05:00
2026-06-29 23:35:50 -05:00
2026-08-22 11:55:10 -05:00
2026-05-28 15:13:23 -05:00
2026-08-28 13:45:38 -05:00
2026-06-02 14:23:33 -05:00
2026-07-17 16:56:41 -05:00
2026-07-20 13:46:12 -05:00
2026-07-20 19:55:48 -05:00
2026-08-26 10:38:29 -05:00
2026-07-20 19:55:48 -05:00
2026-07-20 17:33:18 -05:00
2026-07-20 18:42:14 -05:00
2026-07-20 16:08:22 -05:00
2026-07-20 18:28:28 -05:00
2026-08-20 12:16:51 -05:00
2026-07-20 15:44:13 -05:00
2026-08-26 10:36:53 -05:00
2026-07-20 19:02:52 -05:00
2026-07-20 19:02:52 -05:00
2026-07-20 17:09:12 -05:00
2026-07-17 01:28:21 -05:00
2026-06-21 09:45:24 -05:00
2026-08-20 12:53:49 -05:00
2026-07-10 08:25:23 -05:00
2026-06-22 12:41:26 -05:00
2026-06-22 11:31:49 -05:00
2026-08-20 12:53:49 -05:00
2026-05-25 23:48:10 -05:00
2026-05-26 15:39:48 -05:00
2026-06-02 17:49:15 -05:00
2026-05-25 19:54:56 -05:00
2026-06-26 19:31:12 -05:00
2026-05-20 11:35:13 -05:00
2026-08-01 01:12:52 -05:00
2026-06-22 12:06:35 -05:00
2026-07-07 08:45:12 -05:00
2026-08-26 10:38:56 -05:00
2026-06-20 13:23:16 -05:00
2026-06-27 15:47:31 -05:00
2026-06-23 12:57:47 -05:00
2026-06-20 22:34:24 -05:00
2026-07-16 16:01:08 -05:00
2026-07-07 09:46:22 -05:00
2026-08-22 11:54:27 -05:00
2026-08-28 09:46:50 -05:00
2026-08-31 11:34:26 -05:00
2026-07-06 12:41:32 -05:00
2026-06-22 12:06:35 -05:00
2026-05-21 15:48:04 -05:00
2026-05-21 15:48:04 -05:00
2026-05-31 19:05:40 -05:00
2026-07-07 08:45:12 -05:00
2026-06-02 10:15:27 -05:00
2026-06-20 15:17:31 -05:00
2026-07-06 14:20:19 -05:00
2026-08-20 12:53:49 -05:00
2026-07-10 15:47:57 -05:00
2026-06-20 20:30:13 -05:00
2026-06-26 20:25:47 -05:00
2026-08-03 23:13:59 -05:00
2026-05-26 03:25:06 -05:00
2026-06-24 14:48:16 -05:00
2026-08-22 09:05:30 -07:00
2026-07-08 23:18:23 -05:00
2026-06-21 11:35:12 -05:00
2026-08-28 09:46:50 -05:00
2026-08-28 09:46:50 -05:00
2026-08-31 11:34:26 -05:00
2026-06-20 14:45:51 -05:00
2026-08-20 12:36:22 -05:00
2026-07-10 17:37:20 -05:00
2026-08-26 10:38:13 -05:00
2026-07-20 20:11:31 -05:00
2026-08-28 09:46:50 -05:00
2026-06-20 19:23:37 -05:00
2026-06-22 12:06:35 -05:00
2026-05-07 20:35:49 -05:00
2026-08-03 23:13:59 -05:00
2026-07-02 17:23:54 -05:00
2026-06-21 01:32:33 -05:00
2026-06-20 22:00:43 -05:00
2026-05-21 15:48:04 -05:00
2026-07-07 08:45:12 -05:00
2026-07-06 09:07:15 -05:00
2026-06-11 12:04:51 -05:00
2026-08-28 09:46:50 -05:00
2026-05-07 22:03:33 -05:00
2026-07-19 17:48:27 -05:00
2026-07-02 17:11:19 -05:00
2026-08-31 11:34:26 -05:00
2026-05-26 02:14:00 -05:00
2026-05-26 02:14:00 -05:00
2026-06-02 10:15:27 -05:00
2026-08-06 04:45:37 -05:00
2026-08-26 10:38:38 -05:00
2026-07-16 18:07:51 -05:00
2026-07-08 23:18:23 -05:00
2026-08-31 11:34:26 -05:00
2026-06-23 11:26:23 -05:00
2026-06-11 14:48:11 -05:00
2026-08-22 11:55:01 -05:00
2026-08-27 07:14:55 -05:00
2026-08-28 10:21:46 -05:00
2026-08-29 12:00:04 -05:00
2026-08-27 05:20:15 -05:00
2026-08-27 05:20:15 -05:00
2026-08-27 04:28:56 -05:00
2026-08-27 05:41:34 -05:00
2026-08-27 01:43:00 -05:00
2026-08-27 03:47:42 -05:00
2026-08-27 03:47:42 -05:00
2026-08-27 04:54:37 -05:00
2026-08-27 04:54:37 -05:00
2026-08-27 06:22:11 -05:00
2026-08-27 02:38:24 -05:00
2026-08-28 00:19:46 -05:00
2026-08-27 08:31:48 -05:00
2026-08-31 17:10:13 -05:00
2026-08-28 10:21:46 -05:00
2026-08-27 05:20:15 -05:00
2026-08-27 08:31:48 -05:00
2026-08-27 08:31:48 -05:00
2026-08-29 13:40:05 -05:00
2026-08-31 15:38:13 -05:00
2026-08-28 14:52:40 -05:00
2026-08-31 17:10:13 -05:00
2026-08-29 13:40:05 -05:00
2026-08-27 06:22:11 -05:00
2026-08-27 08:31:48 -05:00
2026-08-27 08:31:48 -05:00
2026-06-13 12:35:18 -05:00
2026-07-10 17:36:47 -05:00
2026-07-15 19:11:06 -05:00
2026-06-16 12:16:00 -05:00
2026-08-31 11:34:26 -05:00
2026-06-20 20:08:34 -05:00
2026-06-20 20:49:06 -05:00
2026-07-17 11:27:30 -05:00
2026-07-31 21:38:38 -05:00
2026-07-15 19:44:09 -05:00
2026-05-21 18:06:02 -05:00
2026-08-26 10:38:38 -05:00
2026-06-28 19:35:17 -05:00