生成AI
GitHub Actionsの課金を削る:5秒で終わるjobを減らす「受付job skip」設計と安全に省略するコツ新着!!

GitHub Actions の hosted runner は、5〜8秒で終わる job でも **1 job あたり1分に切り上げて課金**されます。

続きを読む
生成AI
お気に入りボタンを解除できるトグルにする:disabled設計とバージョン切替の落とし穴新着!!

お気に入り(いいね・ブックマーク)ボタンは、追加だけを実装して「解除」の導線を作り忘れやすい部品です。

続きを読む
生成AI
cron監視の「どれか1本成功すればOK」をやめる:ジョブごとの死活監視を周期クラスで設計する新着!!

定期ジョブの監視を「直近24時間に1件でも成功していれば green」という条件で組んでいませんか。

続きを読む
生成AI
ON CONFLICT DO NOTHINGの排他制御は「一度きり」にしか効かない: TTL付きUPSERTで直す新着!!

同じ処理を並列リクエストのうち一件だけに実行させたい、という要件はよくあります。手軽な実装として `INSERT ... ON CONFLICT DO NOTHING` を使い、行を作れたリクエストだけを「勝者」にする排他制御は広く使われています。

続きを読む
生成AI
CIの成功判定で「わからない」を握りつぶさない設計新着!!

自前のCIディスパッチャやデプロイスクリプトを書いていると、「このジョブは成功と名乗ってよいか」を複数の条件から判定する処理が必ず出てきます。

続きを読む
生成AI
エラーメッセージの文字列判定をやめて、AppErrorに一本化する新着!!

エラーメッセージの文言でHTTPステータスを判定する実装は壊れやすいです。code・status・userMessageを持つAppErrorへ一本化し、未分類の例外はfail closedで500に倒し、throw new ErrorをCIで検知する対策を紹介します。

続きを読む
生成AI
夜間監視の自動起票が『同じ原因なのに量産される』を止めた話

夜間の監視ジョブが失敗するたびにGitHub Issueを自動起票する仕組みは便利ですが、同じ原因の失敗が続くと毎晩issueが積み上がります。本記事では同一原因のopenなissueに追記し、なければ新規作成するdedupロジックで増殖を解消した設計を紹介します。

続きを読む
Vitest
『overlapping act() calls』から学ぶ、React Testing Library × fake timer × MSWの罠

React Testing Libraryのact/waitFor、fake timer、MSWを組み合わせた際に起きる4つの罠(overlapping act、timeout、プロバイダ分裂、型チェック漏れ)と解決策を整理します。

続きを読む
生成AI
Playwrightでwebkitだけ落ちるE2Eを直す: cold-load nav-stallをin-contextで復帰させる

Playwrightのnightly E2Eでwebkitだけ失敗する「wedge」状態を、about:blank遷移で復帰させる方法と、flakyと実装バグを機械的に分類しCIノイズを減らす設計を解説します。

続きを読む
生成AI
Next.js 16 Cache Componentsで踏んだ2つの罠——キャッシュの反映遅延とE2Eの多重ヒット

Next.js 16のCache Componentsで、revalidateTagの反映遅延とPlaywrightのstrict mode違反という2つの不具合に遭遇。原因と対処法(expire:0指定・ロケータのスコープ変更)を整理しました。

続きを読む