[bug] bl update: darwin-arm64 binary ships invalid ad-hoc signature, killed by macOS (Killed: 9)
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 65/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- cli, macos, nodejs, typescript
Piste de recherche
Le problème concerne la signature ad-hoc invalide du binaire darwin-arm64. Commencez par examiner le pipeline de CI/CD de publication (probablement dans .github/workflows) pour voir comment le binaire est construit et signé. Cherchez l'étape qui crée l'artefact macOS. La solution consiste à s'assurer que le binaire est correctement signé avec codesign --force --sign - après toute modification. Testez en construisant un binaire local et en vérifiant qu'il s'exécute sur macOS Apple Silicon.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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 中加签名校验
- Langage dominant
- TypeScript
- Étoiles
- 333
- Forks
- 28
- Merge moyen
- 1 j 8 h
- PR mergées (30 j)
- 38
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de modelstudioai/cli
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 65/100
modelstudioai/cli#225 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 65/100
modelstudioai/cli#224 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
modelstudioai/cli#211 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
modelstudioai/cli#202 · 1 commentaire · 1 réaction ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 63/100
modelstudioai/cli#200 · 1 commentaire ·
Toutes les issues de modelstudioai/cli
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
bug v2
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
modelcontextprotocol/inspector#2458 · 1 commentaire ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
carbon-design-system/ibm-products#9907 ·