Rebounder Tech Blog

運用している当事者が書く、本番システムの記録。

エラー文字列から探す

検索窓に打ったエラーが、そのままここにあるかもしれません。
載っているのは、すべて自社の本番で実際に出たものです。 推測で並べた一覧ではありません。

定数・コード

FLAG_KEEP_SCREEN_ON
setContentView前はinsetsControllerがnullでImmersiveが効かないキオスク端末の消灯がstartActivity1本頼りで、失敗すると朝まで点灯したままになるAndroidの常駐サービスは、クラッシュせずに死ぬことがあるFLAG_KEEP_SCREEN_ON を入れても画面が黒くなるのはスクリーンセーバ
NODE_ENV
CSPのframe-src欠落でYouTube埋め込みが全滅、視聴ログも無音で止まる新しい httpOnly cookie を追加してデプロイすると、ログイン済みユーザーだけ401になるpdfjs-distのstandard_fontsがNext.js standaloneに同梱されない
EMPTY_PLAN
フォームをkeyで再マウントすると、検証エラー直後の保存で入力値が既定値に戻るフォームの一部だけ制御値にすると、保存失敗後の再送信で設定が黙って元に戻る
SEED_AD_MEDIA_BASE
環境変数の既定値が staging バケットのままだと、destroy で本番画像が消えるstaging環境をdestroyしたらGCSのNoSuchBucketで本番画像が404になった
ADMIN_API_KEY
Next.js の proxy.ts が API キー認証のエンドポイントもログイン画面へ飛ばしていた
ANON_SIGNAGE_DATE_SLACK_DAYS
tokenは合っているのに、design/dateのquery parameterで画面外データが取れるIDOR
APP_ENV
ORDER BYの無いLIMIT 1が、複数テナントのstagingで別の校のadminを返す
APP_URL
認証ミドルウェアが robots.txt をログインへリダイレクトする
AUDIT_FK_SQL
監査ログのRLS policyがactor_user_id=NULLを許すと、乗っ取られたアカウントが操作痕跡を消せる
AUDIT_LOG_ACTOR_NULL_SQL
監査ログのRLS policyがactor_user_id=NULLを許すと、乗っ取られたアカウントが操作痕跡を消せる
AUDIT_TRIGGER_SQL
監査ログのRLS policyがactor_user_id=NULLを許すと、乗っ取られたアカウントが操作痕跡を消せる
BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
setContentView前はinsetsControllerがnullでImmersiveが効かない
BENIGN_STT_ERROR_CODES
SpeechRecognitionのnot-allowedとno-speechを出し分けてマイク無反応を直した
BOOT_COMPLETED
dpm set-device-ownerはアプリを起動する。先にprefsを書かないとdevice_idを横取りされる
CARD_INVOICE_FALLBACK_DAYS
Stripe Checkout amount_unsetで「7日で自動切替」が永久に発動しない
CHAT_DAILY_LIMIT_PER_SCHOOL
Cloud Runのレート制限はインスタンス間で共有されない(maxOutputTokensも無かった)
CHAT_MAX_OUTPUT_TOKENS
Cloud Runのレート制限はインスタンス間で共有されない(maxOutputTokensも無かった)
CHECKOUT_EXPIRY_BUFFER_SECONDS
Checkout Session の期限を省くと、離脱した予約が24時間分の席を占有する
CHECKOUT_HOLD_MINUTES
Checkout Session の期限を省くと、離脱した予約が24時間分の席を占有する
CHECKOUT_SESSION_ID
Checkout Session の期限を省くと、離脱した予約が24時間分の席を占有する
CLOUDSDK_PYTHON
gcloud ADCが約44時間で切れる「Reauthentication failed」を無人実行で避ける
COOKIE_NAME
新しい httpOnly cookie を追加してデプロイすると、ログイン済みユーザーだけ401になる
DATABASE_URL
turbo.jsonにpassThroughEnvが無いとテストが黙って全skipのままCIがgreenになる
DEFAULT_ORPHAN_HOURS
supabase-jsの.range()は.order()無しで境界の行が重複・欠落する
DEFAULT_TARGET_MAC
ScanFilter.setDeviceAddressがIllegalArgumentExceptionで落ちる
DEV_LOGIN_CONFIG
ORDER BYの無いLIMIT 1が、複数テナントのstagingで別の校のadminを返す
DEVLOGIN_TEST
ORDER BYの無いLIMIT 1が、複数テナントのstagingで別の校のadminを返す
DEVLOGIN_TEST_SCHOOL_ID
ORDER BYの無いLIMIT 1が、複数テナントのstagingで別の校のadminを返す
EMAIL_RE
『an invalid form control is not focusable』で送信が無言停止した
EMBED_BATCH_SIZE
非数値のenv変数はNaNとして??をすり抜け、embeddingが0件・fetchが即abortになった
EMPTY_DRAFT
フォームの一部だけ制御値にすると、保存失敗後の再送信で設定が黙って元に戻る
FEED_MEXT
同一フィードのURL重複でON CONFLICT DO UPDATEが21000で全断した
FILE_PATH_PAGE
supabase-jsの.range()は.order()無しで境界の行が重複・欠落する
FLAG_ACTIVITY_CLEAR_TOP
キオスク端末の消灯がstartActivity1本頼りで、失敗すると朝まで点灯したままになる
FLAG_ACTIVITY_NEW_TASK
キオスク端末の消灯がstartActivity1本頼りで、失敗すると朝まで点灯したままになる
FLAG_FULLSCREEN
setContentView前はinsetsControllerがnullでImmersiveが効かない
FLAG_SHOW_WHEN_LOCKED
setContentView前はinsetsControllerがnullでImmersiveが効かない
GEMINI_THINKING_BUDGET
Gemini の思考トークンが出力上限を食い応答が空になる
GOOGLE_CSE_ID
検索順位の実査にGoogle Custom Search APIではなくBrave Search APIを使う理由
GOOGLE_CSE_KEY
検索順位の実査にGoogle Custom Search APIではなくBrave Search APIを使う理由
HARD_LIMIT
検索順位の実査にGoogle Custom Search APIではなくBrave Search APIを使う理由
IMG_1234
掲示物のタイトルが IMG_1234 のまま教室のテレビに出る
ISO_DATETIME_RE
ポーリングだけDateが文字列化し、getTime is not a functionで盤面が落ちた
ITEM_A
同一フィードのURL重複でON CONFLICT DO UPDATEが21000で全断した
ITEM_B
同一フィードのURL重複でON CONFLICT DO UPDATEが21000で全断した
JSON_MEDIA_TYPE
ScanFilter.setDeviceAddressがIllegalArgumentExceptionで落ちる
KEY_TARGET_MAC
ScanFilter.setDeviceAddressがIllegalArgumentExceptionで落ちる
KIMITERRACE_TEST_DB_OK
turbo.jsonにpassThroughEnvが無いとテストが黙って全skipのままCIがgreenになる
MACHINE_NAME_PATTERNS
掲示物のタイトルが IMG_1234 のまま教室のテレビに出る
MAX_DELETE_PER_RUN
supabase-jsの.range()は.order()無しで境界の行が重複・欠落する
MAX_POSTER_TITLE_LENGTH
掲示物のタイトルが IMG_1234 のまま教室のテレビに出る
MAX_TOTAL_UPLOAD_BYTES
Server ActionsのbodySizeLimit変更だけでは足りず、エラー境界に落ちる
MIN_ORPHAN_HOURS
supabase-jsの.range()は.order()無しで境界の行が重複・欠落する
MIN_TEACHER_PASSWORD_LENGTH
アプリ側のパスワード最小文字数がIdentity Platformの下限より緩くて本番だけ落ちた
MODE_PRIVATE
ScanFilter.setDeviceAddressがIllegalArgumentExceptionで落ちる
NEXT_RUNTIME
pdfjs-distのstandard_fontsがNext.js standaloneに同梱されない
NOTICE_ASSIST_STREAM_SYSTEM
streamObjectのabortでusage Promiseがunhandled rejectionになる
PAGE_CASES
Semgrep detect-non-literal-regexpの誤検知は、到達不能な分岐を型で消して直した
PATTERN_BLOCKS
buildSignagePayloadForClassを使わない盤面プレビューは自動ブロックが実機と食い違う
PDF_MEDIA_TYPE
スキャンPDFかどうかを非空白文字数/ページで判定してGeminiに直送する
PIN_C10
Quartus で最初に詰まるのは回路ではなく環境
PREFS_NAME
ScanFilter.setDeviceAddressがIllegalArgumentExceptionで落ちる
PRESET_FIELDS
フォームをkeyで再マウントすると、検証エラー直後の保存で入力値が既定値に戻る
PUBLIC_LOOP_COLS
掲載枠のstart_monthが未設定だと、契約periodがNULLで満了処理が止まる
PUBLISHER_ROLES
親ページの許可ロールだけ絞り込み、子コンポーネント内の別ロールガードを直し忘れて未捕捉の403例外を出した
QUOTA_PROJECT
gcloud ADCが約44時間で切れる「Reauthentication failed」を無人実行で避ける
RAILWAY_FETCH_TIMEOUT_MS
非数値のenv変数はNaNとして??をすり抜け、embeddingが0件・fetchが即abortになった
RESEND_API_KEY
Resendクライアントをモジュール直下でnewするとNext.jsのビルドごと落ちる
RESTART_COOLDOWN_MS
Androidの常駐サービスは、クラッシュせずに死ぬことがある
RLS_ENABLE_SQL
監査ログのRLS policyがactor_user_id=NULLを許すと、乗っ取られたアカウントが操作痕跡を消せる
RLS_POLICIES_SQL
監査ログのRLS policyがactor_user_id=NULLを許すと、乗っ取られたアカウントが操作痕跡を消せる
RLS_TESTS_SKIP
turbo.jsonにpassThroughEnvが無いとテストが黙って全skipのままCIがgreenになる
SCANNED_PDF_MAX_NONWS_CHARS_PER_PAGE
スキャンPDFかどうかを非空白文字数/ページで判定してGeminiに直送する
SCHOOL_ID
唯一の呼出し元が消えたロール変更 seam を、それ自体が攻撃面として撤去する
SDK_INT
setContentView前はinsetsControllerがnullでImmersiveが効かない
SEMGREP_RULES
semgrep ci --config=autoでコード変更なしにmainが赤くなる
SERVICE_DISABLED
gcloud ADCが約44時間で切れる「Reauthentication failed」を無人実行で避ける
SOFT_LIMIT
検索順位の実査にGoogle Custom Search APIではなくBrave Search APIを使う理由
STALE_THRESHOLD_MS
Androidの常駐サービスは、クラッシュせずに死ぬことがある
STANDARD_FONT_FILE_RE
pdfjs-distのstandard_fontsがNext.js standaloneに同梱されない
STREAM_STALL_MS
streamObjectのabortでusage Promiseがunhandled rejectionになる
SYSTEM_ADMIN_ROLES
親ページの許可ロールだけ絞り込み、子コンポーネント内の別ロールガードを直し忘れて未捕捉の403例外を出した
SYSTEM_ALERT_WINDOW
キオスク端末の消灯がstartActivity1本頼りで、失敗すると朝まで点灯したままになる
TTL_MS
新しい httpOnly cookie を追加してデプロイすると、ログイン済みユーザーだけ401になる
VERSION_CODES
setContentView前はinsetsControllerがnullでImmersiveが効かない
WRITE_SECURE_SETTINGS
FLAG_KEEP_SCREEN_ON を入れても画面が黒くなるのはスクリーンセーバ
WRITE_SETTINGS
FLAG_KEEP_SCREEN_ON を入れても画面が黒くなるのはスクリーンセーバ
MAIL_SIGNATURE_LINES
配列を空行で挟む実装は空配列で2連続、endsWithでは検出できない
META_HISTORY
署名済み申込書が、signed_terms_source_versionを見ず現行規約を同意済みと表示
REQUEST_CHANGES
2タブで完了した2本のPaymentIntent、負けた側のwebhookが与信を巻き戻す

