ruvnet/ruflo · error · QEHiveError

Failed to leave hive

Error message

Failed to leave hive

What it means

Teardown failed on the queen's hiveMind.leave (worker removals are best-effort and swallowed, but the queen leave itself rejected, e.g. backend unreachable). initialized may stay true and hive resources leak.

Source

Thrown at v3/plugins/agentic-qe/src/bridges/QEHiveBridge.ts:483

      // Remove all spawned workers
      for (const [workerId] of this.spawnedWorkers) {
        try {
          await this.hiveMind.leave(workerId);
          this.logger.debug(`Worker removed: ${workerId}`);
        } catch {
          // Best effort cleanup
        }
      }
      this.spawnedWorkers.clear();

      // Remove queen
      await this.hiveMind.leave(this.queenId);
      this.initialized = false;

      this.logger.info('QE Queen left hive successfully');
    } catch (error) {
      this.logger.error('Error leaving hive', error);
      throw new QEHiveError('Failed to leave hive', error as Error);
    }
  }

  /**
   * Broadcast task to allocated workers
   */
  private async broadcastTask(task: QESwarmTask): Promise<void> {
    await this.hiveMind.broadcast({
      message: JSON.stringify({
        type: 'qe-task',
        taskId: task.id,
        taskType: task.type,
        payload: task.payload,
        timeout: task.timeout,
        assignedAgents: task.agents,
      }),
      priority: task.priority === 'critical' ? 'critical' : 'normal',
      fromId: this.queenId,

View on GitHub (pinned to fa13ee4ad6)

Solutions

  1. Ensure the bridge is still registered before leaving the hive.
  2. Make leave idempotent so repeated calls do not fail.
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at v3/plugins/agentic-qe/src/bridges/QEHiveBridge.ts:483 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/e613f2741a219259. Report an issue: GitHub.