feat: Add pipeline execution UI, stage metrics, and API proxy routes

- Add run pipeline page with job selection UI
- Add execution detail page with stage metrics visualization
- Add stage_metrics and total_duration_ms to pipeline.executions table
- Create Next.js API proxy routes for all pipeline endpoints
- Fix trailing slash issues in pipeline-api.ts URLs
- Add Docker volume mounts for pipeline packages
- Add REVIEWIQ_DATABASE_URL and LLM API keys to docker-compose
- Fix JSONB field parsing in execution detail endpoint

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-01-24 21:13:19 +00:00
parent acdfed8044
commit 796f587c57
13 changed files with 1212 additions and 4 deletions

View File

@@ -166,6 +166,26 @@ export async function listExecutions(
return response.json();
}
/**
* Get a specific execution by ID.
*/
export async function getExecution(
pipelineId: string,
executionId: string
): Promise<ExecutionStatus> {
const url = `${API_BASE}/api/pipelines/${pipelineId}/executions/${executionId}`;
const response = await fetch(url);
if (!response.ok) {
if (response.status === 404) {
throw new Error(`Execution not found: ${executionId}`);
}
throw new Error(`Failed to fetch execution: ${response.statusText}`);
}
return response.json();
}
/**
* Enable a pipeline.
*/