{"record":{"id":"12bc72b4073e8184","repo":"ruvnet/ruflo","slug":"progress-tracking-error","errorCode":null,"errorMessage":"Progress tracking error","messagePattern":"Progress tracking error","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"v3/plugins/gastown-bridge/src/convoy/tracker.ts","lineNumber":781,"sourceCode":"        return 'in_progress';\n      default:\n        return 'open';\n    }\n  }\n\n  /**\n   * Start progress tracking timer\n   */\n  private startProgressTracking(convoyId: string): void {\n    if (this.progressTimers.has(convoyId)) {\n      return;\n    }\n\n    const timer = setInterval(async () => {\n      try {\n        await this.getStatus(convoyId);\n      } catch (error) {\n        this.logger.warn('Progress tracking error', {\n          convoyId,\n          error: error instanceof Error ? error.message : String(error),\n        });\n      }\n    }, this.config.progressUpdateInterval);\n\n    this.progressTimers.set(convoyId, timer);\n  }\n\n  /**\n   * Stop progress tracking timer\n   */\n  private stopProgressTracking(convoyId: string): void {\n    const timer = this.progressTimers.get(convoyId);\n    if (timer) {\n      clearInterval(timer);\n      this.progressTimers.delete(convoyId);\n    }","sourceCodeStart":763,"sourceCodeEnd":799,"githubUrl":"https://github.com/ruvnet/ruflo/blob/fa13ee4ad60ac2090b1480656eb233521790d640/v3/plugins/gastown-bridge/src/convoy/tracker.ts#L763-L799","documentation":"Log warning inside the convoy progress-tracking interval: the periodic getStatus(convoyId) refresh threw; the error is logged with the convoyId and the interval keeps ticking so tracking resumes next cycle.","triggerScenarios":"Thrown at v3/plugins/gastown-bridge/src/convoy/tracker.ts:781 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the logged cause; ensure the convoy tracker storage is writable and the convoy ID exists."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fa13ee4ad60ac2090b1480656eb233521790d640","analyzedAt":"2026-08-18T21:34:22.708Z","contentChangedAt":"2026-08-18T21:34:22.708Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}