Skip to content

build: draft releaseを作り、tagのpushをもってpublishする方式に#96

Open
qryxip wants to merge 7 commits intoVOICEVOX:mainfrom
qryxip:pr/build-create-draft-release-and-publish-it-tag-pushed
Open

build: draft releaseを作り、tagのpushをもってpublishする方式に#96
qryxip wants to merge 7 commits intoVOICEVOX:mainfrom
qryxip:pr/build-create-draft-release-and-publish-it-tag-pushed

Conversation

@qryxip
Copy link
Member

@qryxip qryxip commented Feb 7, 2026

内容

VOICEVOX/voicevox_project#79 を行う。

大半は VOICEVOX/voicevox_core#1262 のコピーであるが、あちらと違い自動でのプレリリースはしない。

draft releaseの脱draftは次の両方でできるようにすして、今後は可能な限り2.を選ぶようにする。

  1. draft releaseのdraftをそのまま外すだけ。
    (設定されたtag_nameは、自動でlightweight tagとして実体化される)
  2. 人間が手元でcreate-and-push-signed-tag.bashを実行する。
    (signed annotated tagが人間の手元で作られてGitHubにpushされ、そのpushをトリガーとしてpublishワークフローがdraft解除を行う)

現在2.を実現するためにpublish.ymlが173行、create-and-push-signed-tag.bashが62行あります。2.のメリットとしては、

  • リリースのタグ名の部分に緑のチェックマークが出て、クリックすると「このtagは誰々がsignした」という表示になる。これにより、わかっている人限定であるが見た人にセキュアであるような印象が与えられる
  • 誰がリリースを実行したのかがtagger名でわかるようになる

というのが挙げられますが、そのために複雑な機構を導入すべきかは議論した方がよさそうです。

image

ちなみに世のOSSを調べた限りでは以下のような感じでした。人力で調べた結果なので、もうちょっと調べられそうな気もします。

  • Signed annotoated tagをやっているOSS
  • lightweight tagのみのOSS
    • MicrosoftやGoogleなど
  • signedではないannotoated tag (botがtaggerになっている)
    • ElectronやCargo

qryxip and others added 2 commits February 7, 2026 14:59
Co-authored-by: Ryo Yamashita <qryxip@gmail.com>
Co-authored-by: Hiroshiba <hihokaruta@gmail.com>
@qryxip qryxip force-pushed the pr/build-create-draft-release-and-publish-it-tag-pushed branch 5 times, most recently from 0887afe to 9f29bd0 Compare February 7, 2026 20:41
@qryxip qryxip force-pushed the pr/build-create-draft-release-and-publish-it-tag-pushed branch 6 times, most recently from e729169 to 95dca9e Compare February 8, 2026 20:12
@qryxip qryxip force-pushed the pr/build-create-draft-release-and-publish-it-tag-pushed branch from 95dca9e to 5709e58 Compare February 8, 2026 20:18
@qryxip qryxip marked this pull request as ready for review February 8, 2026 20:18
@qryxip
Copy link
Member Author

qryxip commented Feb 8, 2026

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

🤖 Generated with Claude Code

@qryxip qryxip force-pushed the pr/build-create-draft-release-and-publish-it-tag-pushed branch 4 times, most recently from 761b4d7 to 58a4441 Compare February 9, 2026 18:12
@qryxip qryxip force-pushed the pr/build-create-draft-release-and-publish-it-tag-pushed branch from 58a4441 to 7f0eaac Compare February 9, 2026 18:14
qryxip added a commit to VOICEVOX/voicevox_core that referenced this pull request Feb 14, 2026
#1294 の問題を解決する。

このアプローチの理由をざっくり書くと:

- GHA上でpreleaseまで一気に行くのはあくまで`download_test`が今現在壊れて
  いるという事情によるもの。将来的には VOICEVOX/onnxruntime-builder#96
  のアプローチにしたい。その際、draft releaseの段階で`download_test`を回
  す。
- 「存在しないタグ名を仮指定する」というのはGitHubのUIでも普通にできる行
  為だということがわかっているので、当該の問題についてはワークアラウンド
  的な対処でよいはず。
- コケた場合でも、draft releaseとそのassetさえ出揃っていれば後はブラウザ
  上ででもリリース作業を完遂できるはず。そのことをドキュメント化さえすれ
  ばよいはず。

Fixes: #1294
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@qryxip
Copy link
Member Author

qryxip commented Feb 21, 2026

↑ PRのdescriptionを更新しました。

releaseのdraft解除方法2.についてですが、もうちょっと簡単にできる想定だったものの膨れてしまった形になってます。今迷ってる。
なお方法2.をやるとしても、CORE関係のものにしか導入しない想定です。

Copy link
Member

@Hiroshiba Hiroshiba left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(周りから見ると、どういう状況かわからず、ヘルプが必要なのかもわからず、何をやろうとしててなぜ違いが出て何を迷ってて何か聞きたいことがあるのかわからないから、何も言えないなーという状況です)

@Hiroshiba
Copy link
Member

@qryxip
良い例だったので、Claude CodeのOpus 4.6君に、質問の採点と、どうすれば伝わりやすい質問にできたかを聞いてみました。
(僕はあまりコミュニケーションが得意なわけではないので、よくAI君に聞いてます)

