Releases: fierceX/mink
Releases · fierceX/mink
Release list
v0.6.6
fix(ci): 修复 Ubuntu24.04 AppArmor userns 限制导致的 sandbox 集成测试失败 - bubblewrap 安装后新增「Enable unprivileged user namespaces for bubblewrap」 步骤:显式放开 apparmor_restrict_unprivileged_userns / unprivileged_userns_clone (仅在对应 sysctl 存在时改写),探测仍失败时回退加载镜像内 `/etc/apparmor.d/bwrap` profile,最后以带诊断(两个 sysctl 当前值 + bwrap 版本) 的 `::error::` 失败,避免只看到 `setting up uid map: Permission denied`。 - sandbox_linux.rs 的 `skip_or_panic` 补充 hint:指明 Ubuntu24.04+ 的 userns 限制 与对应 sysctl,使同类失败自解释。 验证:workflow YAML 解析、步骤脚本双分支(stub bwrap 返回 0/1)本地通过; fmt/clippy 通过;sandbox_linux 在 macOS 为 0 tests(Linux-only)。Linux 真机 行为由 CI 验证(本机无 Linux/Docker,交叉检查被 aws-lc-sys 构建脚本挡住)。
v0.6.5
chore(release): 0.6.5 版本与 changelog 定稿 - 版本号 0.6.4 → 0.6.5:workspace 与 lock、mink-cli/mink-server 的 mink-core 依赖声明、Python pyproject、server Web 包与 lock、README/DESIGN/EMBEDDING 的 依赖示例。 - CHANGELOG 的 Unreleased 定稿为 v0.6.5(2026-09-26),按「新增:LLM 有界自愈」 「修复:格式反馈闭环与候选保真」「兼容性说明」三节重组,移除过程性措辞与 未入库文档引用。
v0.6.4
chore(workspace): 移除临时 crate mink-prefab 与 mink-router - 删除两个 crate(prefab seeder / Flash 路由 backend)及其 CLI 集成: `prefab`/`router` feature、`--prefab`/`--router` 参数、config 字段、 tui 测试与 e2e 脚本(scripts/e2e_*router*.py)。 - 收尾清理:core README 的 "runtime prefab" 构建示例、context.rs 注释。 - workspace members 与 mink-cli 依赖/feature 同步收敛 (full-cli = ["cli", "tui", "python-sandbox"]);Cargo.lock 移除对应包; public_api_boundary 消费者目录同步。 - 文档同步:README/AGENTS/ARCHITECTURE/DESIGN/USAGE/EMBEDDING 与 mink-core、mink-cli README;删除 docs/ROUTER.md;CHANGELOG v0.6.4 段 新增“移除”节并更新兼容性说明(0.6.4 未打 tag,属该版本范围)。 - 保留:mink-core 宿主扩展点(PrefixSource / PostInitHook)与 prefix_snapshot、safety 等核心能力不受影响。 - 验证:cargo test --workspace 全绿(mink-core 默认 847 / all-features 874、 mink-server 217、mink-cli --all-features 6);make feature-matrix 通过; fmt/clippy 干净。
v0.6.3
fix(artifacts): 索引初始化不再截断并发写入 - ArtifactManager::ensure 的索引创建从 File::create(会截断已有文件)改为 create+append 打开:并发写出时,后到线程不再清空他人已追加的记录。 - 该竞态表现为索引行数少于成功写入数(CI 上 32 并发写出只剩 29 行)。 - 本地并发用例连续 50 轮通过;core 全量测试与 clippy(1.98, all-features) 退出 0,fmt 干净。
v0.6.2
docs:合并 0.6.2 变更记录并清理过程标识 - 将本轮健壮性修复按主题合并进 v0.6.2:请求取消/期限与操作生命 周期、进程清理、状态发布 fail-closed、文件权限、终端清洗、图片 缓存有界读取、CLI 反馈与维护项。 - 移除审计/复核编号(F/R/S/A 系列)与逐轮过程条目,保留用户可见 行为与延期说明。
v0.6.1
chore: 发布 0.6.1 版本准备 ## 版本号提升 0.6.0 → 0.6.1 - workspace 根 Cargo.toml 版本提升,五个 crate(mink-core/cli/prefab/router/server)经 version.workspace 同步;各 crate 间 mink-core/mink-prefab/mink-router 依赖引用同步升级,Cargo.lock 已刷新(仅五个 workspace 条目)。 - Python SDK pyproject.toml 与 Web 前端 package.json/package-lock.json(仅条目自身两处)同步为 0.6.1。 - 文档示例版本(README、crates/mink-core/README、docs/EMBEDDING、docs/DESIGN、docs/index.html)统一更新;CHANGELOG 历史条目与第三方依赖版本刻意保留。 - 带「更新日期」且内容确有变更的文档日期同步为 2026-09-08:crates/mink-cli/README(此前提交改过内容未同步)、crates/mink-core/README、docs/EMBEDDING、docs/DESIGN、docs/tools。 ## CHANGELOG v0.6.1 - 顶部 Unreleased 段落落版为 `## v0.6.1 (2026-09-08)`,含 Shift+Enter 换行、TUI 粘贴图片(Ctrl+V,macOS)、费用统计移除 & TUI 流式渲染修复三组。 - 修正过时计数:Shift+Enter 测试 2 → 3 个用例;粘贴图片 29 → 31 个用例。 ## 验证 - cargo metadata 刷新 Cargo.lock;`mink --version` → `mink 0.6.1`;pyproject/package.json/package-lock 均读出 0.6.1。 - cargo fmt --check 干净;cargo clippy --workspace --all-targets --all-features -D warnings 0 警告;cargo test --workspace 全绿(mink-cli 192 passed/1 ignored,mink-core 727 passed/32 ignored)。
v0.6.0
test: 修复 mink-server 环境变量测试的并发竞态
`user_minkrc_model_is_default_when_no_env` 在 CI 偶发失败(期望 env-model
却读到 .minkrc 默认值):三个测试文件在同一个二进制进程内并行读写全局
环境变量 `MODEL` / `HOME` / `DEEPSEEK_*`,无任何互斥——config.rs 的
`remove_var("MODEL")` 会与 agent_config.rs / registry.rs 的 `set_var("MODEL")`
交错,形成先写后删的窗口,使 env 优先级断言读到残留文件层值。
修复:
- `session/mod.rs` 新增 `#[cfg(test)] TEST_ENV_LOCK`(tokio::sync::Mutex,
跨 await 持锁不触发 await-holding-lock);注释说明所有 env 写测试必须持锁。
- 四个 env 写测试统一持锁:config.rs 两个(HOME/MODEL/MINK_HOME)、
agent_config.rs 的 env 覆盖测试、registry.rs 的 build_options 集成测试
(async 测试用 lock().await,同步测试用 blocking_lock())。
- 现有 `defaults_and_env_are_serialized_within_one_test` 的注释已声明该约束,
但此前没有跨文件互斥机制;registry.rs 的 save/restore 模式保留(锁内
恢复,避免持锁期间读取到别的测试写入的值)。
验证:`cargo test -p mink-server --bin mink-server` 连续 8 轮 24/24 全绿
(修复前同命令复现失败);workspace 全量测试通过(core 725/CLI 154/router
等),`cargo fmt --check` 与 `cargo clippy --workspace --all-targets
--all-features -- -D warnings` 零警告。
v0.5.0
feat(server): 完整复刻 CLI 的 .minkrc 配置读取 - 新增 session/agent_config.rs:逐字段复刻 mink-cli 的 MinkConfigFile (provider/generation/context/tools/tools.edit/signal/sandbox/sandbox_python, deny_unknown_fields 与 CLI 一致),支持用户级 ~/.minkrc 与项目级 <cwd>/.minkrc 分层合并(项目覆盖用户) - Registry.build_options 按会话 cwd 合并配置层,完整应用到 AgentOptions (镜像 CLI 的 assemble_runtime_options);env(MODEL/DEEPSEEK_API_KEY/ DEEPSEEK_BASE_URL/MINK_SIGNAL_POLICY/LOG_EVENTS)保持 server 文档化 优先级覆盖文件层 - ServerConfig 删除旧的扁平 model 解析,改用分组格式 - 修复:with_provider_options 覆盖身份字段的问题(模型/key/url 在分组 应用后重放);未配置字段不再被 unwrap_or_default 覆盖成 0/false - 新增 6 个测试:分组解析/扁平键拒绝/项目覆盖用户/env 优先/尺寸后缀/ build_options 端到端(捕获实际 LLM 请求的 model/api_key/base_url) - docs: server.md / USAGE.md 同步配置说明 验证:workspace 860 测试通过;clippy/fmt 零错误
v0.4.0
docs: 补全 0.4.0 变更记录并同步 server/架构/AGENTS 文档 - CHANGELOG v0.4.0 条目按提交历史重写:runtime 所有权与统一事件、AgentTool、session 持久化加固、server 生命周期/SSE 协议、Web 权威恢复、sandbox 取消、CI 矩阵与测试 - docs/server.md 全面更新:fs2 lease、project-aware API、SSE envelope/stream_gap、阶段机与 graceful shutdown - AGENTS.md / docs/ARCHITECTURE.md 对齐 0.4.0 runtime 门面与 server 模块职责
v0.3.3
fix: 恢复 Cargo.lock 中被误改的第三方依赖版本 批量更新 0.3.2 -> 0.3.3 时误将 deltae / ratatui-widgets 两个第三方 依赖的版本一并改写。已恢复为 0.3.2(checksum 原本未变,仅 version 行);mink-core / mink-cli / mink-server 保持 0.3.3。