Skip to content

Frame-selection learning across runs (the "dreaming" feedback loop) #50

Description

@UditAkhourii

Idea

`selectFrames` in src/frames.ts picks frames uniformly at random each run. There's no memory of which frames actually produced the winning `nonObviousPick` for past problems.

Proposal

  • Persist a local log (e.g. `~/.adhd/history.jsonl`) of `{ problemShape, frameId, wasNonObviousPick, score }` after each run. `problemShape` can start as a cheap heuristic (keyword tags, or a short embedding) rather than anything fancy.
  • On future runs, bias `selectFrames`'s shuffle toward frames with a good track record for similar problem shapes, while still guaranteeing at least one wildcard and enough exploration (e.g. epsilon-greedy) that it doesn't collapse to always picking the same 2 frames.
  • Make this opt-in (`--learn` flag or config) and local-only initially — no telemetry leaves the machine.
  • This is what turns the tool from stateless-per-invocation into something that compounds with usage.

(Re-filed as part of a backlog reset; previously tracked as #10.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    architectureLoad-bearing design changesenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions