import { buildPortfolioMetrics } from './metrics.js'; import { resolveWorkspaceRootFromEnv } from './workspace-root.js'; import { buildProjectIndex } from './project-index.js'; import { doctorPortfolio } from './doctor-portfolio.js'; import { buildTimeline } from './timeline.js'; import type { VideoProductionMode } from './types.js'; export interface VideoPortfolioReport { generatedAt: string; root: string; metrics: Awaited>; health: Awaited>; index: Awaited>; timeline: Awaited>; } export async function buildPortfolioReport( root = resolveWorkspaceRootFromEnv(), productionMode: VideoProductionMode = 'storyboard', ): Promise { const [metrics, health, index, timeline] = await Promise.all([ buildPortfolioMetrics(root, productionMode), doctorPortfolio(root, productionMode), buildProjectIndex(root, productionMode), buildTimeline(root), ]); return { generatedAt: new Date().toISOString(), root, metrics, health, index, timeline, }; }