gsxdsm
dfb9ca6630
FN-8543: enforce bounded generated-fix remediation
...
Keep generated fix chains within their root retry budget and preserve intervention stops.
- Track retry counts and stop reasons on the canonical root feature.
- Persist project-isolated lineage stops across generated-fix removal and archive paths.
- Serialize stop recording with generated-fix admission and expose conflict-safe mission resume behavior.
Files changed:
.changeset/fn-8543-bounded-fix-lineage.md | 7 +
docs/missions.md | 6 +-
.../__tests__/postgres/mission-store.pg.test.ts | 72 +++++++
packages/core/src/async-mission-store-queries.ts | 91 ++++++++-
packages/core/src/async-mission-store.ts | 206 ++++++++++++++++++---
packages/core/src/index.ts | 2 +-
packages/core/src/mission-store.ts | 10 +
packages/core/src/mission-types.ts | 7 +
.../0035_fn_8543_mission_lineage_stop.sql | 31 ++++
packages/core/src/postgres/schema-applier.ts | 18 +-
packages/core/src/postgres/schema/project.ts | 21 +++
.../core/src/task-store/archive-lifecycle-2.ts | 15 +-
.../core/src/task-store/async-archive-lineage.ts | 10 +-
packages/dashboard/src/mission-routes.ts | 14 +-
packages/engine/src/mission-execution-loop.ts | 30 ++-
15 files changed, 495 insertions(+), 45 deletions(-)
Fusion-Task-Id: FN-8543
Fusion-Task-Lineage: 24c03d63-5914-4072-aa17-16862432fc78
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-23 16:12:44 -07:00
..
2026-07-23 12:18:24 -07:00
2026-07-19 13:34:25 -07:00
2026-07-22 18:01:34 -07:00
2026-07-22 01:32:14 -07:00
2026-07-18 17:24:49 -07:00
2026-07-18 14:18:25 -07:00
2026-07-23 10:31:22 -07:00
2026-07-23 00:00:22 -07:00
2026-07-22 23:01:51 -07:00
2026-07-22 16:05:59 -07:00
2026-04-25 09:09:31 -07:00
2026-07-22 19:10:06 -07:00
2026-07-19 12:09:12 -07:00
2026-07-19 12:09:12 -07:00
2026-07-22 22:11:31 -07:00
2026-07-23 10:00:09 -07:00
2026-07-18 10:00:49 -07:00
2026-07-21 18:03:48 -07:00
2026-07-19 12:09:12 -07:00
2026-07-22 13:36:23 -07:00
2026-07-21 00:00:08 -07:00
2026-07-21 16:54:28 -07:00
2026-07-21 00:33:57 -07:00
2026-07-20 15:26:23 -07:00
2026-07-18 14:21:41 -07:00
2026-07-18 12:21:08 -07:00
2026-07-20 08:49:28 -07:00
2026-07-21 00:15:55 -07:00
2026-07-19 12:09:12 -07:00
2026-07-19 12:09:12 -07:00
2026-07-20 20:17:27 -07:00
2026-07-20 18:12:25 -07:00
2026-07-21 00:55:33 -07:00
2026-07-21 00:32:27 -07:00
2026-07-21 00:45:34 -07:00
2026-07-20 23:35:32 -07:00
2026-07-19 17:05:05 -07:00
2026-07-19 12:34:55 -07:00
2026-07-18 17:12:27 -07:00
2026-07-21 20:58:00 -07:00
2026-07-18 13:50:58 -07:00
2026-07-19 17:52:45 -07:00
2026-07-21 17:54:00 -07:00
2026-07-19 12:16:12 -07:00
2026-07-20 00:18:53 -07:00
2026-07-22 13:46:08 -07:00
2026-07-18 01:53:14 -07:00
2026-07-18 01:23:31 -07:00
2026-07-18 01:36:38 -07:00
2026-07-18 01:47:52 -07:00
2026-07-18 02:20:31 -07:00
2026-07-18 03:48:38 -07:00
2026-07-18 04:44:53 -07:00
2026-07-18 08:01:44 -07:00
2026-07-18 09:41:25 -07:00
2026-07-18 09:05:51 -07:00
2026-07-18 10:55:50 -07:00
2026-07-18 11:34:42 -07:00
2026-07-18 11:49:11 -07:00
2026-07-18 13:09:38 -07:00
2026-07-18 10:08:33 -07:00
2026-07-18 18:11:02 -07:00
2026-07-18 13:53:58 -07:00
2026-07-18 19:36:57 -07:00
2026-07-18 19:45:08 -07:00
2026-07-18 20:30:42 -07:00
2026-07-18 10:31:59 -07:00
2026-07-18 13:18:08 -07:00
2026-07-18 18:38:47 -07:00
2026-07-18 16:18:15 -07:00
2026-07-18 11:02:45 -07:00
2026-07-18 12:32:07 -07:00
2026-07-19 22:07:55 -07:00
2026-07-19 22:43:13 -07:00
2026-07-19 18:37:45 -07:00
2026-07-18 12:41:42 -07:00
2026-07-19 14:51:49 -07:00
2026-07-18 12:57:04 -07:00
2026-07-18 17:06:34 -07:00
2026-07-18 13:27:43 -07:00
2026-07-18 14:23:14 -07:00
2026-07-19 20:42:05 -07:00
2026-07-18 13:01:35 -07:00
2026-07-18 13:32:33 -07:00
2026-07-18 16:23:02 -07:00
2026-07-18 17:53:20 -07:00
2026-07-18 17:53:20 -07:00
2026-07-18 19:24:52 -07:00
2026-07-18 20:02:34 -07:00
2026-07-18 18:04:26 -07:00
2026-07-18 18:45:16 -07:00
2026-07-18 18:53:02 -07:00
2026-07-18 19:18:57 -07:00
2026-07-18 19:04:07 -07:00
2026-07-18 20:06:41 -07:00
2026-07-19 15:45:45 -07:00
2026-07-19 15:38:31 -07:00
2026-07-19 16:07:34 -07:00
2026-07-19 16:21:56 -07:00
2026-07-19 22:16:11 -07:00
2026-07-19 16:36:42 -07:00
2026-07-20 00:42:15 -07:00
2026-07-19 18:00:47 -07:00
2026-07-19 23:01:44 -07:00
2026-07-19 22:45:41 -07:00
2026-07-20 09:01:39 -07:00
2026-07-19 17:39:43 -07:00
2026-07-19 20:36:27 -07:00
2026-07-19 20:54:58 -07:00
2026-07-19 21:40:57 -07:00
2026-07-19 21:04:43 -07:00
2026-07-19 21:27:25 -07:00
2026-07-20 00:54:01 -07:00
2026-07-20 01:54:42 -07:00
2026-07-20 02:01:58 -07:00
2026-07-20 01:00:37 -07:00
2026-07-20 01:07:14 -07:00
2026-07-20 01:12:34 -07:00
2026-07-20 11:26:08 -07:00
2026-07-20 10:20:41 -07:00
2026-07-20 09:16:12 -07:00
2026-07-20 13:12:22 -07:00
2026-07-20 09:51:26 -07:00
2026-07-20 10:04:20 -07:00
2026-07-20 09:46:22 -07:00
2026-07-20 10:07:44 -07:00
2026-07-20 10:33:59 -07:00
2026-07-20 12:09:23 -07:00
2026-07-20 12:50:06 -07:00
2026-07-20 13:48:04 -07:00
2026-07-20 11:12:54 -07:00
2026-07-20 13:03:13 -07:00
2026-07-20 14:59:22 -07:00
2026-07-20 12:32:01 -07:00
2026-07-20 13:40:50 -07:00
2026-07-20 14:09:26 -07:00
2026-07-20 22:58:22 -07:00
2026-07-20 23:28:49 -07:00
2026-07-20 23:33:59 -07:00
2026-07-21 10:30:19 -07:00
2026-07-21 18:59:52 -07:00
2026-07-21 13:28:24 -07:00
2026-07-21 15:04:07 -07:00
2026-07-21 18:33:22 -07:00
2026-07-21 19:05:48 -07:00
2026-07-21 19:10:55 -07:00
2026-07-21 18:48:47 -07:00
2026-07-21 19:40:36 -07:00
2026-07-21 19:17:20 -07:00
2026-07-21 19:46:29 -07:00
2026-07-21 19:35:03 -07:00
2026-07-21 19:28:35 -07:00
2026-07-21 20:05:39 -07:00
2026-07-21 23:03:35 -07:00
2026-07-22 00:00:04 -07:00
2026-07-22 00:09:30 -07:00
2026-07-22 00:15:54 -07:00
2026-07-22 00:43:04 -07:00
2026-07-22 00:30:34 -07:00
2026-07-22 00:37:15 -07:00
2026-07-22 01:00:07 -07:00
2026-07-22 00:49:13 -07:00
2026-07-22 09:17:14 -07:00
2026-07-22 15:07:59 -07:00
2026-07-22 16:13:00 -07:00
2026-07-22 09:32:02 -07:00
2026-07-22 13:57:02 -07:00
2026-07-22 15:02:43 -07:00
2026-07-22 16:31:24 -07:00
2026-07-22 14:56:51 -07:00
2026-07-22 17:29:20 -07:00
2026-07-22 17:56:27 -07:00
2026-07-22 18:46:46 -07:00
2026-07-22 18:32:36 -07:00
2026-07-22 19:20:55 -07:00
2026-07-22 20:07:48 -07:00
2026-07-22 19:08:47 -07:00
2026-07-22 20:38:25 -07:00
2026-07-22 20:55:27 -07:00
2026-07-22 22:43:51 -07:00
2026-07-22 22:57:41 -07:00
2026-07-22 22:37:51 -07:00
2026-07-22 22:20:03 -07:00
2026-07-23 00:56:47 -07:00
2026-07-23 09:33:25 -07:00
2026-07-23 08:53:06 -07:00
2026-07-23 10:25:16 -07:00
2026-07-23 11:03:33 -07:00
2026-07-23 11:41:15 -07:00
2026-07-23 12:08:58 -07:00
2026-07-23 12:46:09 -07:00
2026-07-23 13:21:10 -07:00
2026-07-23 14:39:44 -07:00
2026-07-23 16:12:44 -07:00
2026-07-23 15:25:09 -07:00
2026-07-23 14:21:29 -07:00
2026-07-23 12:26:02 -07:00
2026-07-23 12:31:55 -07:00
2026-07-23 13:28:19 -07:00
2026-07-23 14:32:58 -07:00
2026-07-23 13:04:17 -07:00
2026-07-18 19:51:58 -07:00
2026-07-19 16:52:02 -07:00
2026-07-20 11:46:57 -07:00
2026-07-22 23:41:48 -07:00
2026-07-22 08:30:12 -07:00
2026-07-22 08:30:12 -07:00
2026-07-19 18:45:27 -07:00
2026-07-22 14:28:02 -07:00
2026-07-18 00:54:33 -07:00
2026-07-20 16:08:00 -07:00
2026-07-20 18:40:03 -07:00
2026-07-20 21:57:00 -07:00
2026-07-22 13:37:44 -07:00
2026-07-19 12:09:12 -07:00
2026-07-21 17:08:44 -07:00
2026-07-23 15:55:03 -07:00
2026-07-19 12:09:12 -07:00
2026-07-22 18:16:00 -07:00
2026-07-22 17:35:14 -07:00
2026-07-18 21:58:29 -07:00
2026-07-21 17:08:17 -07:00
2026-07-22 19:14:02 -07:00
2026-07-18 01:19:14 -07:00
2026-07-22 11:02:57 -07:00
2026-07-22 16:55:22 -07:00
2026-07-21 17:06:26 -07:00
2026-07-19 15:28:33 -07:00
2026-07-20 16:00:11 -07:00
2026-07-23 15:45:39 -07:00
2026-07-23 09:55:52 -07:00
2026-07-22 23:59:31 -07:00
2026-07-20 11:31:14 -07:00
2026-07-22 15:25:20 -07:00
2026-07-20 17:35:06 -07:00
2026-07-19 18:59:28 -07:00
2026-07-23 00:16:34 -07:00
2026-07-22 15:58:10 -07:00
2026-07-18 21:21:55 -07:00
2026-07-22 08:53:31 -07:00
2026-07-18 01:54:27 -07:00
2026-07-18 14:54:54 -07:00
2026-07-20 08:46:34 -07:00
2026-07-20 16:10:46 -07:00
2026-06-24 19:25:51 -07:00
2026-07-19 16:44:40 -07:00
2026-07-21 23:10:34 -07:00
2026-07-21 17:10:25 -07:00
2026-07-21 10:44:51 -07:00
2026-07-19 00:10:02 -07:00
2026-07-18 17:08:35 -07:00
2026-07-21 17:14:30 -07:00
2026-07-19 12:09:12 -07:00
2026-07-23 15:54:41 -07:00
2026-07-22 00:22:42 -07:00
2026-07-22 19:10:06 -07:00
2026-07-19 19:02:21 -07:00
2026-07-22 23:04:33 -07:00
2026-07-21 10:04:19 -07:00
2026-07-18 15:35:26 -07:00
2026-07-21 12:17:47 -07:00
2026-07-20 16:39:07 -07:00
2026-07-21 13:02:48 -07:00
2026-07-21 13:36:05 -07:00