Cloudflare Workersで10034。原因はメールアドレスの未認証だった
Wranglerの初回デプロイでcode 10034が出たときの実際のログと、Cloudflare側で確認した内容を残します。

Cloudflare Workersへ最初にデプロイしたとき、npx wrangler deployが途中で止まった。
その前のnpm run buildは通っている。最初はwrangler.jsoncかStatic Assetsの設定を疑ったが、実際の原因はもっと単純。
You need to verify your email address to use Workers.
code: 10034

原因はCloudflareアカウントのメールアドレス未認証。WranglerやAstroの設定を疑っていたので、原因が分かると少し拍子抜けするくらい単純だった。
10034の前にAstroのビルドは終わっていた#
当時実行していたのはこの流れ。
npm run build
npx wrangler deploy
Astro側ではdistまで生成できていた。そのあとWranglerがCloudflare APIへデプロイを要求したところで10034が返っている。
ここを見落とすと、Astroの設定やWorkerのコードを直し始めてしまう。
今回はエラー本文にverify your email addressまで書かれていたので、修正対象はローカルのソースではなかった。
Cloudflare側でメール認証を済ませる#
Cloudflareのアカウント設定を確認し、届いていた確認メールからメールアドレスを認証した。
コードは変更していない。
認証後にもう一度同じコマンドを実行した。
npx wrangler deploy
Cloudflareの公式ドキュメントでも、アカウントのメールアドレスはプロフィールから確認でき、未認証の場合は確認メールを再送できる。
複数アカウントを使っている場合は、ブラウザで開いているアカウントとWranglerがログインしているアカウントが同じかも見ておいた方がいい。自分の場合はそこまで必要なく、メール認証だけで先へ進んだ。
再実行すると39個の静的ファイルがそのままデプロイされた#
メール認証後のログでは、Astroが出力した39個の静的ファイルをWranglerが読み込み、そのままアップロードまで進んだ。
Building list of assets...
Read 39 files from the assets directory ...\dist
Uploaded yumaru-site
Deployed yumaru-site triggers

最初の失敗時と比べて、wrangler.jsoncやAstroの記事データを直したわけではない。
変わったのはCloudflareアカウントの認証状態だけ。
この経緯があるので、同じ10034と
You need to verify your email address to use Workers.
がセットで出た場合は、設定ファイルを触る前にアカウント側を見る。
10034は公開後のWorkerエラーとは別に考えた#
Cloudflare Workersには、公開後のリクエスト処理で発生するエラーもある。
今回の10034はそこまで到達していない。wrangler deploy中にCloudflare APIから返されたエラー。
自分が切り分けるときは、コード番号だけでなく「どのコマンドの、どの段階で止まったか」を見るようにしている。
今回なら、
Astro build
↓
Wrangler deploy
↓
Cloudflare APIで10034
という位置づけになる。
この時点で、公開済みWorkerのJavaScript例外を調べても方向が違う。
同じエラーが出たときに見る場所#
このケースなら確認する内容は多くない。
10034の横にメール認証を求めるメッセージが出ているかを見る。出ていればCloudflareのプロフィールで認証状態を確認し、認証後にnpx wrangler deployをもう一度実行する。
それで先へ進めば、AstroやWranglerの設定変更は不要だったと分かる。
逆に、同じ10034でもメッセージが違うなら、この手順だけで決めつけない方がいい。エラーコードより、その場で返された本文を優先して確認する。
参考#
- Cloudflare公式:Verify email address
https://developers.cloudflare.com/fundamentals/user-profiles/verify-email-address/ - Cloudflare公式:Workers Errors and exceptions
https://developers.cloudflare.com/workers/observability/errors/


