Won Park
b6baa77eec
Handle standalone image generation failures as terminal items ( #27920 )
...
## Why
Standalone image generation emitted a started item but no terminal item
when the backend failed. Clients could leave the operation unresolved or
render it as successful.
## What changed
- Emit a terminal image-generation item with `status: "failed"` when
generation or editing fails.
- Skip image persistence for failed terminal items.
- Render failed image generation distinctly in TUI history.
- Preserve the status when handling live and replayed terminal items.
## Looks for TUI, App-Side change needed
<img width="867" height="89" alt="image"
src="https://github.com/user-attachments/assets/9e32342f-a982-411e-8498-456639fc468a "
/>
## Validation
- `just test -p codex-image-generation-extension`
- App-server image-generation tests
- Core stream-event tests
- TUI image-generation lifecycle and snapshot tests
- Scoped Clippy and formatting
2026-06-12 11:57:22 -07:00
..
2026-06-12 08:58:08 -07:00
2026-06-11 22:26:31 -07:00
2026-03-28 11:23:07 -06:00
2026-06-12 09:30:25 -07:00
2026-06-12 11:57:22 -07:00
2026-05-05 11:17:47 -07:00
2026-06-12 10:19:17 -04:00
2026-06-12 11:57:22 -07:00
2026-05-15 15:04:04 -07:00
2026-05-29 14:01:27 -07:00
2026-05-27 15:11:29 -07:00
2026-04-21 17:10:36 +00:00
2026-06-11 09:23:08 -07:00
2026-05-18 20:24:09 -03:00
2026-04-07 08:03:35 -07:00
2026-04-30 22:42:48 -07:00
2026-06-12 10:19:17 -04:00
2026-06-10 17:55:49 -07:00
2026-05-27 20:14:55 +00:00
2026-05-26 14:54:38 -03:00
2026-05-15 17:10:15 -07:00
2026-06-12 08:58:08 -07:00
2026-06-01 11:49:14 -03:00
2026-06-01 11:49:14 -03:00
2026-06-12 10:19:17 -04:00
2026-04-30 11:34:34 -07:00
2026-06-12 10:19:17 -04:00
2026-06-11 09:56:09 -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-05-07 20:31:41 -07:00
2026-05-04 16:11:15 -03:00
2026-06-11 22:26:31 -07:00
2026-05-14 18:51:36 -07:00
2026-05-05 16:18:02 +00:00
2026-06-01 18:01:52 +02:00
2026-05-13 15:40:37 -07:00
2026-03-28 11:23:07 -06:00
2026-06-05 08:32:07 -07:00
2026-06-05 08:32:07 -07:00
2026-05-13 12:11:15 -03:00
2026-04-25 22:00:32 -03:00
2026-06-10 17:55:49 -07:00
2026-04-30 10:52:19 -07:00
2026-04-30 11:34:34 -07:00
2026-03-28 11:23:07 -06:00
2026-06-10 15:53:15 -04:00
2026-06-12 10:19:17 -04:00
2026-06-10 15:19:37 -04:00
2026-06-12 10:19:17 -04:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-03-28 11:23:07 -06:00
2026-06-08 21:32:46 -07:00
2026-06-05 08:34:34 -07:00
2026-06-05 08:32:53 -07:00
2026-06-11 22:26:31 -07:00
2026-05-09 21:17:30 +00:00
2026-05-01 09:39:48 -07:00
2026-05-27 20:14:55 +00:00
2026-05-13 15:33:27 +00:00
2026-05-31 15:42:39 -03:00
2026-06-03 20:28:31 -03:00
2026-06-12 09:26:08 -07:00
2026-03-28 11:23:07 -06:00
2026-04-13 18:27:00 -07:00
2026-06-10 20:42:38 -07:00
2026-06-11 09:56:09 -07:00
2026-06-08 17:02:36 -07:00
2026-06-08 17:02:36 -07:00
2026-05-27 16:18:24 -03:00
2026-06-08 17:02:36 -07:00
2026-05-27 20:14:55 +00:00
2026-05-28 10:30:15 -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-06-09 12:14:48 +02:00
2026-04-25 17:09:29 -07:00
2026-05-25 09:53:39 -07:00
2026-05-27 20:14:55 +00:00
2026-05-15 17:10:15 -07:00
2026-04-25 22:00:32 -03:00
2026-06-09 12:14:48 +02:00
2026-03-28 11:23:07 -06:00
2026-05-20 15:57:50 -07:00
2026-06-10 18:04:02 -07:00
2026-05-22 17:19:51 +00:00
2026-06-01 15:14:19 +02:00
2026-05-20 11:05:14 -07:00
2026-03-28 11:23:07 -06:00
2026-04-20 20:46:55 -07:00
2026-06-12 10:19:17 -04:00
2026-06-10 11:24:29 -07:00
2026-06-05 15:32:43 -04:00
2026-06-01 11:49:14 -03:00
2026-05-27 16:18:24 -03:00
2026-05-10 20:42:11 +00:00
2026-05-27 20:14:55 +00:00
2026-06-05 11:05:46 -07:00
2026-06-05 11:05:46 -07:00
2026-04-17 08:39:37 -07:00
2026-06-05 17:23:45 -07:00
2026-03-28 11:23:07 -06:00
2026-06-10 17:55:49 -07:00
2026-05-26 20:59:47 -07:00
2026-05-26 20:59:47 -07:00
2026-06-09 12:14:48 +02:00
2026-05-08 07:56:13 -07:00
2026-04-20 00:37:40 +00:00
2026-04-25 22:00:32 -03:00
2026-06-05 11:05:46 -07:00
2026-03-28 11:23:07 -06:00
2026-05-27 16:45:10 +00:00
2026-05-27 20:14:55 +00:00
2026-04-25 17:09:29 -07:00
2026-06-12 09:26:08 -07:00
2026-06-12 09:26:08 -07:00
2026-06-12 09:26:08 -07:00
2026-03-28 11:23:07 -06:00
2026-04-30 11:34:34 -07:00
2026-04-25 22:00:32 -03:00
2026-06-11 09:23:08 -07:00
2026-06-11 18:16:39 -07:00
2026-05-13 14:19:05 -07:00