| 1 | import { logger } from './logger'; |
| 2 | |
| 3 | export interface SessionData { |
| 4 | sessionId: string; |
| 5 | containerId: string; |
| 6 | repoUrl?: string; |
| 7 | repoName?: string; |
| 8 | framework?: string; |
| 9 | previewPort?: number; // Port exposed to UI |
| 10 | buildStatus: 'idle' | 'cloning' | 'building' | 'running' | 'failed'; |
| 11 | previewReady: boolean; |
| 12 | pickerInjected?: boolean; // Whether picker script was injected |
| 13 | modifiedFiles?: string[]; // Files modified for picker injection |
| 14 | createdAt: number; |
| 15 | lastActivity: number; |
| 16 | } |
| 17 | |
| 18 | type SessionSubscriber = (session: SessionData) => void; |
| 19 |
nothing calls this directly
no outgoing calls
no test coverage detected