feat(confidence-engine): use server investigation persistence
This commit is contained in:
@@ -2,6 +2,7 @@ import {
|
||||
createServerSupabaseClient,
|
||||
getAuthenticatedUser,
|
||||
} from "@/lib/supabase/server.js";
|
||||
import { restartSnapshot } from "./restart-investigation.js";
|
||||
|
||||
const SCHEMA = "confidence_engine";
|
||||
const TABLE = "investigations";
|
||||
@@ -50,17 +51,26 @@ export async function loadInvestigation(id) {
|
||||
|
||||
export async function listInvestigations() {
|
||||
const context = await getAuthenticatedPersistenceContext();
|
||||
if (!context) return null;
|
||||
if (!context) return [];
|
||||
|
||||
const { data, error } = await context.supabase
|
||||
.schema(SCHEMA)
|
||||
.from(TABLE)
|
||||
.select("id, created_at, updated_at")
|
||||
.select("id, snapshot, created_at, updated_at")
|
||||
.order("updated_at", { ascending: false });
|
||||
throwIfDatabaseError(error);
|
||||
return (data ?? []).map((record) => ({
|
||||
id: record.id,
|
||||
createdAt: record.created_at,
|
||||
updatedAt: record.updated_at,
|
||||
scenario: record.snapshot?.scenario ?? null,
|
||||
updatedAt: record.snapshot?.updatedAt ?? record.updated_at,
|
||||
investigationRevision: record.snapshot?.investigationRevision ?? 0,
|
||||
reportExists: !!record.snapshot?.investigationReport,
|
||||
reportGeneratedFromRevision: record.snapshot?.investigationReport?.generatedFromRevision ?? null,
|
||||
}));
|
||||
}
|
||||
|
||||
export async function restartInvestigation(id) {
|
||||
const snapshot = await loadInvestigation(id);
|
||||
if (!snapshot) return null;
|
||||
return saveInvestigation(restartSnapshot(snapshot), id);
|
||||
}
|
||||
Reference in New Issue
Block a user