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

  1. Verify the task or workflow id used for progress lookup.
  2. 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.