Release v1.144.1

This commit is contained in:
coso
2026-09-14 01:26:19 +08:00
parent 4a2e408b49
commit de67918442
8 changed files with 85 additions and 75 deletions
+8 -18
View File
@@ -1,39 +1,29 @@
## Lime v1.144.0
## Lime v1.144.1
Simplified Chinese release notes are the primary version.
### New Features
- Added Codex-shaped `history_cell`, `exec_cell`, `render`, history replay, and ANSI terminal owners for TUI transcript, command output, diff rendering, and wide-character handling.
- Added canonical Thread/Turn/Item history pagination and metadata-only resume cursors. TUI now loads older history through App Server `thread/items/list` and provides transcript pager and `/export` support.
- Expanded TUI startup, reconnect, resize/reflow, terminal palette/focus, Vim editing, and session recovery paths with real PTY/VT100 Gate B scenarios and stable integration suites.
- Aligned the CLI working-directory flags with Codex using `--cd` and `-C`, and extended CLI/TUI structure inventory, current-fixture guards, and npm launcher tests.
- None.
### Fixes
- Fixed canonical command completion projection so canceled commands consistently report `canceled`, with regression coverage for raw lifecycle and redacted interaction events.
- Fixed TUI history hydration, disconnected editing, terminal restoration, Unicode cursor handling, narrow-terminal wrapping, queue recovery, multi-agent projection, and Vim search boundaries.
- Fixed Windows CI CLI npm packaging by invoking `npm.cmd` through the Windows command interpreter, and added ALSA development dependencies required by the Linux CLI runner.
- Corrected the Electron Cloud credential test to ensure renderer-visible metadata never contains the session secret.
- Fixed the Windows CLI npm build by enabling the `windows-sys` `Win32_System_IO` feature required by `WriteFile`.
### Improvements and Refactoring
- Split TUI aggregate logic into unique `app/`, `history_cell/`, `exec_cell/`, `render/`, and `terminal_probe/` owners while keeping the App Server canonical projection as the sole session source of truth.
- Expanded script governance, structure inventory, CLI/TUI Gate B, and five-language terminal regression coverage while preserving real stdio/PTY validation.
- None.
### Testing and Quality
- Version consistency, TypeScript typecheck, protocol contracts, script governance, targeted CLI/TUI Rust tests, CLI Gate B, TUI Gate B, and the macOS arm64 npm packaged Gate B passed.
- TUI Gate B covered default turn, approval, user input, interrupt, failure, queue editing, multi-agent, focus/palette, resize/reflow, reconnect, and terminal restoration; the four real PTY resize/reflow cases passed 80/80 across 20 consecutive rounds.
- Windows hardware, signing/notarization, and complete Forge artifacts remain platform-runner evidence; any local Rust behavior-test limitation from the `rusty_v8` Darwin/aarch64 prebuilt archive will be recorded at closeout.
- Re-ran TUI Rust tests, formatting checks, and version consistency gates; GitHub Actions validates the cross-platform CLI artifacts.
### Documentation
- Updated architecture, quality, CLI/TUI execution plans, and structure inventory to document paginated resume cursors, history pagination, and the current TUI Gate B boundary.
- None.
### Other
- Bumped the root app, CLI npm package, Rust workspace, and Cargo.lock versions to `1.144.0`.
- This candidate includes all currently modified and untracked product, documentation, test, and script changes; the untracked local binary `rust_out` and the old `internal/exec-plans/release-v1.142.1-plan.md` are excluded and untouched.
- This patch release does not move the already published `v1.144.0` tag; CLI npm publishing continues through GitHub Actions npm Trusted Publishing.
**Full changes**: `v1.143.0` -> `v1.144.0`
**Full changes**: `v1.144.0` -> `v1.144.1`
+8 -18
View File
@@ -1,37 +1,27 @@
## Lime v1.144.0
## Lime v1.144.1
### 新功能
- TUI 按 Codex 形状补齐 `history_cell`、`exec_cell`、`render`、历史回放与 ANSI 终端能力,统一 transcript、命令输出、差异渲染和宽字符处理的 current owner。
- 增加 canonical Thread/Turn/Item 的历史分页与 metadata-only resume cursor,TUI 通过 App Server `thread/items/list` 加载 older history,并提供 transcript pager 与 `/export` 导出。
- 完善 TUI 启动、重连、窗口 resize/reflow、终端 palette/focus、Vim 编辑和会话恢复路径,加入真实 PTY/VT100 Gate B 场景与稳定测试套件。
- CLI 工作目录参数对齐 Codex 形状,支持 `--cd` 与 `-C`;扩展 CLI/TUI 结构 inventory、current fixture 守卫和 npm launcher 测试。
- 无。
### 修复
- 修复 command completion 取消状态的 canonical 投影,统一输出 `canceled`,并补充原始生命周期事件与脱敏交互事件的回归断言。
- 修复 TUI 历史 hydration、断线编辑、终端恢复、Unicode 光标、窄终端换行、队列恢复、多 Agent 投影和 Vim 搜索边界。
- 修复 Windows CI CLI npm 平台包对 `npm.cmd` 的启动方式,并补齐 Linux CLI runner 所需 ALSA 开发依赖。
- 修正 Electron Cloud credential 测试,确保 renderer 可见 metadata 不包含 session secret。
- 修复 Windows CLI npm 构建缺少 `WriteFile` 所需 `windows-sys` `Win32_System_IO` feature 的问题。
### 优化与重构
- 将 TUI 聚合逻辑拆分到 `app/`、`history_cell/`、`exec_cell/`、`render/`、`terminal_probe/` 等唯一 owner,保持 App Server canonical projection 为唯一会话事实源。
- 扩展脚本治理、结构 inventory、CLI/TUI Gate B 和五语言终端回归覆盖,保持真实 stdio/PTY 验证。
- 无。
### 测试与质量
- 已通过版本一致性、TypeScript 类型、协议合同、脚本治理、CLI/TUI 定向 Rust 测试、CLI Gate B、TUI Gate B 和 macOS arm64 npm packaged Gate B。
- TUI Gate B 覆盖默认回合、审批、用户输入、中断、失败、队列编辑、多 Agent、focus/palette、resize/reflow、reconnect 与终端恢复;resize/reflow 4 个真实 PTY 用例连续 20 轮共 80/80 通过。
- Windows 真机、签名/公证和完整 Forge 产物仍属于平台 runner 证据;本机 Rust 行为测试若受 `rusty_v8` Darwin/aarch64 预构建包限制,将在收尾明确记录。
- 补跑 TUI Rust 测试、格式检查与版本一致性门禁;跨平台 CLI 产物由 GitHub Actions 验证。
### 文档
- 更新架构、质量、CLI/TUI 执行计划与结构 inventory,记录 paginated resume cursor、历史分页和 TUI Gate B 的 current 边界。
- 无。
### 其他
- 根应用、CLI npm 包、Rust workspace 与 Cargo.lock 版本统一提升到 `1.144.0`。
- 本次候选包含当前工作树已修改及未跟踪的产品、文档、测试和脚本改动;排除未跟踪本机二进制 `rust_out` 与旧的 `internal/exec-plans/release-v1.142.1-plan.md`,两者均未删除。
- 修复版不覆盖已发布的 `v1.144.0` tag;CLI npm 发布继续使用 GitHub Actions npm Trusted Publishing。
**完整变更**: `v1.143.0` -> `v1.144.0`
**完整变更**: `v1.144.0` -> `v1.144.1`
@@ -0,0 +1,29 @@
# Lime v1.144.1 发布执行计划
状态:准备发布
日期:2026-09-14
目标:修复 `v1.144.0` Windows CLI npm 构建失败,并在不移动既有 `v1.144.0` tag 的前提下发布 `v1.144.1`。
## Release Candidate
- `release metadata`:`package.json`、`packages/cli/package.json`、`lime-rs/Cargo.toml`、`lime-rs/Cargo.lock`、`RELEASE_NOTES.md`、`RELEASE_NOTES.en.md`。
- `candidate changes`:`lime-rs/crates/tui/Cargo.toml` 的 Windows `windows-sys` feature 修复。
- `excluded changes`:工作树中并发进行的 TUI/A2 改动和未跟踪的旧 `release-v1.142.1-plan.md`,均保持原样。
## 根因与修复
Windows CLI 构建引用 `windows_sys::Win32::Storage::FileSystem::WriteFile`,但 `windows-sys 0.52` 还要求启用 `Win32_System_IO` feature。候选只增加该 feature,不改变运行时协议或 CLI/TUI 主链。
## 验证与退出条件
- [x] `cargo fmt --manifest-path lime-rs/Cargo.toml --all -- --check`
- [x] `cargo test --manifest-path lime-rs/Cargo.toml -p tui`
- [ ] `npm run verify:app-version`
- [ ] `npm run typecheck`
- [ ] CLI npm 定向测试与 Gate B
- [ ] GitHub Actions 四平台 CLI 构建、Release 资产和 npm Trusted Publishing
- [ ] 远端 `main`、`v1.144.1` tag、GitHub Release 与 npm registry 复核
## 发布约束
不使用聊天中暴露的 npm token;GitHub Actions 使用 npm OIDC Trusted Publishing。不得覆盖或移动 `v1.144.0` tag。
+36 -36
View File
@@ -31,7 +31,7 @@ dependencies = [
[[package]]
name = "agent-protocol"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"schemars",
"serde",
@@ -40,7 +40,7 @@ dependencies = [
[[package]]
name = "agent-runtime"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"anyhow",
@@ -170,7 +170,7 @@ dependencies = [
[[package]]
name = "ansi-escape"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"ansi-to-tui",
"ratatui",
@@ -248,7 +248,7 @@ checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
[[package]]
name = "app-server"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"agent-runtime",
@@ -314,7 +314,7 @@ dependencies = [
[[package]]
name = "app-server-client"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"app-server-protocol",
"app-server-transport",
@@ -330,7 +330,7 @@ dependencies = [
[[package]]
name = "app-server-daemon"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"app-server-protocol",
"app-server-transport",
@@ -342,7 +342,7 @@ dependencies = [
[[package]]
name = "app-server-protocol"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"schemars",
@@ -354,7 +354,7 @@ dependencies = [
[[package]]
name = "app-server-test-client"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"anyhow",
"app-server-client",
@@ -365,7 +365,7 @@ dependencies = [
[[package]]
name = "app-server-transport"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"app-server-protocol",
"axum",
@@ -1010,7 +1010,7 @@ checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831"
[[package]]
name = "cli"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"anyhow",
"app-server-client",
@@ -1062,7 +1062,7 @@ dependencies = [
[[package]]
name = "code-mode"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"anyhow",
"code-mode-host",
@@ -1080,7 +1080,7 @@ dependencies = [
[[package]]
name = "code-mode-host"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"axum",
"code-mode-protocol",
@@ -1096,7 +1096,7 @@ dependencies = [
[[package]]
name = "code-mode-protocol"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"prost",
"protoc-bin-vendored",
@@ -1110,7 +1110,7 @@ dependencies = [
[[package]]
name = "code-mode-runtime"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"base64 0.22.1",
"code-mode-protocol",
@@ -1935,7 +1935,7 @@ dependencies = [
[[package]]
name = "document-preview"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"flate2",
"tempfile",
@@ -2155,7 +2155,7 @@ dependencies = [
[[package]]
name = "execpolicy"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"anyhow",
"clap",
@@ -3576,7 +3576,7 @@ dependencies = [
[[package]]
name = "lime-agent"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"agent-runtime",
@@ -3611,7 +3611,7 @@ dependencies = [
[[package]]
name = "lime-config"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"async-trait",
"lime-core",
@@ -3627,7 +3627,7 @@ dependencies = [
[[package]]
name = "lime-core"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"async-trait",
@@ -3684,7 +3684,7 @@ dependencies = [
[[package]]
name = "lime-gateway"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"aes",
"async-trait",
@@ -3712,7 +3712,7 @@ dependencies = [
[[package]]
name = "lime-infra"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"chrono",
"dashmap 5.5.3",
@@ -3734,7 +3734,7 @@ dependencies = [
[[package]]
name = "lime-knowledge"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"chrono",
"hex",
@@ -3747,7 +3747,7 @@ dependencies = [
[[package]]
name = "lime-mcp"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"async-trait",
"axum",
@@ -3773,7 +3773,7 @@ dependencies = [
[[package]]
name = "lime-media-runtime"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"axum",
"base64 0.22.1",
@@ -3792,7 +3792,7 @@ dependencies = [
[[package]]
name = "lime-processor"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"async-trait",
"lime-core",
@@ -3832,7 +3832,7 @@ dependencies = [
[[package]]
name = "lime-server"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"async-stream",
@@ -3875,7 +3875,7 @@ dependencies = [
[[package]]
name = "lime-server-utils"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"axum",
"futures",
@@ -3890,7 +3890,7 @@ dependencies = [
[[package]]
name = "lime-services"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"anyhow",
"async-trait",
@@ -3933,7 +3933,7 @@ dependencies = [
[[package]]
name = "lime-skills"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"async-trait",
"dirs 5.0.1",
@@ -3955,7 +3955,7 @@ dependencies = [
[[package]]
name = "lime-websocket"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"axum",
"chrono",
@@ -4289,7 +4289,7 @@ dependencies = [
[[package]]
name = "model-provider"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"anyhow",
@@ -5116,7 +5116,7 @@ checksum = "b867cad97c0791bbd3aaa6472142568c6c9e8f71937e98379f584cfb0cf35bec"
[[package]]
name = "patch-apply"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"tempfile",
"thiserror 1.0.69",
@@ -6216,7 +6216,7 @@ dependencies = [
[[package]]
name = "runtime-core"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"app-server-protocol",
@@ -7477,7 +7477,7 @@ dependencies = [
[[package]]
name = "thread-store"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"chrono",
@@ -7804,7 +7804,7 @@ dependencies = [
[[package]]
name = "tool-runtime"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"app-server-protocol",
@@ -8009,7 +8009,7 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
[[package]]
name = "tui"
version = "1.144.0"
version = "1.144.1"
dependencies = [
"agent-protocol",
"ansi-escape",
+1 -1
View File
@@ -6,7 +6,7 @@ exclude = [
resolver = "2"
[workspace.package]
version = "1.144.0"
version = "1.144.1"
edition = "2021"
authors = ["coso"]
repository = "https://github.com/aiclientproxy/lime"
+1
View File
@@ -51,6 +51,7 @@ windows-sys = { version = "0.52", features = [
"Win32_Foundation",
"Win32_Storage_FileSystem",
"Win32_System_Console",
"Win32_System_IO",
] }
which.workspace = true
+1 -1
View File
@@ -5,7 +5,7 @@
"workspaces": [
"packages/*"
],
"version": "1.144.0",
"version": "1.144.1",
"description": "Open-source full-stack desktop AI agent for global users: coding, research, content, files, terminals, tools, multimodal work, and multi-agent workflows.",
"keywords": [
"ai",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@limecloud/lime",
"version": "1.144.0",
"version": "1.144.1",
"packageManager": "pnpm@9.15.9",
"description": "Lime CLI is an agent that runs in your terminal.",
"bin": {