Skip to content

gentle-pi v3.4.0 — Native Questionnaires, a Gentle Shell Launcher, and Gentle AI v3.5.0

Choose a tag to compare

@Alan-TheGentleman Alan-TheGentleman released this 22 Sep 11:56
· 374 commits to main since this release
a1470f7

Gentle Shell v3.4.0 adds a first-party native questionnaire tool, ships the new gentle-shell launcher, expands animation, subscription-usage, and background-agent controls, and pins the package-local runtime to Gentle AI v3.5.0. It also hardens review candidate projection, OpenCode reviewer attribution, Windows owner probes, and generated-path compatibility. The npm package remains gentle-pi.

Provenance

  • Previous stable: v3.3.0 → 7e80e337c4b1cc503d90ff9566b35b2cea45b0ce
  • Release target: v3.4.0 → a1470f74a723ec1386e3440b49611ffef82399e5
  • Release validation: run 35724283400 passed package verification and published gentle-pi v3.4.0 to npm with signed provenance.
  • Pinned Gentle AI: v3.5.0 (0b335e43); review provider contract 1.2.0 remains unchanged.

What's new

First-party native questionnaires (#1274)

Gentle Shell now provides ask_user_question as a first-party tool: one to four questions, single- or multi-select answers, descriptions and previews, keyboard navigation, a scrollable dock-swap view, and an always-available free-text path back into normal conversation. The dialog stays in the dock rather than covering the transcript, and the same slice fixes committed-range adoption while an intended-untracked selection is active.

Included work: #1274 (issue #1141).

The gentle-shell launcher (#1312, #1313, #1314)

The package now installs a gentle-shell command with linked and isolated-home modes, a persisted home choice, Pi runtime discovery and version gating, signal and exit-code propagation, Windows command-shim support, and guarded postinstall behavior that leaves global Pi settings untouched for ordinary global npm installs. The launcher core, executable packaging, generated runtime, integration tests, and user documentation shipped as a three-slice chain.

Included work: #1312, #1313, and #1314.

Configurable animation and command menus (#1241, #1270)

Gentle-owned animations now support global quality, performance, and potato policies, preserving the existing cadence by default while offering reduced-cadence and timer-free modes. Calling /gentle:animations or /gentle:background-subagents without an argument opens a native selectable menu; typed sub-actions and headless status behavior remain available.

Included work: #1241 (issue #1142) and #1270 (issue #1268).

Extension-provided subscription usage and bounded cache warming (#1279, #1300)

Extensions can register provider-specific subscription usage sources through gentle-pi:usage-source/v1; malformed registrations and failing third-party fetches are isolated from the shell. Background work can also participate in Pi's native cache_warming_decision hook, bounded to current-session tasks and an economic threshold rather than hidden polling or settings changes.

Included work: #1279 (issue #1278) and #1300 (issue #1299).

Provider-decided RDD default and Gentle AI v3.5.0 pin (#1248, #1336)

An unset receipt-driven-development mode now accepts the provider's effective: on, source: default decision without mutating user settings; explicit global or clone-local OFF remains authoritative. The package-local runtime advances to Gentle AI v3.5.0 on the /v3 module. See Pinned runtime below.

Included work: #1248 (issue #1247) and #1336 (issue #1332).

Shell polish and refreshed onboarding (#1250, #1292, #1322)

Fullscreen mode now paints a rule row beneath its status line. The README and reference documentation add a feature gallery, an ODD flow diagram, aligned Gentle AI presentation, and an animated banner so the current shell experience is visible before installation.

Included work: #1250 (issue #1249), #1292 (issue #1291), and #1322 (issue #1321).

What was fixed

Review candidate projections and generated-path evidence (#1266, #1271, #1331)

Risk assessment now forwards validated intended-untracked declarations and preserves sanitized native diagnostics. Ordinary START materializes the provider's exact untracked selection once instead of trying an include-all candidate first, preventing projection drift. START manifests also accept the provider-owned optional generated: true marker while continuing to reject false, non-boolean, and unknown fields.

Included work: #1266 (issue #1040), #1271 (gentle-ai issue #2700), and #1331 (issue #1239).

OpenCode reviewer attribution and Windows owner-probe reliability (#1243, #1288)

In-process reviewer calls routed through OpenCode now carry the live session attribution that Pi's main agent loop normally supplies, preventing MissingSessionID failures before a lens runs. On Windows, transient whoami, PowerShell, and icacls probe errors receive one bounded retry, while authority failures remain fail-closed and surface the underlying error code.

Included work: #1243 (issue #1242) and #1288 (issue #1287).

Lower render overhead in the shell (#1255)

Quiet-tools rendering, the rail scrollbar, and the banner header now reuse per-render work instead of repeating it, reducing avoidable work in frequently painted shell surfaces without changing their behavior.

Included work: #1255 (issue #1254).

Keep maintainer-only release automation out of the package (#1234)

The maintainer release skill is no longer shipped to package consumers; release procedure remains repository-owned instead of becoming an installed end-user workflow.

Included work: #1234 (issue #1233).

Pinned runtime

The package-local runtime is now Gentle AI v3.5.0 on github.com/gentleman-programming/gentle-ai/v3, with signed release archives for Darwin and Linux and a SumDB-verified source build for Windows. The review provider bundle remains byte-identical at contract 1.2.0 (SHA-256 547b68e172cc87aa297309d61624e5fc2c24d407a494b53eeb5a2b053904352c). Both v3.4.0 and v3.5.0 advertise capabilities v2.6, so no new capabilities identity is introduced; the ground-truthed NATIVE_CLI_CONTRACTS row for 3.5.0 repeats 3.4.0.

Breaking changes

  • Gentle Shell now owns the ask_user_question tool name. Remove npm:@juicesharp/rpiv-ask-user-question from Pi's configured packages before starting this version; Pi intentionally refuses to load two extensions that register the same tool name.

Existing explicit RDD mode choices, ODD, SDD, review, launcher, and package interfaces otherwise remain compatible.

Upgrade

pi install npm:gentle-pi@3.4.0

If configured, remove npm:@juicesharp/rpiv-ask-user-question so the first-party questionnaire can register. Restart Pi, then run gentle-ai sync so the managed orchestrator assets match the pinned runtime.

Numbers

19 non-merge commits, 20 merged pull requests, and 5 unique GitHub PR authors since v3.3.0.

Verification

  • pnpm test passed on macOS for the exact release tree: 2,999 tests, 2,961 passed, 38 platform-gated skipped, and 0 failed; the provider-contract mirror and runtime harness also passed.
  • Package verification passed for 167 files and 69 exact byte-pinned contract artifacts for Gentle AI v3.5.0; npm pack --dry-run produced the v3.4.0 package with 537 files.
  • The packed-runner E2E installed gentle-pi v3.4.0 with the real published Gentle AI v3.5.0 assets. The reviewed candidate and release target have the identical Git tree b52656d1e1ed8b5676e358e46b99fe43e3b3e9c3.
  • The pin bump passed native high-risk review with four lenses under lineage review-0155a2fef8cd8c2f; it was approved and acknowledged without entering correction.
  • Pull request #1336 passed Linux/package verification, the macOS session-transport job, Windows review-repository coverage, and CodeRabbit before merge.

Install

pi install npm:gentle-pi@3.4.0

Package: https://www.npmjs.com/package/gentle-pi

Full changelog: v3.3.0...v3.4.0