/** * Review Comment Repository Port Interface * * Port for persisting inline review comments on phase diffs. */ import type { ReviewComment } from '../schema.js'; export interface CreateReviewCommentData { phaseId: string; filePath: string; lineNumber: number; lineType: 'added' | 'removed' | 'context'; body: string; author?: string; parentCommentId?: string; // for replies } export interface ReviewCommentRepository { create(data: CreateReviewCommentData): Promise; createReply(parentCommentId: string, body: string, author?: string): Promise; findByPhaseId(phaseId: string): Promise; update(id: string, body: string): Promise; resolve(id: string): Promise; unresolve(id: string): Promise; delete(id: string): Promise; }