Skip to content

Releases: bacharSalleh/leanlab

v0.2.4

Choose a tag to compare

@github-actions github-actions released this 27 Jun 14:22

Changed

  • Finished the OOP/DI migration: removed all module-level delegating shims
    (spec_task, build_task, run_gate, coding_state, read_events,
    load_lab, score_with_fixes, check_lab, run_init, parse_session, …).
    Tests and the trace recorder now construct the classes directly, so cli.py
    is the sole composition root and there is one obvious way to call each unit.
    Behaviour is unchanged. Kept genuine helpers (make_runner factory, report
    renderer, ok/summarize predicates, clean_worktrees, serve_board).

Full Changelog: v0.2.3...v0.2.4

v0.2.3

Choose a tag to compare

@github-actions github-actions released this 27 Jun 13:18

Changed

  • Re-architected the Python codebase to OOP + dependency injection. Logic now
    lives in classes with constructor-injected collaborators (coding side:
    EventLog, LockStore, Git, Transcripts, Gate, Personas, Playbook,
    TechLead, SpecWriter, Engineer, ReviewPanel, Board; metric side:
    Lab, ResultsStore, Evaluator, Prompts, ExperimentLoop, LabDoctor,
    LabScaffold, InitArchitect, Dashboard). cli.py is the single
    composition root. Behavior is unchanged; thin module-level shims remain for
    the tests and the trace recorder.

Fixed

  • Honesty model: the isolated acceptance re-run now fails CLOSED on a timeout
    and on "no tests collected" (pytest exit 5) — previously a hung or
    uncollectable pristine run was treated as honest, letting gamed code through.
  • Git.merge reports failure when the branch carried no changes ("Already up to
    date") instead of a false success.
  • Structured-output parsing extracts NESTED JSON (spec/init replies) wrapped in
    prose or code fences via a brace-balanced, string-aware scan.
  • The metric dashboard detects experiment filenames with hyphens/dots.

Full Changelog: v0.2.2...v0.2.3

v0.2.2

Choose a tag to compare

@github-actions github-actions released this 26 Jun 17:43

Added

  • One-command release script (scripts/release.py) and a ruff check lint job in CI.

Changed

  • README is now user-facing (PyPI install + quick start for both lab types). The
    project concept, structure, two-lab mapping, and coding-lab flow moved to
    docs/OVERVIEW.md.

What's Changed

  • chore(deps): Bump astral-sh/setup-uv from 5 to 7 by @dependabot[bot] in #1
  • chore(deps): Bump actions/checkout from 4 to 7 by @dependabot[bot] in #4
  • chore(deps): bump softprops/action-gh-release from 2 to 3 by @dependabot[bot] in #2
  • chore(deps): Bump actions/setup-node from 4 to 6 by @dependabot[bot] in #3
  • chore(deps): bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #5

New Contributors

Full Changelog: v0.2.1...v0.2.2

v0.2.1

Choose a tag to compare

@github-actions github-actions released this 26 Jun 17:23

Fixed

  • Board task list now includes completed/cleaned tasks (built from the union of
    worktrees + results + events), so merged tasks no longer vanish.
  • Task slugs are readable and word-bounded (first sentence, filler dropped, cut
    on a word boundary) instead of a blind 40-character chop.

Changed

  • The board timeline is now loop-faithful: each round is one
    engineer → gate → review iteration, with an explicit loop-back and a
    partial-record flag when a merged task's events weren't fully logged.

Full Changelog: https://github.com/bacharSalleh/leanlab/commits/v0.2.1