Skip to content

v0.4.2

Latest

Choose a tag to compare

@github-actions github-actions released this 24 Jul 03:41
· 14 commits to main since this release

Release Notes: BabeL-O v0.4.2

v0.4.2 is an interaction reliability patch. It fixes a critical bug where
AskUserQuestion responses never reached the model, hardens the question-response
HTTP path against schema rejection, and widens the watchdog timeout headroom so
interactive questions are not starved by the execution budget.

What Changed

  1. AskUserQuestion response delivery (critical fix)

    • The runtime now builds the provider-visible tool_result from finalOutput
      (which carries the user's answered selection) instead of result.output
      (the raw pending_question payload). Previously the model never saw the
      user's choice, making the entire question flow appear unresponsive.
  2. Question-response HTTP path hardening

    • The Zod schema for POST /v1/sessions/:id/questions/:toolUseId/response
      now accepts null / omitted selectedIndices and selectedLabels (Go nil
      slices marshal to JSON null), coercing them to empty arrays. A cancelled
      question no longer 400s the endpoint and leaves the runtime polling until
      its 180s deadline.
  3. Go TUI Esc-cancel fix

    • The Esc key in the AskUserQuestion overlay now returns the HTTP tea.Cmd
      instead of discarding it. Previously the cancel HTTP POST never fired,
      leaving waitForQuestionResponse to time out.
    • Esc now sends empty slices ([]int{}, []string{}) instead of Go nil,
      matching the Zod schema.
  4. Watchdog timeout headroom

    • The Go TUI watchdog grace increased from 60s to 120s (watchdog 300s vs
      question wait 180s), preventing the race where the model's pre-question
      latency consumes the grace and the watchdog aborts the question wait.
  5. Custom provider config schema

    • ProviderConfig now includes the models field (array of { id, name }),
      fixing the TypeScript build when the custom provider wizard saves models.

Install

macOS and Linux:

curl -fsSL https://raw.githubusercontent.com/SuTang-vain/BabeL-O/main/scripts/install.sh | BBL_VERSION=v0.4.2 bash
bbl go

Prerequisite: Node.js >= 22 on PATH.

Expected Release Assets

Verification

Before publishing the tag, maintainers should run:

npm run typecheck -- --pretty false
npm run format:check
npm run deps:audit
npm test
npm run build:smoke
cd clients/go-tui && go test ./... && make build && ./bin/go-tui --version

After release assets are uploaded, smoke-test the public installer:

tmp="$(mktemp -d)"
curl -fsSL https://raw.githubusercontent.com/SuTang-vain/BabeL-O/main/scripts/install.sh | \
  BBL_VERSION=v0.4.2 BBL_INSTALL_DIR="$tmp/bin" HOME="$tmp/home" bash
"$tmp/bin/bbl" --version
"$tmp/bin/bbl" go --check --no-start-nexus --url http://127.0.0.1:9

Known Notes

  • v0.4.2 keeps the lightweight portable package strategy: the package uses the
    user's system Node.js >= 22 and bundles the matching Go TUI binary.
  • The AskUserQuestion fix is the primary reason for this patch release. If you
    use bbl go with any model that calls AskUserQuestion, upgrade from v0.4.1.

BabeL-O v0.4.2 发布说明

v0.4.2 是交互可靠性补丁版本。修复了 AskUserQuestion 用户选择无法回归模型的关键
bug,加固了问题响应 HTTP 路径的 schema 校验,并扩大了 watchdog 超时余量以避免交互
式问题被执行预算截断。

主要更新

  1. AskUserQuestion 响应传递(关键修复)

    • 运行时现在从 finalOutput(包含用户 answered 选择)而非 result.output
      (原始 pending_question 载荷)构建模型可见的 tool_result。此前模型永远
      看不到用户的选择,导致整个问题流程表现为无响应。
  2. 问题响应 HTTP 路径加固

    • POST /v1/sessions/:id/questions/:toolUseId/response 的 Zod schema 现在接受
      null / 省略的 selectedIndicesselectedLabels(Go nil slice 序列化为
      JSON null),将其转换为空数组。取消问题不再导致 400 错误并让运行时轮询到
      180s 超时。
  3. Go TUI Esc 取消修复

    • AskUserQuestion 弹窗中的 Esc 键现在返回 HTTP tea.Cmd 而非丢弃它。此前取消
      的 HTTP POST 永远不会触发,waitForQuestionResponse 会超时。
    • Esc 现在发送空 slice([]int{}, []string{})而非 Go nil,匹配 Zod schema。
  4. Watchdog 超时余量

    • Go TUI watchdog grace 从 60s 增加到 120s(watchdog 300s vs 问题等待 180s),
      避免模型在调用 AskUserQuestion 前的延迟消耗掉 grace 导致 watchdog 截断问题等待。
  5. 自定义供应商配置 schema

    • ProviderConfig 新增 models 字段({ id, name } 数组),修复自定义供应商
      向导保存模型时的 TypeScript 构建错误。

安装

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/SuTang-vain/BabeL-O/main/scripts/install.sh | BBL_VERSION=v0.4.2 bash
bbl go

前提条件:PATH 中有 Node.js >= 22。