gsxdsm
a411b8a7e0
FN-5914: fix mission activity counts and chronology
Keep mission activity counts accurate before event data loads and show events in chronological order.
- add persisted mission event counts to core mission summaries and dashboard mission summary types
- use the summary event count for the Activity tab preload badge instead of the currently loaded page total
- render mission activity oldest-to-newest, keep load-more prepends stable, and scroll to the latest event on initial/live updates
- extend mission store, dashboard, and MissionManager tests for event count and ordering coverage
Files changed:
packages/core/src/__tests__/mission-store.test.ts | 19 ++++
packages/core/src/mission-store.ts | 24 ++++-
packages/dashboard/app/api/legacy.ts | 2 +
.../dashboard/app/components/MissionManager.tsx | 19 ++--
.../components/__tests__/MissionManager.test.tsx | 107 ++++++++++++++++-----
packages/dashboard/app/components/mission-types.ts | 1 +
.../dashboard/src/__tests__/mission-e2e.test.ts | 7 +-
7 files changed, 143 insertions(+), 36 deletions(-)
Fusion-Task-Id: FN-5914
Fusion-Task-Lineage: b3119e94-66bd-437d-bcde-d5e4e43cb29e
2026-06-02 19:28:01 -07:00
..
2026-05-18 01:56:59 -07:00
2026-05-18 01:56:59 -07:00
2026-05-07 23:21:05 -07:00
2026-05-22 20:20:42 -07:00
2026-05-05 20:47:37 -07:00
2026-05-29 08:45:12 -07:00
2026-05-12 07:47:10 -07:00
2026-05-12 07:47:10 -07:00
2026-05-12 07:47:10 -07:00
2026-05-14 04:32:43 -07:00
2026-05-12 22:52:01 -07:00
2026-05-14 04:32:43 -07:00
2026-05-12 07:47:10 -07:00
2026-05-29 08:45:12 -07:00
2026-05-23 20:44:01 -07:00
2026-05-05 12:37:25 -07:00
2026-05-06 10:18:27 -07:00
2026-06-01 16:24:21 -07:00
2026-05-10 15:33:25 -07:00
2026-05-30 14:20:12 -07:00
2026-05-19 10:39:56 -07:00
2026-05-15 09:04:26 -07:00
2026-05-15 07:10:36 -07:00
2026-05-11 10:54:26 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 06:29:35 -07:00
2026-05-06 08:04:47 -07:00
2026-05-14 22:16:44 -07:00
2026-05-20 03:57:17 -07:00
2026-06-01 01:30:34 -07:00
2026-05-29 20:26:43 -07:00
2026-05-09 10:31:05 -07:00
2026-05-19 03:21:17 -07:00
2026-06-01 01:30:34 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 20:24:18 -07:00
2026-05-13 14:38:41 -07:00
2026-06-01 16:24:21 -07:00
2026-05-13 06:29:35 -07:00
2026-05-20 04:12:40 -07:00
2026-05-29 20:47:13 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 04:12:40 -07:00
2026-05-28 23:27:05 -07:00
2026-05-31 16:57:42 -07:00
2026-05-30 16:48:13 -07:00
2026-05-22 20:20:42 -07:00
2026-06-02 04:01:31 -07:00
2026-05-13 19:22:38 -07:00
2026-05-23 20:44:01 -07:00
2026-05-22 20:20:42 -07:00
2026-05-09 10:31:05 -07:00
2026-05-06 21:36:31 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 18:05:12 +03:00
2026-05-27 21:31:12 -07:00
2026-05-18 03:34:54 -07:00
2026-06-02 14:14:24 -07:00
2026-05-20 04:13:43 -07:00
2026-05-22 20:20:42 -07:00
2026-05-03 07:47:45 -07:00
2026-05-03 14:10:11 -07:00
2026-05-03 07:47:45 -07:00
2026-05-02 11:25:08 -07:00
2026-05-16 22:26:42 -07:00
2026-05-08 04:21:20 -07:00
2026-05-29 21:03:12 -07:00
2026-05-08 07:56:04 -07:00
2026-05-19 19:32:23 -07:00
2026-05-22 20:20:42 -07:00
2026-06-02 00:23:05 -07:00
2026-05-22 20:20:42 -07:00
2026-05-17 08:22:26 -07:00
2026-05-18 01:16:17 -07:00
2026-05-10 05:29:41 -07:00
2026-06-02 08:25:46 -07:00
2026-05-29 08:11:55 -07:00
2026-06-02 17:58:41 -07:00
2026-06-01 05:15:14 -07:00
2026-06-02 19:19:33 -07:00
2026-05-18 19:44:33 -07:00
2026-05-18 16:08:10 -07:00
2026-05-16 09:21:06 -07:00
2026-05-22 20:20:42 -07:00
2026-05-05 01:46:58 -07:00
2026-05-16 09:42:37 -07:00
2026-05-19 23:04:12 -07:00
2026-05-19 17:57:10 -07:00
2026-06-01 10:31:36 -07:00
2026-05-09 14:20:03 -07:00
2026-05-09 10:31:05 -07:00
2026-05-23 13:06:48 -07:00
2026-05-15 12:07:52 -07:00
2026-05-10 16:53:36 -07:00
2026-05-19 10:39:56 -07:00
2026-06-01 10:17:52 -07:00
2026-05-04 01:43:04 -07:00
2026-06-02 10:04:38 -07:00
2026-05-19 17:54:43 -07:00
2026-05-20 09:42:40 -07:00
2026-05-30 00:10:23 -07:00
2026-05-19 23:04:12 -07:00
2026-06-02 19:28:01 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-29 09:32:22 -07:00
2026-05-12 17:04:33 -07:00
2026-05-22 20:20:42 -07:00
2026-05-29 10:02:58 -07:00
2026-05-07 18:35:45 -07:00
2026-05-04 22:17:10 -07:00
2026-05-07 18:35:45 -07:00
2026-05-12 17:04:33 -07:00
2026-05-29 08:45:12 -07:00
2026-05-20 09:42:40 -07:00
2026-06-01 03:23:10 -07:00
2026-05-08 18:44:16 -07:00
2026-05-04 21:21:22 -07:00
2026-05-22 20:20:42 -07:00
2026-05-10 18:04:43 -07:00
2026-05-23 20:44:01 -07:00
2026-05-29 11:25:11 -07:00
2026-05-04 21:21:22 -07:00
2026-06-02 12:42:04 -07:00
2026-06-02 12:42:04 -07:00
2026-05-12 17:04:33 -07:00
2026-06-02 12:42:04 -07:00
2026-06-02 18:58:48 -07:00
2026-05-31 21:43:23 -07:00
2026-05-12 22:52:01 -07:00
2026-06-02 12:42:04 -07:00
2026-05-31 21:59:06 -07:00
2026-05-07 23:21:05 -07:00
2026-05-13 06:29:34 -07:00
2026-05-07 23:38:12 -07:00
2026-05-04 21:21:22 -07:00
2026-05-04 21:21:22 -07:00
2026-05-22 20:20:42 -07:00
2026-05-18 07:52:44 -07:00
2026-05-30 15:16:30 -07:00
2026-06-02 08:49:25 -07:00
2026-06-02 08:49:25 -07:00
2026-06-02 14:14:24 -07:00
2026-06-02 08:49:25 -07:00
2026-06-02 14:14:24 -07:00
2026-05-07 04:17:52 -07:00
2026-05-28 23:31:03 -07:00
2026-05-18 15:50:48 -07:00
2026-05-28 19:50:53 -07:00
2026-05-28 21:32:54 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 09:42:40 -07:00
2026-06-02 09:34:19 -07:00
2026-06-02 08:08:01 -07:00
2026-05-16 00:13:37 -07:00
2026-05-22 20:20:42 -07:00
2026-05-04 07:00:39 -07:00
2026-05-23 01:30:15 -07:00
2026-06-02 08:14:10 -07:00
2026-05-31 11:55:11 -07:00
2026-05-22 20:20:42 -07:00
2026-05-11 16:06:37 -07:00
2026-05-13 20:08:37 -07:00
2026-06-02 09:05:22 -07:00
2026-05-22 00:15:14 -07:00
2026-05-15 23:39:43 -07:00
2026-05-19 17:45:36 -07:00
2026-05-04 17:22:21 -07:00
2026-05-08 01:57:55 -07:00
2026-06-02 16:11:42 -07:00
2026-06-02 19:10:50 -07:00
2026-06-02 18:29:53 -07:00
2026-05-23 13:06:48 -07:00
2026-05-09 19:49:02 -07:00
2026-06-01 04:47:19 -07:00
2026-05-04 15:16:53 -07:00
2026-06-02 07:40:37 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-06-02 00:10:21 -07:00
2026-05-13 15:05:05 -07:00
2026-06-02 07:40:37 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 20:44:01 -07:00
2026-05-28 08:45:09 -07:00
2026-05-19 20:45:46 -07:00
2026-05-26 17:19:34 -07:00
2026-05-26 17:19:34 -07:00
2026-06-02 08:46:04 -07:00
2026-05-15 06:32:37 -07:00
2026-05-13 06:29:34 -07:00
2026-05-22 20:20:42 -07:00
2026-05-19 08:20:23 -07:00
2026-05-17 01:08:50 -07:00
2026-05-13 06:29:34 -07:00
2026-05-26 17:19:34 -07:00
2026-05-19 01:17:46 -07:00
2026-05-30 15:52:46 -07:00
2026-05-28 21:40:01 -07:00
2026-06-02 08:46:04 -07:00
2026-06-01 04:47:19 -07:00
2026-05-30 09:40:44 -07:00
2026-05-20 04:13:43 -07:00
2026-05-29 10:55:25 -07:00
2026-05-19 23:04:12 -07:00
2026-06-02 09:20:31 -07:00
2026-05-22 00:15:14 -07:00
2026-05-07 12:30:18 -07:00
2026-05-23 20:24:18 -07:00
2026-05-07 10:27:48 -07:00
2026-05-16 20:13:30 -07:00
2026-05-16 09:20:33 -07:00
2026-05-11 09:52:23 +02:00
2026-06-02 09:24:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 13:11:17 -07:00
2026-05-13 06:29:35 -07:00
2026-05-22 20:20:42 -07:00
2026-05-14 15:05:38 -07:00
2026-05-14 22:16:44 -07:00
2026-05-15 23:39:43 -07:00