FN-5795: send ntfy notification when agents create tasks

Add agent task-created ntfy notifications with configurable settings and coverage.

- add notification plumbing to emit a dedicated event when an agent creates a task
- extend ntfy provider/settings typing and dashboard settings coverage for the new event toggle
- add regression tests for notification service, notifier integration, and ntfy provider behavior
- add a changeset and documentation updates describing the new notification capability

Files changed:
 .changeset/fn-5795-task-created-notification.md    |  9 +++
 docs/architecture.md                               |  4 +-
 docs/settings-reference.md                         |  4 +-
 docs/storage.md                                    |  2 +-
 packages/core/src/types.ts                         |  4 +-
 .../dashboard/app/components/SettingsModal.tsx     |  1 +
 .../components/__tests__/SettingsModal.test.tsx    | 27 +++++++-
 .../src/__tests__/notification-service.test.ts     | 71 ++++++++++++++++++++++
 packages/engine/src/__tests__/notifier.test.ts     |  5 ++
 .../engine/src/__tests__/ntfy-provider.test.ts     | 32 ++++++++++
 .../src/notification/notification-service.ts       | 53 +++++++++++++++-
 packages/engine/src/notification/ntfy-provider.ts  | 21 +++++--
 12 files changed, 220 insertions(+), 13 deletions(-)

Fusion-Task-Id: FN-5795

Fusion-Task-Lineage: 4cfa3b46-8e9c-451e-ab2d-b7d5c9bf5968
This commit is contained in:
gsxdsm
2026-05-31 19:59:32 -07:00
parent fa428a487b
commit 5930c18b4d
12 changed files with 220 additions and 13 deletions

View File

@@ -511,7 +511,8 @@ export type NtfyNotificationEvent =
| "message:agent-to-user"
| "message:agent-to-agent"
| "message:room"
| "oauth-token-expired";
| "oauth-token-expired"
| "task-created";
/** Known notification event types. Providers may support additional custom events. */
export const NOTIFICATION_EVENTS = [
@@ -531,6 +532,7 @@ export const NOTIFICATION_EVENTS = [
"message:agent-to-agent",
"message:room",
"oauth-token-expired",
"task-created",
] as const;
/** Notification event type. Known events plus provider-specific custom events. */