"use client";
import { Task, TaskStatus } from "@/types";
import { TaskDescription } from "./task-description";
import { AcceptanceCriteria } from "./acceptance-criteria";
import { SubtasksList } from "./subtasks-list";
import { WorkSessionCard } from "./work-session-card";
import { VideoPreviewCard } from "./video-preview-card";
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import { Markdown } from "@/components/ui/markdown";
import { HelpTip } from "@/components/ui/help-tip";
import Link from "next/link";
interface TabOverviewProps {
task: Task;
}
export function TabOverview({ task }: TabOverviewProps) {
return (
{/* Parent Task Link */}
{task.parent_task_id && (
Subtask of:
Parent Task #{task.parent_task_id.slice(0, 8)}
)}
{/* Description */}
{/* Acceptance Criteria */}
{/* Subtasks */}
{/* Work Session / Git Info */}
{/* Video preview (source=video authoring tasks with a captured
render_preview, or already awaiting the CEO's approval — the state
with nothing else to show) */}
{task.source === "video" &&
(!!task.orchestration_markers?.render_preview ||
task.status === TaskStatus.AWAITING_CEO_APPROVAL) && (
)}
{/* Quick Context (for resumption) */}
{task.quick_context && (
Quick Context
{task.quick_context}
)}
{/* Verification Status */}
Verification Status
Self Verified:
{task.self_verified ? "Yes" : "No"}
QA Verified:
{task.qa_verified === true
? "Passed"
: task.qa_verified === false
? "Failed"
: "Pending"}
);
}