JWTはデコードできても検証済みではない: サーバー間照会で認可を作り直した話新着!!
Edge環境のミドルウェアでJWTを扱うとき、「デコードできる」を「検証済み」と混同してしまうことがあります。
メッセージキューの疎通確認を「run-idトレーシング」で実現する新着!!
非同期処理を組み込んだシステムでは、HTTPレスポンスが正常に返ってきていても、その先のキュー処理が実は詰まっている、という状況が起こり得ます。特にメッセージキューを挟んだ構成では、「リクエストは受け付けられたが、後続の処理まで届いているかどうか」を継続的に確認する仕組みがないまま本番運用に入ってしまいがちです。
E2Eの横スクロール検知はscrollWidthを疑え — overflow-x: clipが検出をすり抜けさせる罠新着!!
overflow-x: clipやhiddenを指定した要素はscrollWidthがclientWidthに丸められるため、横スクロール検知のE2Eテストが機能しなくなることがあります。原因の仕組みと、判定ロジックを共通ヘルパーへ整理し直す方法を解説します。
ユーザー投稿をLLM APIに渡すときのプロンプトインジェクション対策 4つの勘所
ユーザーが投稿した文章をそのままLLM APIのプロンプトに埋め込む機能を作ると、投稿本文が「信頼できない外部入力」になります。
「AI生成フラグ」が権限チェックの抜け穴になっていた話
「この機能はUI上の1つのボタンからしか呼ばれないから、細かい権限チェックは省略していい」。こう考えたくなる場面は少なくありません。とくにAI生成コンテンツのように「システムが自動でやっていること」を扱う機能では、通常の権限チェックを一部スキップしたくなる誘惑があります。
LLMを使わない「今日のおすすめ」設計 — 優先順位付きルールチェーンという選択肢
「今日のおすすめ」機能、LLMなしで設計しませんか?ユーザー履歴から導かれる優先順位付きルールチェーンで、説明可能かつ安全な提案ロジックをテストとログで担保するアプローチを解説します。
監査ログ用DBを「読み取りの正」に昇格させるときに見直すべき設計判断
「書き込みはベストエフォート、失敗しても本流を止めない」という前提で作られたテーブルは、たいてい監査ログや診断用の記録として設計されています。
TypeScriptの型でイベント計測のドリフトを防ぐ:新規アナリティクスイベント追加の設計パターン
型付きイベント計測基盤に新しいアナリティクスイベントを追加する際の設計パターンを解説。payload型のマップ化、発火しきい値の統一、allowlist検証との組み合わせ方など、ドリフトを防ぐ実践的な工夫を紹介します。
サーバーレス環境でスキーマキャッシュが効かない罠:WeakMapとモジュールレベル変数の使い分け
Cloudflare Workers のように、リクエストごとに実行環境(isolate)が使い回されつつも、DBクライアントのようなオブジェクトはリクエストのたびに新しく生成し直す構成があります。こうした環境でよくあるのが、「DBのスキーマ情報(カラムの有無など)を毎回問い合わせてしまい、1リクエストあたり複数本の introspection クエリが直列のRTTとして積み上がる」という問題です
Stripe の incomplete サブスクリプションが残る問題——二重課金を防ぐ自動リコンサイル設計
Stripeの`incomplete`サブスクリプション放置は、二重課金の温床。この記事では、孤立する`incomplete`の仕組みを解明し、「安全な自動修復」と「人手が必要な異常」に分けて処理する、二重課金を防ぐための自動リコンサイル設計を詳述します。










