生成AI
ジョブキューの孤児エントリで13日間止まった同期を防ぐ: GCの定期実行と「止まり続けた時間」の監視新着!!

ジョブキューの「実行中」エントリは、ワーカーが crash すると完了にも再投入にも進めず、そのまま残ります。

続きを読む
生成AI
Woodpecker CIで特定リポジトリだけpipelineが生成されない原因はforge timeoutだった新着!!

セルフホストのWoodpecker CIを運用していると、「特定のリポジトリだけ、pushしてもpipelineが生成されない」という症状に出会うことがあります。

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

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

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

定期ジョブの監視を「直近24時間に1件でも成功していれば green」で済ませていませんか。cron式から周期クラスを自動推定し、ジョブごとに適切な期間で成功を評価、失敗原因まで分類するper-cronヘルスチェックの設計を解説します。

続きを読む
生成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
CIのクリティカルパスを壊さずにsqliteで時系列メトリクスを蓄積する設計

CIホストのようなインフラでは、「ジョブの取得・解放」や「死活監視」といったクリティカルパスに手を加えるのはとてもリスクが高い作業です。ログに障害の兆候を出力するだけなら簡単ですが、「Dockerイメージの容量が右肩上がりになっていないか」「同時実行の枠が足りているか」といったトレンドを判断するには、時系列で数値を蓄積する仕組みが必要になります。

続きを読む