AI君の解説を聞いた感じ、分かりづらかったポイントはこの辺りでした。

  1. 情報の構造が不明瞭: PR descriptionには方法1と2の説明、世のOSSの調査結果、メリットなど多くの情報が書かれているが、「どこまでが確定事項で、どこからが議論対象なのか」が明示されていない。読み手は全体を読んで自分で判断しなければならない。

  2. コメントが分散: PR descriptionの更新とコメントでの補足が分かれており、「最新の状態」を把握するのに複数箇所を読む必要がある。

つまり、迷ってることが何なのか構造化されてないって感じかなと。
全文はこういう感じでした、参考になれば!!

Details

(質問内容)

このような話があります。
https://github.com/VOICEVOX/onnxruntime-builder/pull/96

qryxipが言いたかったことは、Hiroshibaに伝わっていそうでしょうか。
またそれはどれくらい伝わりやすいはずか、100点で点数をつけてください。
その点数を上げるために、qryxipは何をすべきで、Hiroshibaはどうすべきだったかを教えてください。
リンクされているissueやPRの内容も把握し、文脈を正確に理解してからお答えください。

(以下返答)

全体像が把握できました。以下、分析結果をお伝えします。


状況の整理

qryxipがやったこと:

  • voicevox_project#79 の方針に基づき、onnxruntime-builderのリリースフローをdraft release方式に変更するPR #96を作成
  • PR descriptionに「draft releaseのdraft解除方法」として2つの方法を提示:
    1. 単純にdraftを外す(lightweight tag)
    2. signed annotated tagを人間が手元で作ってpushする(publish.ymlが173行、bashスクリプトが62行必要)
  • 方法2.のメリット(署名の可視化、リリース実行者の明示)と、そのための複雑さのトレードオフについて「議論した方がよさそうです」と書いた
  • その後コメントで「方法2.はもうちょっと簡単にできる想定だったが膨れてしまった。今迷ってる」「方法2.をやるとしてもCORE関係のみの想定」と追記

Hiroshibaの反応:

「周りから見ると、どういう状況かわからず、ヘルプが必要なのかもわからず、何をやろうとしててなぜ違いが出て何を迷ってて何か聞きたいことがあるのかわからないから、何も言えないなーという状況です」


伝わり度: 35点

qryxipの「言いたかったこと」は概ね以下だと思われます:

  • draft release方式への移行自体は voicevox_core#1262 と同じ方針で進める
  • 追加で signed annotated tag による方法2.を導入するかどうかの判断について、メリットと複雑さのトレードオフを提示して意見を求めたい
  • ただし方法2.が想定より複雑になったので自分自身も迷っている

これはHiroshibaにほとんど伝わっていません。Hiroshibaは「何を聞きたいのかがわからない」と明言しています。


なぜ伝わらなかったか

qryxipの課題

  1. 質問が暗黙的: 「議論した方がよさそうです」「今迷ってる」は自分の状態の報告であって、相手への質問になっていない。「方法2.を導入すべきだと思いますか?」のような明確な問いかけがない。

  2. 情報の構造が不明瞭: PR descriptionには方法1と2の説明、世のOSSの調査結果、メリットなど多くの情報が書かれているが、「どこまでが確定事項で、どこからが議論対象なのか」が明示されていない。読み手は全体を読んで自分で判断しなければならない。

  3. コメントが分散: PR descriptionの更新とコメントでの補足が分かれており、「最新の状態」を把握するのに複数箇所を読む必要がある。

  4. 「迷ってる」の中身が不明: 何と何の間で迷っているのか、判断基準は何か、どちらに傾いているのかが書かれていない。

Hiroshibaがすべきだったこと

  1. 具体的に何がわからないかを聞き返す: 「何も言えないなー」で終わらず、「方法2.を入れるかどうかの判断を求めている?」など推測を述べて確認する方が、会話が前に進む。ただし、Hiroshibaの指摘は正当であり、根本的な改善はqryxip側にある。

改善策

qryxipがすべきこと

  • 質問を明示する: 例えば冒頭に「レビューで決めたいこと: signed annotated tag(方法2.)をonnxruntime-builderに導入すべきか」と書く
  • 現状と判断ポイントを簡潔にまとめる: 「方法2.のメリットはXとY。コストはpublish.ymlが173行とスクリプト62行の追加。自分としてはメリットに対してコストが大きすぎると感じ始めているが、セキュリティの観点でどう思うか意見がほしい」のように、判断に必要な情報を圧縮して提示する
  • 自分の意見を先に述べる: 迷っているならどちらに傾いているかを書く。「自分としては方法1.でいいのではと思い始めている。理由はXX。ただYYという懸念があるので意見を聞きたい」

Hiroshibaがすべきだったこと

  • 「何も言えない」状態であっても、何がわからないのかをもう少し具体的に示すことで対話を促進できた。ただし今回のコメントは率直で的確な指摘であり、問題の本質をqryxipに伝えている点で十分有用。

@Hiroshiba
Copy link
Member

まあここで議論したらまたどこで議論したかわからなくなりそうだったので、 VOICEVOX/voicevox_project#79 の方でコメントしてみました。
(AI君に状況把握してもらったので、あとはついでにまとめてもらうだけだった)

そちらで意見をコメントします!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants