ruvnet/ruflo · error

Plugin already initialized

Error message

Plugin already initialized

What it means

AQE plugin initialize() was invoked a second time while this.initialized is already true. The plugin is single-initialization by design; a repeated initialize() call indicates a lifecycle bug in the host or a plugin re-registration.

Source

Thrown at v3/plugins/agentic-qe/src/plugin.ts:711

    // Register agents
    const agents = this.getAgents();
    if (registry.registerAgents) {
      registry.registerAgents(agents);
    } else if (registry.registerAgent) {
      for (const agent of agents) {
        registry.registerAgent(agent);
      }
    }

    this.updateHealth('registry', 'healthy', 'Plugin registered successfully');
  }

  /**
   * Initialize the plugin with context
   */
  async initialize(context: IPluginContext): Promise<void> {
    if (this.initialized) {
      throw new Error('Plugin already initialized');
    }

    this.context = context;
    const configData = context.getConfig?.() ?? context.config ?? {};
    this.config = parseWithDefaults(PluginConfigSchema, configData) as AQEPluginConfig;

    // Initialize context mapper
    this.contextMapper = new ContextMapper();
    context.set?.('aqe.contextMapper', this.contextMapper);
    this.updateHealth('contextMapper', 'healthy', 'Context mapper initialized');

    // Initialize security sandbox
    this.sandbox = new SecuritySandbox(this.config.sandbox ?? undefined);
    context.set?.('aqe.sandbox', this.sandbox);
    this.updateHealth('sandbox', 'healthy', 'Security sandbox initialized');

    // Initialize memory namespaces
    try {

View on GitHub (pinned to fa13ee4ad6)

Solutions

  1. Check the initialized flag before calling initialize(), and skip re-initialization if the plugin is already up.
  2. Make initialize() idempotent, or call shutdown/reset first if a fresh initialization is intended.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at v3/plugins/agentic-qe/src/plugin.ts:711 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/3faf31b3d27f061f. Report an issue: GitHub.