Skip to content

[FEATURE] #880 - Add LearningMode config (off | batch) to settings #909

@stephanj

Description

@stephanj

Parent Issue

Part of #880 — Introduce Batch-Level Learning and Strategy Memory

Context

The batch learning feature must be opt-in. A new configuration setting is needed to control whether cross-task learning is active during batch runs. When off (default), behavior is identical to today — each task runs in a fresh, isolated context.

Task

Add a LearningMode setting to the Agent/Spec settings UI.

Key Changes

  1. Create LearningMode enum:

    public enum LearningMode {
        OFF,    // default — no cross-task learning
        BATCH   // learning summaries injected into subsequent tasks
    }
  2. Add settings fields to the Agent settings UI:

    • Learning mode dropdown (Off / Batch)
    • Max learning context length spinner (default 1500 chars)
    • "Include telemetry in context" checkbox (inject timing/cost data)
  3. Persist via DevoxxGenieSettingsService or equivalent state service.

  4. Expose so SpecTaskRunnerService and SpecContextBuilder can read the mode.

Files to Create / Modify

  • src/main/java/com/devoxx/genie/model/enumarations/LearningMode.java (new)
  • src/main/java/com/devoxx/genie/ui/settings/agent/AgentSettingsComponent.java
  • src/main/java/com/devoxx/genie/service/DevoxxGenieSettingsService.java

Acceptance Criteria

  • LearningMode enum with OFF and BATCH values
  • Settings UI exposes mode toggle, max context length, and telemetry checkbox
  • Settings persist across IDE restarts
  • Default is OFF (backward compatible)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions