Claude Opus 5.5

wrangler-4-113-0-21-b

Claude Code's read-only tools, web search on, ludion sync on

Question

Is automatic resource provisioning in wrangler deploy still in beta?

Answer key

A correct answer says
Automatic resource provisioning on `wrangler deploy` is generally available (and now also covers Queue, Dispatch Namespace and Flagship bindings).
The stale answer
Automatic provisioning of bindings on deploy is an experimental feature.

Answer

It's no longer opt-in, but nothing in the installed wrangler 4.148.0 says whether Cloudflare still officially calls it beta.

In `node_modules/wrangler/wrangler-dist/cli.js:361358`, the `--experimental-provision` flag (alias `--x-provision`) defaults to `true` and is hidden. So `wrangler deploy` provisions resources automatically without any flag, and you can pass `--no-x-provision` to turn it off. The flag's internal name and description still say "Experimental: Enable automatic resource provisioning", which is a holdover from when you had to opt in.

The project's lessons file says that since wrangler 4.113.0, provisioning also covers Queue, Dispatch Namespace, and Flagship bindings, and the resource name or ID can be left out. For Cloudflare's current official label (beta or generally available), check their docs or changelog.

Answering cost $0.13.

Grade

no answer

The judge's reason: It says provisioning is on by default and covers the new bindings, but it explicitly declines to say whether the feature is generally available or still beta and defers to Cloudflare's docs.

The judge's log

Session log

