Mohamed Boudra and GitHub
504b687f89
Keep older chat history and image previews stable ( #2490 )
...
* fix(app): keep timeline history and previews stable
Treat persisted timeline replicas as display-only so authoritative pagination always comes from the daemon. Require renewed user intent between older-history pages unless the viewport genuinely remains at the history edge.
Model assistant image acquisition as loading, loaded, or failed so recreating a preview URL cannot be rendered as an error.
* fix(app): keep file image previews current
* fix(app): stabilize history pagination edges
* fix(app): recover transient timeline loads
* fix(app): retain assistant image previews
* Stabilize history pagination lifecycle
* Stabilize history settlement and image previews
* Retry file images after reconnect
* Keep active previews and pagination requests alive
* Replace image hook tests with typed ports
* Integrate timeline hydration with submission authority
* Harden pre-hydration timeline reconciliation
* Make rewind E2E use real scroll intent
* Preserve live timeline state through hydration
* Keep mounted image attachments retained
* Protect preview persistence and lifecycle hydration
* Preserve idless live assistant continuations
* Preserve timeline rows across delayed hydration
* test(app): cover real assistant image files
* Preserve assistant tool ordering during hydration
2026-07-28 22:29:03 +02:00
..
2026-04-12 10:40:14 +07:00
2026-07-16 17:22:37 +02:00
2026-05-09 18:32:43 +07:00
2026-05-09 18:32:43 +07:00
2026-06-11 16:16:26 +08:00
2026-06-11 16:16:26 +08:00
2026-07-17 17:03:34 +02:00
2026-07-17 17:03:34 +02:00
2026-07-27 21:27:10 +02:00
2026-07-17 17:03:34 +02:00
2026-07-17 17:03:34 +02:00
2026-04-24 12:26:10 +08:00
2026-04-24 12:26:10 +08:00
2026-06-29 17:23:18 +02:00
2026-05-28 01:58:18 +08:00
2026-06-15 14:23:02 +08:00
2026-03-21 20:22:15 +07:00
2026-03-21 20:22:15 +07:00
2026-04-24 12:26:10 +08:00
2026-07-18 16:30:59 +02:00
2026-07-18 16:30:59 +02:00
2026-07-28 22:29:03 +02:00
2026-07-28 22:29:03 +02:00
2026-06-29 20:49:13 +00:00
2026-06-29 20:49:13 +00:00
2026-04-24 11:55:43 +07:00
2026-04-24 11:55:43 +07:00
2026-03-21 20:22:15 +07:00
2026-02-13 09:46:40 +07:00
2026-04-24 12:26:10 +08:00
2026-05-28 12:34:31 +08:00
2026-05-28 12:34:31 +08:00
2026-03-21 20:22:15 +07:00
2026-04-24 12:26:10 +08:00
2026-05-05 19:58:56 +07:00
2026-03-21 20:22:15 +07:00
2026-04-24 12:26:10 +08:00
2026-06-16 17:20:11 +07:00
2026-05-28 01:58:18 +08:00
2026-03-21 20:22:15 +07:00
2026-04-10 19:14:31 +07:00
2026-04-12 09:56:05 +08:00
2026-04-20 16:14:22 +07:00
2026-04-20 16:14:22 +07:00
2026-07-15 15:30:57 +08:00
2026-07-15 15:30:57 +08:00
2026-07-07 17:13:28 +08:00
2026-05-29 14:51:14 +08:00
2026-05-29 14:51:14 +08:00
2026-05-17 18:58:10 +08:00
2026-05-17 18:58:10 +08:00
2026-05-09 15:39:26 +08:00
2026-07-16 17:36:41 +02:00
2026-04-28 21:58:22 +07:00
2026-04-28 21:58:22 +07:00
2026-03-21 20:22:15 +07:00
2026-03-29 23:20:18 +07:00
2025-11-26 08:47:49 +00:00
2026-06-30 22:33:18 +02:00
2026-04-01 18:20:02 +07:00
2026-03-24 23:32:23 +07:00
2026-03-24 23:32:23 +07:00
2026-04-26 08:15:16 +07:00
2026-05-28 01:58:18 +08:00
2026-07-22 15:58:24 +02:00
2026-07-22 15:58:24 +02:00
2026-06-24 14:41:14 +07:00
2026-06-24 14:41:14 +07:00
2026-05-14 17:52:46 +08:00
2026-05-28 01:58:18 +08:00
2026-05-29 14:51:14 +08:00
2026-05-29 14:51:14 +08:00
2026-06-26 12:16:49 +08:00
2026-07-08 10:20:30 +02:00
2026-07-23 03:32:28 +08:00
2026-07-24 21:11:41 +08:00
2026-07-24 21:11:41 +08:00
2026-04-16 10:23:05 +08:00
2026-04-16 13:14:02 +08:00
2026-05-25 17:47:31 +08:00
2026-05-25 17:47:31 +08:00
2026-06-05 14:11:17 +07:00
2026-06-05 14:11:17 +07:00
2026-05-26 22:27:18 +07:00
2026-05-26 22:27:18 +07:00
2026-05-09 15:39:26 +08:00
2026-05-09 15:39:26 +08:00
2026-07-23 03:32:28 +08:00
2026-07-23 03:32:28 +08:00
2026-07-17 15:03:26 +08:00
2026-06-11 14:15:35 +08:00
2026-07-23 03:32:28 +08:00
2026-05-05 19:56:26 +07:00
2026-04-01 18:20:02 +07:00
2026-04-12 09:56:05 +08:00
2026-03-13 20:53:55 +07:00
2026-07-22 20:57:18 +02:00
2026-06-17 01:12:23 +08:00
2026-06-17 01:12:23 +08:00
2026-03-21 20:22:15 +07:00
2026-03-21 20:22:15 +07:00
2026-05-29 14:06:47 +07:00
2026-04-04 15:35:41 +08:00
2026-06-18 20:44:57 +07:00
2026-07-15 20:40:24 +02:00
2026-07-15 20:40:24 +02:00
2026-05-28 15:40:36 +07:00
2026-06-08 08:17:57 +00:00
2026-05-28 01:58:18 +08:00
2026-07-18 18:45:23 +02:00
2026-05-31 15:46:17 +08:00
2026-07-17 15:03:26 +08:00
2026-07-17 15:03:26 +08:00
2026-05-28 12:34:31 +08:00
2026-05-28 12:34:31 +08:00
2026-05-28 12:34:31 +08:00
2026-07-07 17:13:28 +08:00
2026-07-07 17:13:28 +08:00
2026-07-18 14:04:48 +02:00
2026-07-18 14:04:48 +02:00
2026-04-19 14:26:51 +07:00
2026-05-18 14:56:17 +07:00
2026-05-28 01:58:18 +08:00
2026-05-28 01:58:18 +08:00
2026-04-24 12:26:10 +08:00
2026-06-16 15:27:02 +07:00
2026-01-20 10:09:35 +07:00
2026-06-04 00:53:38 +07:00
2026-05-28 01:58:18 +08:00
2026-03-21 20:22:15 +07:00
2026-03-06 22:23:35 +07:00
2026-07-02 21:15:10 +08:00
2026-07-02 21:15:10 +08:00
2026-03-21 20:22:15 +07:00
2026-03-21 20:22:15 +07:00
2026-07-10 06:12:56 +08:00
2026-07-13 10:59:02 +02:00
2026-05-28 12:34:31 +08:00
2026-04-12 10:40:14 +07:00
2026-03-18 01:36:54 +07:00
2026-03-21 20:22:15 +07:00
2026-04-02 22:53:52 +07:00
2026-03-07 12:32:49 +07:00
2026-03-21 20:22:15 +07:00
2026-05-19 09:02:48 +08:00
2026-05-19 09:02:48 +08:00
2026-03-29 23:20:18 +07:00
2026-05-28 01:58:18 +08:00
2026-05-03 20:38:12 +07:00
2026-05-03 20:38:12 +07:00
2026-05-28 01:58:18 +08:00
2026-06-30 22:33:18 +02:00
2026-05-05 19:56:51 +07:00
2026-03-13 20:53:55 +07:00
2026-07-17 04:15:04 +08:00
2026-07-17 04:15:04 +08:00
2026-07-14 21:16:29 +02:00
2026-05-28 01:58:18 +08:00
2026-05-28 01:58:18 +08:00
2026-05-02 17:20:22 +07:00
2026-05-28 01:58:18 +08:00
2026-05-28 12:34:31 +08:00
2026-05-28 12:34:31 +08:00
2026-05-28 12:34:31 +08:00
2026-02-08 22:37:52 +07:00
2026-05-29 14:51:14 +08:00
2026-03-24 15:02:02 +08:00
2026-04-24 12:26:10 +08:00
2026-07-10 17:52:55 +08:00
2026-07-10 17:52:55 +08:00
2026-07-14 14:22:14 +02:00
2026-07-14 14:22:14 +02:00
2026-06-26 15:50:02 +08:00
2026-06-26 15:50:02 +08:00
2026-05-28 15:40:36 +07:00
2026-06-14 22:03:27 +08:00
2026-06-14 22:03:27 +08:00
2026-06-16 13:37:58 +07:00
2026-06-16 13:37:58 +07:00
2026-07-22 20:57:18 +02:00
2026-07-13 15:38:09 +02:00
2026-07-21 13:44:23 +02:00
2026-07-21 13:44:23 +02:00