fix: map curator tasks to service agents

This commit is contained in:
2026-07-01 16:32:06 +05:30
parent ac66abec28
commit e1bb3b2b11

View File

@@ -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,