Cromford は、チケットを入れればレビューとマージ、リリース前検証まで完了した変更を納品するオープンソースのソフトウェアファクトリである。2026 年 11 月 3 日 03:52 UTC のコミット b35afb0 は 8 ファイル 425 行に及んだ(420 行の追加、5 行の削除)。コミットタイトルは“Cromford 2026.11.03 (upstream 22d8c0ad9714)”で、対象はコミットステータスを GitHub に投稿するシェルスクリプトと、その設定・ドキュメント・テストである。出典は GitHub 上の当該コミット(https://github.com/cromford-ai/cromford/commit/b35afb0f4607921d6b4800b6e601554cb82448ce)。
要点は二つ。bin/lib/gh-rest.sh は応答の JSON から `.message` を取り出し、GH_REST_MESSAGE として残す。2xx ではなく、かつ 304 や 404 でもない応答からのみ値を取得し、改行は 1 行に畳んでから 200 文字で切る。bin/lib/verdict-status.sh の vs_publish は App トークンを発行できる箱(gh_auth_armed)では ghs_ で始まるインストールトークンでのみ投稿する。gh-token.sh は発行失敗時に PAT を出力するため、ghs_ 以外のトークンは失敗とみなす。発行をもう一度試みた後も ghs_ でなければ、“vs_publish: no App token for <slug>” の 1 行だけを残して投稿しない(rc 1)。
失敗原因を読み取りやすくする変更も入った。エラー行には、HTTP ステータスと理由、トークン種別(app|pat|gh-auth|other、トークン値は出力しない)、GitHub が送ったメッセージが一緒に記録される。そして 403/429 がレート制限と分類され、GitHub の Retry-After が 1 秒以上のときだけ、その時間だけ待って一度だけ再投稿する。待機する最大秒数は VS_RETRY_AFTER_MAX_S であり、新規追加された catalog/lanes.d/_lib.verdict-status.json の lib.verdict-status.vs_retry_after_max_s 設定から読み取り、コード上の既定値は 30 秒である。設定値が整数でなければ 30 秒にフォールバックする。
ただし、このコミットだけでは範囲を確定しにくい。変更はシェルスクリプト内部のステータス投稿経路に限定され、公開されている事実にはライセンス・ユースケース・性能指標がない。285 行のテストファイルと 2026-11-02 の BH-8848 設計ノートは確認手順を示すだけで、実行結果は示されていない。トークン分類も接頭辞のみに依存するため、実際の権限レベルまでは現さない。またコミットタイトルは“App 発行が失敗したら継承トークンで投稿”と書かれているが、diff は armed な箱での継承トークンによる投稿を遮断している。どちらが意図された動作なのかは、このコミットだけでは確定できない。