export class LineBuffer { private pending = ""; push(chunk: string): string[] { this.pending += chunk; const parts = this.pending.split("\n"); this.pending = parts.pop() ?? ""; return parts; } flush(): string[] { if (!this.pending) return []; const remaining = this.pending; this.pending = ""; return [remaining]; } }