PostgreSQL

23505
23503 の外部キー違反が「競合しました」に化けて本番だけ全断したStripe webhook冪等台帳のINSERT失敗、23505以外も200で握り潰していたsupabase-js の条件付き UPDATE は error を見ないと処理済み判定を誤る
23503
system_adminの操作だけ外部キー制約違反(23503)で500になった23503 の外部キー違反が「競合しました」に化けて本番だけ全断した
23514
23503 の外部キー違反が「競合しました」に化けて本番だけ全断した

例外・失敗

TypeError
ポーリングだけDateが文字列化し、getTime is not a functionで盤面が落ちたNext.js が wasm パッケージをバンドルすると本番だけ壊れる
CancellationException
Androidの常駐サービスは、クラッシュせずに死ぬことがある
DrizzleQueryError
23503 の外部キー違反が「競合しました」に化けて本番だけ全断した
ForbiddenError
親ページの許可ロールだけ絞り込み、子コンポーネント内の別ロールガードを直し忘れて未捕捉の403例外を出した
IllegalArgumentException
ScanFilter.setDeviceAddressがIllegalArgumentExceptionで落ちる
LegacyContentConfigError
Astro 7 でコンテンツコレクションが3箇所同時に壊れる
SecretsAccessCheckFailed
Cloud Run Job を初めて有効化すると SecretsAccessCheckFailed で落ちる
SecurityException
FLAG_KEEP_SCREEN_ON を入れても画面が黒くなるのはスクリーンセーバ
StripeCardError
決済成功後のDB反映失敗をカード失敗と誤認し、二重請求になりかけた
UnauthenticatedError
親ページの許可ロールだけ絞り込み、子コンポーネント内の別ロールガードを直し忘れて未捕捉の403例外を出した
UnknownErrorException
pdfjs-distのstandard_fontsがNext.js standaloneに同梱されない
MultiFactorError
TOTP登録直後、session cookieは第2要素未達のまま残る

Firebase

auth/admin-mutations
唯一の呼出し元が消えたロール変更 seam を、それ自体が攻撃面として撤去する
auth/invalid-password
アプリ側のパスワード最小文字数がIdentity Platformの下限より緩くて本番だけ落ちた
auth/update-password
Next.js の proxy.ts が API キー認証のエンドポイントもログイン画面へ飛ばしていた
auth/weak-password
アプリ側のパスワード最小文字数がIdentity Platformの下限より緩くて本番だけ落ちた
auth/multi-factor-auth-required
TOTP登録直後、session cookieは第2要素未達のまま残る

PostgREST

PGRST116
maybeSingleで1件決め打ちすると、複数行ヒットでPGRST116の404になる
PGRST201
検索順位の実査にGoogle Custom Search APIではなくBrave Search APIを使う理由

この索引は記事本文から機械的に抽出しています。記事が増えると自動で増えます。