Skip to content

0.13.7

Latest

Choose a tag to compare

@cevheri cevheri released this 31 Aug 20:41
· 14 commits to main since this release
Immutable release. Only release title and notes can be modified.

Agent: three more models, and five refusals that named no remedy

Eighteen models now drive every agent surface. The three added here were measured against
this release - six surfaces, five consecutive passing runs each, driven through the API the
UI uses and against the document this repository ships:

  • granite4.2:8b - closes every surface with no settings at all
  • nemotron-3-nano:30b - turnTimeoutMs, for one cell the clock was taking
  • qwen3.5:4b - suppressPlanReasoning, for a plan turn spent thinking

Two cells are recorded as thin rather than smoothed: qwen3.5:4b on data-analysis and
granite4.2:8b on database-assessment both re-read below 5/5 on a second sitting, and their
entries say so. A figure that reads steadier than the model is worse than one that says
where it is thin.

Five refusals read out of run ledgers had the same shape - the server knew what would have
worked and refused without saying it:

  1. no such column went back bare, while the columns that do exist and the table holding
    the missing one were already computed, sitting behind a lever two of sixteen models
    carried. Now ungated.
  2. present_answer refused with its contract instead of the problems it had already parsed.
  3. ANSWER_NOT_A_DATA_READ told runs to go and read something they had already read.
    Fourteen of fifteen measured runs were refused there, and eight held a good artifact at
    that moment. The refusal now hands over its id.
  4. An error the server could answer consumed one of the three repair attempts, so the fourth
    and correct statement was refused before it reached the database. Answered failures now
    cost no attempt; unanswered ones still cost one.
  5. The planning rule made correct refusals look like they should open with the phrase
    NO STATEMENT:. The wording is fixed rather than the reader widened.

The free-repair class was then narrowed to the branch it was argued for. A statement that
ran to completion at the engine and returned rows before blowing the row cap is no longer
free - three overruns exhaust the budget again.

verdictHoldLimit becomes per-model, joining the two reminder bounds beside it. The default
is unchanged at two and every shipped model resolves to it.

The published npm package declares its licence

package.json carried no license field, so @libredb/studio rendered on npm as
unlicensed - while the project has been MIT since its first release and the LICENSE file
was always inside the tarball, which npm includes regardless of the files list. The
declaration is what package managers, mirrors and licence scanners read, and only a new
release can carry it.

The coverage badge reports rather than asserts

The badge in all three READMEs was a hand-written shields.io image with
coverage-100%25-brightgreen baked into its URL. It rendered green because someone typed
100, not because anything measured it - so the one state it could never show was coverage
having fallen. The merged lcov is now published to Codecov as a report rather than as a
second gate, and the badge reports the measured number.

Also in this release

  • DuckDB's BEGIN;/COMMIT; is executed in the schema-diff test rather than cited from a
    block that disclaims it
  • The README links the MariaDB documentation entry
  • The AppImageHub listing is recorded in the distribution channels

Helm chart: 0.1.58

Tracks app release 0.13.7. No template, no value and no image behaviour changes.

Full changelog: 0.13.6...0.13.7