Skip to content

Understudy Desktop v0.3.41

Choose a tag to compare

@github-actions github-actions released this 22 Jul 21:28
cf338e7

Understudy Desktop 0.3.41 bundles CLI 0.6.38 and brings the benchmark lab into the app.

Highlights

  • Experiment lineage cards — every result in the app now traces back to the run, dataset, and prompt that produced it (understudy.experiment.v1 sidecar).
  • Upload approval gate — the drag-drop training flow asks before anything leaves your machine; nothing uploads without an explicit yes.
  • Benchmark linkage pane — see which benchmark and split each experiment was scored against, right next to the result.
  • Pi chat benchmark tools — the embedded Pi chat is wired to the benchmark/experiment spine, and the new operate-benchmark-lab skill drives the whole lab conversationally.
  • Sidebar cleanup — New chat unnested to the top level; clipping, overlap, and leftover artifacts fixed.
  • Smart defaults in the bundled CLI — a one-time trust posture replaces per-call approval prompts.
  • The full benchmark CLI spinebenchmarks from-dataset turns labeled datasets into first-class benchmarks; the partner report produces the honest benchmark-and-savings deliverable; trivial-agent calibration arms, majority-class floors, and the ABC rigor report keep scores honest; GEPA-style prompt evolution runs over prompt-override experiment arms.

Existing installs update in place via the Tauri updater (latest.json on this release).

What's Changed

  • Add local trace benchmark foundry by @lluisinthedesert in #314
  • Benchmark hub: benchmark.v1 spine, local hub/leaderboard viewer, real dogfood data, correctness + hardening + tests by @lluisinthedesert in #315
  • Benchmark hub: full foundry unification — lifecycle-aware viewer, one review store, one styling system, designed empty states by @lluisinthedesert in #317
  • Complete trace foundry runtime and environment workflow by @lluisinthedesert in #316
  • Add reusable local trace viewer by @aamir in #318
  • Foundry fixes: cut Prime push (privacy), batch truncation, semantic gold, promote verb, schema-collision resolution by @lluisinthedesert in #319
  • Roadmap wave: trace-aware grouping, judgeable contracts, run queue + executor, narrative layout by @lluisinthedesert in #320
  • Automation-focus round: accepted-task runs, statement-first task page, regenerate-env + environment fixes by @lluisinthedesert in #321
  • Live rollout watching + fair anchor scoring + world validation + judgeability guarantee by @lluisinthedesert in #322
  • Fix live-journal newlines (empty live view during real rollouts) by @lluisinthedesert in #323
  • Observation-tightened world-model validation by @lluisinthedesert in #324
  • Unify benchmark artifact producer/consumer contracts behind one shared codec by @lluisinthedesert in #326
  • Add ABC benchmark-rigor checkpoints to eval skills by @lluisinthedesert in #330
  • docs: benchmark-hub → desktop migration scoping by @lluisinthedesert in #329
  • Add instrument skill: zero-friction trace-capture on-ramp by @lluisinthedesert in #331
  • Incumbent baseline: record the capture-producing model, rerun it as a labeled arm, gate tasks on calibration by @lluisinthedesert in #325
  • fix(skills): add missing Resolve CLI section to instrument skill (unbreak main gates) by @lluisinthedesert in #332
  • Sentinel gates against the silent-zero failure class by @lluisinthedesert in #328
  • Agent-operator MCP surface: understudy benchmarks mcp by @lluisinthedesert in #327
  • Trivial-agent calibration arms (null/spam) + ABC rigor report by @lluisinthedesert in #333
  • Statistical honesty + environment integrity: bootstrap CIs, gold-leakage audit, rollout isolation pin by @lluisinthedesert in #334
  • Exception-based benchmark review: auto-accept policy + conversational task edit by @lluisinthedesert in #335
  • Fuzzy tier for the gold-leakage audit (shingles + fingerprints) by @lluisinthedesert in #336
  • Surface follow-ups: floors rendering, MCP policy tools, configurable auto-accept by @lluisinthedesert in #337
  • Oracle full-contract coverage: response obligations verified against stored gold by @lluisinthedesert in #338
  • Harden benchmark run queue/executor: claims + capability gate, per-rollout timeout, structural output isolation by @lluisinthedesert in #339
  • Prompt-override experiment arms (run-scoped SOP suffix, capability-gated) by @lluisinthedesert in #340
  • Fixtures-state-split: stop serving gold post-state to candidates by @lluisinthedesert in #342
  • App-replay arm (tier 1): run the user's own app on frozen benchmark tasks by @lluisinthedesert in #341
  • benchmark hub: multi-objective (Pareto) trade-offs view by @lluisinthedesert in #343
  • Skills: operate the full benchmark-lab lifecycle (MCP + CLI + daemons + desktop distribution) by @lluisinthedesert in #344
  • Local trained-artifact arms + majority-class floor for the benchmark run executor by @lluisinthedesert in #345
  • GEPA-style prompt evolution driving prompt_overrides arms (benchmarks evolve) by @lluisinthedesert in #347
  • Rejection guidance as an optimizable surface: guidance.json, recovery metric, --guidance override by @lluisinthedesert in #348
  • Experiment-lineage layer: understudy.experiment.v1 sidecar + CLI/MCP surfaces by @lluisinthedesert in #346
  • Fix benchmark-hub visual-QA findings (hydration, floors, feedback ids, pills, dev preflight) by @lluisinthedesert in #350
  • Born-accepted task inbox: proposed review flow + page redesign by @lluisinthedesert in #349
  • OpenAI response-shaped workload fixes (warp-domain-identification generality validation) by @lluisinthedesert in #351
  • Merge-train tooling: gated PR train, wave-ownership checker, retro doc by @lluisinthedesert in #352
  • Wire the embedded Pi chat to the benchmark/experiment spine by @lluisinthedesert in #353
  • benchmarks from-dataset: labeled datasets become first-class benchmarks by @lluisinthedesert in #354
  • Desktop app → benchmark/experiment spine bridge (lineage, approval gate, benchmark linkage) by @lluisinthedesert in #355
  • Partner report: the honest benchmark-and-savings deliverable by @lluisinthedesert in #356
  • Smart defaults: one-time trust posture replaces per-call approval gates by @lluisinthedesert in #357
  • Desktop sidebar cleanup: unnest New chat, fix clipping, remove artifacts by @lluisinthedesert in #358
  • release: Desktop 0.3.41 / CLI 0.6.38 by @lluisinthedesert in #359

Full Changelog: desktop-v0.3.40-mvp...desktop-v0.3.41-mvp