feat(FN-1368): add milestone and slice interview sessions
- Create milestone-slice-interview.ts module for AI-guided milestone/slice planning - Add interview session types (milestone_interview, slice_interview) to AiSessionStore - Wire up server rehydration and automatic session cleanup - Add milestone/slice interview routes to mission router with SSE streaming - Extend MissionStore to persist planningNotes and verification fields - Add comprehensive tests for milestone-slice interview engine
This commit is contained in:
@@ -35,6 +35,10 @@ import {
|
||||
setAiSessionStore as setMissionAiSessionStore,
|
||||
rehydrateFromStore as rehydrateMissionSessions,
|
||||
} from "./mission-interview.js";
|
||||
import {
|
||||
setAiSessionStore as setMilestoneSliceAiSessionStore,
|
||||
rehydrateFromStore as rehydrateMilestoneSliceSessions,
|
||||
} from "./milestone-slice-interview.js";
|
||||
import { ChatManager } from "./chat.js";
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
@@ -379,15 +383,17 @@ export function createServer(store: TaskStore, options?: ServerOptions): ReturnT
|
||||
setPlanningAiSessionStore(aiSessionStore);
|
||||
setSubtaskAiSessionStore(aiSessionStore);
|
||||
setMissionAiSessionStore(aiSessionStore);
|
||||
setMilestoneSliceAiSessionStore(aiSessionStore);
|
||||
|
||||
const planningRehydratedCount = rehydratePlanningSessions(aiSessionStore);
|
||||
const subtaskRehydratedCount = rehydrateSubtaskSessions(aiSessionStore);
|
||||
const missionRehydratedCount = rehydrateMissionSessions(aiSessionStore);
|
||||
const milestoneSliceRehydratedCount = rehydrateMilestoneSliceSessions(aiSessionStore);
|
||||
const totalRehydrated =
|
||||
planningRehydratedCount + subtaskRehydratedCount + missionRehydratedCount;
|
||||
planningRehydratedCount + subtaskRehydratedCount + missionRehydratedCount + milestoneSliceRehydratedCount;
|
||||
if (totalRehydrated > 0) {
|
||||
console.log(
|
||||
`[server] Rehydrated ${planningRehydratedCount} planning, ${subtaskRehydratedCount} subtask, ${missionRehydratedCount} mission sessions from SQLite`,
|
||||
`[server] Rehydrated ${planningRehydratedCount} planning, ${subtaskRehydratedCount} subtask, ${missionRehydratedCount} mission, ${milestoneSliceRehydratedCount} milestone/slice sessions from SQLite`,
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user