From e1bb3b2b11a0a770cac7828ce7d71b8ecc4385b2 Mon Sep 17 00:00:00 2001 From: NinjasPyajamas Date: Wed, 1 Jul 2026 16:32:06 +0530 Subject: [PATCH] fix: map curator tasks to service agents --- src/v1/curator/curator-store.ts | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/v1/curator/curator-store.ts b/src/v1/curator/curator-store.ts index 65a50c3..47e7940 100644 --- a/src/v1/curator/curator-store.ts +++ b/src/v1/curator/curator-store.ts @@ -981,18 +981,30 @@ function practiceServiceLabel(serviceId: CuratorServiceId) { return "practice rep"; } +function actorNameForService(serviceId: CuratorServiceId, taskType: CuratorTaskType) { + if (serviceId === "resume-service" || serviceId === "cover-letter-service") return "Mira"; + if (serviceId === "interview-service") return "Vera"; + if (serviceId === "roleplay-service") return "Kai"; + if (serviceId === "matchmaking-service") return "Scout"; + if (serviceId === "social-branding-service") return "Nova"; + if (serviceId === "courses-service") return "Lyra"; + if (serviceId === "assessment-service") return "Sage"; + if (serviceId === "qscore-service") return taskType === "measurement" ? "Sage" : "Atlas"; + return "GrowQR curator"; +} + function overnightSignalTaskSeed(signal: CuratorImprovementSignal, weekTheme: string): TaskSeed { const nudge = signal.nudgeText?.trim() || signal.reason; return seed( "measurement", "qscore-service", - "Review the overnight curator signal before continuing", - `${nudge} Use analytics first so only the measurement lane looks back before proof and practice move forward.`, + "Review today's readiness signal", + `${nudge} Use analytics first so the measurement lane informs today's proof and practice work.`, "5 min", "+5 projected", - "Review Q Score", - ["overnight signal", "analytics"], + "Review readiness", + ["readiness signal", "analytics"], ); } @@ -1527,8 +1539,8 @@ function adaptCurrentDayPlan( const slot = signalTask.taskType === "measurement" ? 0 : signalTask.taskType === "proof" ? 1 : 2; current.plannedTasks[slot] = makePlannedTask(signalTask, current.weekTheme, current.weekSummary); current.focus = overnightSignal.nudgeText?.trim() - ? `${current.focus} Overnight curator signal: ${overnightSignal.nudgeText.trim()}` - : `${current.focus} Overnight curator signal: ${overnightSignal.reason}`; + ? `${current.focus} Readiness signal: ${overnightSignal.nudgeText.trim()}` + : `${current.focus} Readiness signal: ${overnightSignal.reason}`; adapted = true; reasons.push(`analytics signal ${overnightSignal.id}`); } @@ -1577,7 +1589,7 @@ function buildTask( stageId, serviceId: seedTask.serviceId, serviceName: serviceName(seedTask.serviceId), - actorName: "Curator sprint planner", + actorName: actorNameForService(seedTask.serviceId, seedTask.taskType), toolName: serviceToolName(seedTask.serviceId), status: "ready", rewardCoins: seedTask.taskType === "measurement" ? 12 : seedTask.taskType === "proof" ? 15 : seedTask.taskType === "recovery" ? 8 : 18,