feat(FN-1274): add routine CRUD API routes and frontend functions

- Add routineStore to ServerOptions for dependency injection
- Implement CRUD API routes for routines (create, list, get, update, delete)
- Add frontend API functions for routine management
- Include comprehensive route tests for all routine endpoints
- Update memory documentation with webhook HMAC testing pattern
This commit is contained in:
gsxdsm
2026-04-10 02:42:48 -07:00
parent 517b1bb46c
commit e664d133ea
5 changed files with 805 additions and 5 deletions

View File

@@ -3,7 +3,7 @@ import { randomUUID } from "node:crypto";
import { join, dirname } from "node:path";
import { existsSync } from "node:fs";
import { fileURLToPath } from "node:url";
import type { Task, TaskStore, MergeResult, AutomationStore } from "@fusion/core";
import type { Task, TaskStore, MergeResult, AutomationStore, RoutineStore } from "@fusion/core";
import { ChatStore } from "@fusion/core";
import type { AuthStorageLike, ModelRegistryLike } from "./routes.js";
import { createApiRoutes } from "./routes.js";
@@ -82,6 +82,8 @@ export interface ServerOptions {
badgePubSub?: BadgePubSub;
/** Optional AutomationStore for scheduled task management */
automationStore?: AutomationStore;
/** Optional RoutineStore for recurring task automation */
routineStore?: RoutineStore;
/** Optional AiSessionStore — if not provided, one is created from the default store's database */
aiSessionStore?: AiSessionStore;
/** Optional MissionAutopilot for autonomous mission progression */