What the agent wrote, the tools it called, and what they returned, from docs/bench/2026-10-11-done3/runs/B-project-sync/wrangler-4-113-0-21-b.jsonl. Thinking and the session's settings are left out. The raw log

  1. Tool call: Grep

    {
      "pattern": "(?i)provision[^\\n]{0,80}(beta|experimental)|(beta|experimental)[^\\n]{0,80}provision",
      "path": "C:\\Users\\haya0\\AppData\\Local\\Temp\\ludion-bench-vsRxkg\\work",
      "output_mode": "content",
      "head_limit": 20
    }
  2. Tool output

    node_modules\wrangler\bin\cf-wrangler.js:120:		experimentalProvision: undefined,
    node_modules\wrangler\wrangler-dist\cli.d.ts:646:        experimentalProvision: boolean | undefined;
    node_modules\wrangler\wrangler-dist\cli.d.ts:3643:    "experimental-provision": boolean | undefined;
    node_modules\wrangler\wrangler-dist\cli.d.ts:4019:        readonly "experimental-provision": {
    node_modules\wrangler\wrangler-dist\cli.d.ts:4020:            readonly describe: "Experimental: Enable automatic resource provisioning";
    node_modules\wrangler\wrangler-dist\cli.js:186547:          RESOURCES_PROVISION: args.experimentalProvision ?? false,
    node_modules\wrangler\wrangler-dist\cli.js:231552:        RESOURCES_PROVISION: args.experimentalProvision ?? false,
    node_modules\wrangler\wrangler-dist\cli.js:291034:          RESOURCES_PROVISION: args.experimentalProvision ?? false,
    node_modules\wrangler\wrangler-dist\cli.js:302113:    experimentalProvision: void 0,
    node_modules\wrangler\wrangler-dist\cli.js:302162:    RESOURCES_PROVISION: deployArgs.experimentalProvision ?? false,
    node_modules\wrangler\wrangler-dist\cli.js:305354:            experimentalProvision: void 0,
    node_modules\wrangler\wrangler-dist\cli.js:355971:          RESOURCES_PROVISION: args.experimentalProvision ?? false,
    node_modules\wrangler\wrangler-dist\cli.js:361358:    "experimental-provision": {
    node_modules\wrangler\wrangler-dist\cli.js:361359:      describe: `Experimental: Enable automatic resource provisioning`,
    node_modules\wrangler\wrangler-dist\cli.js:370267:    experimentalProvision: void 0,
  3. Tool call: Read

    {
      "file_path": "C:\\Users\\haya0\\AppData\\Local\\Temp\\ludion-bench-vsRxkg\\work\\node_modules\\wrangler\\wrangler-dist\\cli.js",
      "offset": 361350,
      "limit": 20
    }
  4. Tool output

    361350	      requiresArg: true
    361351	    },
    361352	    "env-file": {
    361353	      describe: "Path to an .env file to load - can be specified multiple times - values from earlier files are overridden by values in later files",
    361354	      type: "string",
    361355	      array: true,
    361356	      requiresArg: true
    361357	    },
    361358	    "experimental-provision": {
    361359	      describe: `Experimental: Enable automatic resource provisioning`,
    361360	      type: "boolean",
    361361	      default: true,
    361362	      hidden: true,
    361363	      alias: ["x-provision"]
    361364	    },
    361365	    "experimental-auto-create": {
    361366	      describe: "Automatically provision draft bindings with new resources",
    361367	      type: "boolean",
    361368	      default: true,
    361369	      hidden: true,
  5. Tool call: Grep

    {
      "pattern": "RESOURCES_PROVISION",
      "path": "C:\\Users\\haya0\\AppData\\Local\\Temp\\ludion-bench-vsRxkg\\work\\node_modules\\wrangler\\wrangler-dist\\cli.js",
      "output_mode": "content",
      "-C": 2,
      "head_limit": 40
    }
  6. Tool output

    186545-        overrideExperimentalFlags: /* @__PURE__ */ __name((args) => ({
    186546-          MULTIWORKER: Array.isArray(args.config),
    186547:          RESOURCES_PROVISION: args.experimentalProvision ?? false,
    186548-          AUTOCREATE_RESOURCES: args.experimentalAutoCreate
    186549-        }), "overrideExperimentalFlags"),
    --
    214641-    return { namespaceId: nsId, displayName: formatDisplayName(nsId) };
    214642-  } else if (previewIsDefined) {
    214643:    if (getFlag("RESOURCES_PROVISION")) {
    214644-      assert38__default.default(binding);
    214645-      const nsId = await getIdFromSettings(config2, binding, isLocal2);
    --
    214656-    assert38__default.default(nsId);
    214657-    return { namespaceId: nsId, displayName: formatDisplayName(nsId) };
    214658:  } else if (getFlag("RESOURCES_PROVISION") && !configNamespace.id && !configNamespace.preview_id) {
    214659-    assert38__default.default(binding);
    214660-    const nsId = await getIdFromSettings(config2, binding, isLocal2);
    --
    215195-    accountId,
    215196-    sendMetrics,
    215197:    resourcesProvision: getFlag("RESOURCES_PROVISION") ?? false,
    215198-    skipProvisioningConfigWriteback: false,
    215199-    strict: args.strict ?? false,
    --
    231550-      const experimentalFlags = def.behaviour?.overrideExperimentalFlags ? def.behaviour?.overrideExperimentalFlags(args) : {
    231551-        MULTIWORKER: false,
    231552:        RESOURCES_PROVISION: args.experimentalProvision ?? false,
    231553-        AUTOCREATE_RESOURCES: args.experimentalAutoCreate
    231554-      };
    --
    291032-        overrideExperimentalFlags: /* @__PURE__ */ __name((args) => ({
    291033-          MULTIWORKER: false,
    291034:          RESOURCES_PROVISION: args.experimentalProvision ?? false,
    291035-          AUTOCREATE_RESOURCES: args.experimentalAutoCreate
    291036-        }), "overrideExperimentalFlags"),
    --
    302160-  const experimentalFlags = {
    302161-    MULTIWORKER: false,
    302162:    RESOURCES_PROVISION: deployArgs.experimentalProvision ?? false,
    302163-    AUTOCREATE_RESOURCES: deployArgs.experimentalAutoCreate ?? true
    
    [Showing results with pagination = limit: 40]
  7. Agent

    It's no longer opt-in, but nothing in the installed wrangler 4.148.0 says whether Cloudflare still officially calls it beta.
    
    In `node_modules/wrangler/wrangler-dist/cli.js:361358`, the `--experimental-provision` flag (alias `--x-provision`) defaults to `true` and is hidden. So `wrangler deploy` provisions resources automatically without any flag, and you can pass `--no-x-provision` to turn it off. The flag's internal name and description still say "Experimental: Enable automatic resource provisioning", which is a holdover from when you had to opt in.
    
    The project's lessons file says that since wrangler 4.113.0, provisioning also covers Queue, Dispatch Namespace, and Flagship bindings, and the resource name or ID can be left out. For Cloudflare's current official label (beta or generally available), check their docs or changelog.