3 Commits

  • feat: add a zero-install web UI for easy over an extracted engine
    - extract the headless search out of `easy` into an engine that
      measures the baseline, resolves the target, and drives the
      producer/consumer loop, so the CLI and web share one search
    - make `State` fully observable — structured discovery feed, run phase,
      baseline/target, and final outcome — and render the same snapshots two
      ways: the in-place terminal panel and an SSE stream
    - serve a small embedded page (HTML/JS/Pico baked in via include_str!)
      on a hand-rolled hyper service: POST /api/run runs one search at a
      time, GET /api/events streams live snapshots as JSON until it settles
    - open the UI on a bare invocation (double-clicked binary); `web` with
      --host/--port/--no-open controls it explicitly
    - bump to 0.2.0