トップ RSS feed

HsbtDiary


2026/09/04 (金) [長年日記]

tDiary-5.6.0 をリリースした

Rack 対応をガチャガチャやってた tDiary がひと段落したので 5.6.0 としてリリースした。

https://tdiary.org/20260904.html

今回はリリースフローを徹底的に見直して、tag を打つ、push する、リリースアナウンスを書くという3ステップだけで全てが完了するようにしておいた。作業のほとんどは claude がやったというのはあるけど、こうやって、こうして、こうなるとリリースです、みたいなところを説明したり、「この設定を見て」というあたりで教え込むあたりはちょっと大変だった。

これで今後も活発に、というわけではないもののリリースが楽になった、というのは気持ちも楽になるので躊躇せずにコードの変更とリリース、というのができるようになるとは思う。

地球の歩き方 成都 重慶 九寨溝 麗江 四川 雲南 貴州の自然と民族 2026-2027 を読んだ

エリアが多数にわたるのだが地球の歩き方のアジアエリアをパラパラと眺めていた。

日本にはもういないパンダ、はともかく四川料理を食べるとか九寨溝に行く、などはいつかはできるといいな、とは思うけど思ったまま円安が進んで辛すぎる、って感じなので無理かなあ。


https://www.amazon.co.jp/dp/B0GHV2JLCG


2026/09/03 (木) [長年日記]

gem-repair 0.3.0 をリリースした

世界で僕しか使ってないであろう GEM_HOME を全ての Ruby バージョンから共有して使うときの C 拡張を作り直す gem の gem-repair というものがあり、これに別の gem だった gem-sweep という lib フォルダの下の .so を掃除する機能を統合させた。

https://github.com/hsbt/gem-repair/pull/1

ついでに rubygems の plugin としても動くようにして、Ruby 3.3 で gem install した後に 4.0 にも伝播させて rebuild というのを実行させるようにした。

これで、gem installl の時間は少し伸びるものの、自分が使っているバージョンで常に共通して gem を使うことができつつ、インターネットから持ってこなくてもいい、となった。便利。

gem --cooldown の設定を bundle foo --cooldown と共通化した

Bundler にはすでに遅延インストールである cooldown 機能が提供されているのだが RubyGems の方は先に index を Compact Index に置き換えてから cooldown 機能を提供しなくてはいけない、という順序がありこの置き換えは 4.0.x 向けではないなあとして 4.1.0 に回すことにした。

で、これだけ時間差が起きると gemrc で設定しなくても上手いこと動いてくれよ、と思うので Bundler で設定している値をそのまま gemrc に引き継ぐようにしておいた。

https://github.com/ruby/rubygems/pull/9852

なお、初めて cooldown を使うという人向けに gemrc だけ設定しても Bundler に聴くようになってるし、両方設定した場合はより遅い方が優先される。こういう設定をあちこちに設定するの、本当に面倒なのでできるだけ統合していきたい。

skill をいじり始めると時間が溶ける

claude のスキルを結構作り込んでいて、https://github.com/lestrrat-ai/claude-code-plugins をベースにしつつ、ブランチを切った後にレビュースキルを呼び出すと

  • pull request を作成
  • claude に UX/Security/API/Compatibility の視点で Opus で独立レビュー
  • 同時に claude 内臓の code-review スキルを Opus で実行
  • 同時に Gemini 3.1 Pro で中立レビュー
  • 6件のレビュー結果が揃ったら Fable で中立監査、UX の観点からやった方がいいというのと、Compatibility が、という指摘が衝突した時に判定を行う、みたいなやつ
  • 設計判断が必要ならここで止まって設計判断を入れさせる
  • 判断事項がない場合は自動で指摘のうち採用したものを修正、コミットは指摘ごとに1つ
  • 全て直したら、未レビューのものに claude の 4+1 レビューを再実行
  • この後修正、レビューを合計3ループ回す
  • 3ループ回した時点でレビュー指摘が High/Medium/Low のレベルのうち High が 0 になっており、なおかつ修正も Low のものだけなら停止、些細な文言ばかりです、とかなど場合によることはある
  • High や Medium などを直したコミットでレビューが未実施のものが残ってる場合はさらに回すかを聞く
  • もうないです、という状態になったら最後にもう一度 Gemini Pro/Codex で中立レビューをする、ほとんどが事前に指摘済みなので叩き落ちる、もう少し新発見をしてほしい
  • コミットを全て作り直す、大体 30-50 コミットが 3-5 コミットになる
  • CI が通ったらマージ

という感じで動く。これを使って毎日10本前後回すってのが自分の仕事。内部にはもう少し agent や skill を切って個別に呼び出せるようにしていたり、model/effort を個別に指定して、より効果的に動くようにはしている。こういうのデプロイワークフローをいじる、みたいな感じで好きな部類なので細かすぎて伝わらず、再現性もないにも関わらずいじり続けていると気がついたら夜、みたいなことがあり異様に疲れてしまう。

実際これによって開発はバンバンやってるのでいいっちゃいいのだが、疲れの方が深刻なのでちょっと手抜きして行こうかな、と最近思う。


2026/09/02 (水) [長年日記]

NHK 100分de名著 ハクスリー すばらしい新世界 を読んだ

今月はすぐに読もうと 100分de名著を読み進めた。世界3大ディストピア、というのも面白いけど確かにディストピアだなーって内容だった。

ディストピア、解釈を入れると大体今の社会と同じことが起きてる、ってのがありただの予言ではなくて、小説に書ける程度には想像できることはそのまま社会に実現されるって感じなのだろうなあ。ディストピアに限らず技術の世界でも大体そうだしね。


https://www.amazon.co.jp/dp/B0HFYTLCXR

無限に電池を買ってる

前に買ったリチウムイオン乾電池の充電器はそれ専用でニッケル水素の充電器には使えない、というがっかりっぷりだったので、今度は両方を使えて尚且つ乾電池がついていて、充電器分はほぼ無料という謎価格のやつを買った。

同じメーカーのものなので多分大丈夫。実際にリチウムイオンとニッケル水素を混ぜて充電してみたら無事動いたのでよしとする。これで乾電池の充電器を Type-C に統一できた。


https://www.amazon.co.jp/dp/B0GDZM1QXH

RubyGems/Bundler 4.0.20 リリース

隔週リリースの RubyGems と Bundler をリリースした。ここ最近、水曜はダメだ...と木曜の朝にスライドすることが多かったんだけど、引き締めをかけるのに水曜夕方に頑張った。

https://blog.rubygems.org/2026/09/02/4.0.20-released.html

今週も定期的な不具合回収に加えて、Ruby::Box 対応でガチャガチャやっていたやつの rubygems 側の修正を取り込んでおいた。実際には Ruby 4.0.x 側にもいくつかバックポートを入れないと Rails が動くぞ、というのにはまだ足りないのでこの辺は moris さんと話してからかなあ。

Ruby 4.1 と RubyGems 4.1 で手元のプロジェクトで rspec を流したりする程度には動きますくらいまでは頑張りたい。