github Gentleman-Programming/gentle-ai v3.1.0
v3.1.0 — ODD closes each task with a work-unit commit and reviews per commit or slice

4 hours ago

Gentle AI v3.1.0 changes how Organic Driven Development delivers work. Every ODD task now closes with a work-unit commit on the feature branch, every commit is assessed by the native risk classifier against the last reviewed boundary, high-risk commits are reviewed right away, medium-risk commits are reviewed per PR slice, and the delivery strategy with chained pull requests now applies to organic work, not only to SDD. RDD stays the same user-owned switch; what changed is the candidate it sees.

Provenance

  • Previous stable: v3.0.29bf454d4
  • Release target: v3.1.0cfc415ce4d330ada53ff6ece99f9f11b63956f51
  • Release workflow: run 35221846430
  • Verification: preflight, release, and verify jobs all succeeded.
  • Provider contract: 1.2.0

What's new

Every ODD task closes with a work-unit commit

Step 6 of the ODD protocol now ends each task with at least one work-unit commit on the feature branch (branch first when on the default branch), with tests and docs alongside the behavior, a Conventional Commit message, and the commit identity recorded in the feature document as evidence. Work-unit commits are part of authorized substantial ODD implementation; push, pull request creation, and merge remain the user's decisions under ordinary repository policy. A 24-task feature no longer reaches the reviewer as one accumulated candidate.

Native review per commit or per PR slice

After each work-unit commit, when RDD is enabled, the orchestrator runs gentle-ai review assess --base-ref <last reviewed boundary> --committed-only on that commit. Passive or low stays silent and the boundary advances. High, or an unavailable or failed assessment, makes the commit itself the candidate and starts the native review immediately at that base. Medium defers to the PR slice: the commits accumulated since the last reviewed boundary, bounded by the delivery budget of about 400 authored changed lines, reviewed at slice close. Every reviewed boundary becomes the next base, and the feature document records the assessed tier and outcome per task (granted, declined, passive, deferred to slice, or unavailable). Risk classification, consent, and authority are unchanged: the classifier is evidence-only, so it decides the tier, never the model.

Delivery strategy and chained PRs for organic work

At feature-document creation the orchestrator forecasts authored changed lines and keeps a running count from work-unit commits. One delivery strategy per feature uses the SDD vocabulary (ask-on-risk, auto-chain, single-pr, exception-ok); when the forecast or the running count exceeds about 400 authored changed lines, ask-on-risk asks once for the chain strategy (stacked-to-main or feature-branch-chain), auto-chain asks only for a missing chain strategy and slices, and slice boundaries are recorded in the feature document. The work-unit-commits and chained-pr skills are resolved by registry name before any pull request is planned or created.

Included work: #4714 (issue #4713). The README now presents ODD as a feature with its own cycle diagram and corrects what SDD Verify and Archive do (#4709).

Breaking changes

No breaking changes are declared for v3.1.0. The module path stays at /v3, the provider contract remains byte-frozen at 1.2.0, and no review CLI flag changed: review assess and review status already accepted --base-ref with --committed-only.

Run gentle-ai sync after upgrading: the contract lives in the installed orchestrator guidance, so an un-synced install keeps the previous "review at the deliverable boundary" wording.

Upgrade now

brew upgrade gentle-ai
gentle-ai sync

Windows and other source installs:

go install github.com/gentleman-programming/gentle-ai/v3/cmd/gentle-ai@v3.1.0
gentle-ai sync

Run gentle-ai sync after upgrading so managed agent, reviewer, and runtime assets match the installed binary.

What was fixed

Nothing beyond the contract change. The oversized lens-context class (#4680, with the pi occurrence on #4611) stays open on the Go side; the direction is documented on #4680, and this release removes its most common trigger by keeping candidates at commit or slice size.

Numbers

  • 6 files changed, 112 insertions, 14 deletions in #4714.
  • Contract rendered identically for all supported agents (TestRenderRoutingIsSemanticallyEqualAcrossAgents).
  • First real run in pi: 4 work-unit commits, two native reviews (one four-lens on the high commit, one single-lens at slice close), zero blocking findings.

Install

brew install gentleman-programming/tap/gentle-ai

Or from source: go install github.com/gentleman-programming/gentle-ai/v3/cmd/gentle-ai@v3.1.0.

Don't miss a new gentle-ai release

NewReleases is sending notifications on new releases.