gsxdsm
26219b8d34
FN-8799: suppress alerts during automatic task recovery
Prevent terminal task alerts while persisted automatic recovery owns a failed task.
- Classify scheduled and transient merge recovery ownership before wedge notification claims.
- Re-read live task state before claims and deferred failure delivery to avoid recovery races.
- Add recovery suppression coverage, architecture documentation, and a patch changeset.
Files changed:
.changeset/fn-8799-recovery-notifications.md | 7 ++
docs/architecture.md | 2 +
.../src/errors/transient-merge-error-classifier.ts | 18 +++++
.../__tests__/notification-service.test.ts | 78 ++++++++++++++++++-
.../__tests__/task-wedge-notification.test.ts | 26 ++++++-
.../src/notification/notification-service.ts | 90 ++++++++++++----------
.../src/notification/task-wedge-notification.ts | 37 +++++++--
packages/engine/src/project-engine.ts | 4 +-
8 files changed, 210 insertions(+), 52 deletions(-)
Fusion-Task-Id: FN-8799
Fusion-Task-Lineage: f8296e81-6b84-4697-8b20-63823f09d584
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-08-04 22:17:06 -07:00
..
2026-08-04 19:31:06 -07:00
2026-08-03 10:58:19 -07:00
2026-08-03 10:58:19 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 22:17:06 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 00:20:08 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 16:48:25 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 22:17:06 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 08:57:30 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 00:20:08 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 10:52:12 -07:00
2026-07-30 21:50:37 -07:00
2026-08-01 08:20:29 -07:00
2026-08-04 10:52:12 -07:00
2026-08-02 17:06:38 -07:00
2026-08-04 11:52:15 -07:00
2026-08-04 19:31:06 -07:00
2026-07-23 10:31:22 -07:00
2026-08-03 00:20:53 -07:00
2026-08-03 00:20:53 -07:00
2026-07-25 20:46:07 -07:00
2026-08-04 19:31:06 -07:00
2026-08-04 00:20:08 -07:00
2026-07-30 00:00:46 -07:00
2026-08-04 00:20:08 -07:00
2026-08-04 08:57:30 -07:00
2026-08-04 22:17:06 -07:00
2026-07-27 17:37:20 -07:00
2026-07-24 23:57:49 -07:00
2026-08-04 11:52:15 -07:00
2026-08-03 00:20:53 -07:00
2026-08-04 11:52:15 -07:00
2026-07-30 23:13:34 -07:00
2026-08-04 10:52:12 -07:00
2026-08-03 00:20:53 -07:00
2026-07-27 13:30:13 -07:00
2026-08-03 00:20:53 -07:00