[bug] bl update: darwin-arm64 binary ships invalid ad-hoc signature, killed by macOS (Killed: 9)
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 65/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- cli, macos, nodejs, typescript
Hướng nghiên cứu
Vấn đề nằm ở chữ ký ad-hoc không hợp lệ của tệp nhị phân darwin-arm64. Hãy bắt đầu bằng cách kiểm tra đường ống CI/CD phát hành (có thể trong .github/workflows) để xem tệp nhị phân được xây dựng và ký như thế nào. Tìm bước tạo ra tạo phẩm macOS. Cách sửa là đảm bảo tệp nhị phân được ký đúng cách bằng codesign --force --sign - sau bất kỳ sửa đổi nào. Kiểm tra bằng cách xây dựng một tệp nhị phân cục bộ và xác minh rằng nó chạy trên macOS Apple Silicon.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Environment
- CLI: bl 2.0.1(binary 布局 ~/.local/share/bailian-cli/versions/2.0.1/bl)
- Skill: 2.0.1
- Node: v22.23.1(npm 渠道副本;二进制渠道不依赖 Node)
- OS: macOS 27.0 (26A428), Apple Silicon (arm64)
- Region: cn
Reproduce
-
环境原有 npm 安装的 bl 1.28.0(工作正常)
-
运行
bl update→ 更新到 2.0.1 二进制布局(~/.local/bin/bl → versions/2.0.1/bl) -
运行
bl --version:zsh: killed bl --version # exit 137 (SIGKILL) -
签名校验:
$ codesign -v .../versions/2.0.1/bl ...: invalid signature (code or signature have been modified) In architecture: arm64 $ codesign -dvv .../versions/2.0.1/bl CodeDirectory v=20400 size=492094 flags=0x20002(adhoc,linker-signed) Signature=adhoc Identifier=a.out
Expected
官方 darwin-arm64 二进制应带有效签名,bl update 后可直接运行。
Actual
二进制自带 ad-hoc(linker-signed)签名无效,Apple Silicon 内核强制签名校验直接 SIGKILL,无法启动。
已排除下载损坏/篡改
- 从 CDN 重新下载 v2.0.1 zip,sha256 与 manifest.json 的 assets.darwin-arm64.sha256 一致
- 解压后二进制 sha256 与
bl update安装到本地的完全一致(tar.gz 通道亦同) - 即官方 artifact 本身签名即无效,非网络损坏或篡改;文件无 com.apple.quarantine 属性,与 Gatekeeper 隔离无关
Workaround
codesign --force --sign - ~/.local/share/bailian-cli/versions/<ver>/bl
本地 ad-hoc 重签后 bl --version 正常输出 bl 2.0.1。
Notes
- Frequency: always(2.0.1 darwin-arm64 必现)
- Invoked via: terminal / agent
- 推测发布流水线在 link 后修改了二进制未重签;建议发布前
codesign --force --sign -或 CI 中加签名校验
- Ngôn ngữ chính
- TypeScript
- Star
- 333
- Fork
- 28
- Merge trung bình
- 1 ngày 8 giờ
- Pull request đã merge (30 ngày)
- 38
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của modelstudioai/cli
-
bug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 65/100
modelstudioai/cli#225 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 65/100
modelstudioai/cli#224 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 72/100
modelstudioai/cli#211 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
modelstudioai/cli#202 · 1 bình luận · 1 reaction ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 63/100
modelstudioai/cli#200 · 1 bình luận ·
Tất cả issue của modelstudioai/cli
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
bug v2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
modelcontextprotocol/inspector#2458 · 1 bình luận ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
carbon-design-system/ibm-products#9907 ·