ruvnet/ruflo · error · QECoreError
Failed to get progress
Error message
Failed to get progress
What it means
QECoreBridge.getProgress() failed to fetch or map the task's status from taskService (call threw, or status shape was unusable). The catch logs the task id and re-raises wrapped, so progress polling surfaces as a bridge error rather than a raw service exception.
Source
Thrown at v3/plugins/agentic-qe/src/bridges/QECoreBridge.ts:576
throw new QECoreError('Failed to cancel task', error as Error);
}
}
async getProgress(): Promise<TaskProgress> {
try {
const status = await this.taskService.getStatus(this.id);
this._status = status.status;
return {
percentage: status.progress || 0,
currentStep: status.currentStep || 'Unknown',
totalSteps: status.totalSteps || 0,
completedSteps: status.completedSteps || 0,
estimatedRemainingMs: this.estimateRemaining(status),
};
} catch (error) {
this.logger.error(`Failed to get task progress: ${this.id}`, error);
throw new QECoreError('Failed to get progress', error as Error);
}
}
private estimateRemaining(status: TaskStatus): number {
if (!status.totalSteps || !status.completedSteps) return 0;
if (status.completedSteps >= status.totalSteps) return 0;
// Rough estimate: 1 second per remaining step
const remainingSteps = status.totalSteps - status.completedSteps;
return remainingSteps * 1000;
}
}
/**
* QE Core Error class
*/
export class QECoreError extends Error {
public readonly cause?: Error;View on GitHub (pinned to fa13ee4ad6)
Solutions
- Verify the task or workflow id used for progress lookup.
- Inspect the underlying error from the progress call.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at v3/plugins/agentic-qe/src/bridges/QECoreBridge.ts:576 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18).
Data as JSON: /api/errors/27b472012f2d6366.
Report an issue: GitHub.