diff --git a/DEPS b/DEPS
index ac63621..2d65f83 100644
--- a/DEPS
+++ b/DEPS
@@ -388,7 +388,7 @@
 
   # Upstream webgpu.h headers for testing purposes
   'third_party/webgpu-headers/src': {
-    'url': '{chromium_git}/external/github.com/webgpu-native/webgpu-headers@60cd9020309b87a30cd7240aad32accd24262a5e',
+    'url': '{chromium_git}/external/github.com/webgpu-native/webgpu-headers@4f617851dfa20bd240436d9255bcb7e4dbbb1e3f',
   },
 
   'tools/golang': {
diff --git a/third_party/webgpu-headers/src b/third_party/webgpu-headers/src
index 60cd902..4f61785 160000
--- a/third_party/webgpu-headers/src
+++ b/third_party/webgpu-headers/src
@@ -1 +1 @@
-Subproject commit 60cd9020309b87a30cd7240aad32accd24262a5e
+Subproject commit 4f617851dfa20bd240436d9255bcb7e4dbbb1e3f
diff --git a/third_party/webgpu-headers/webgpu.h.diff b/third_party/webgpu-headers/webgpu.h.diff
index deaf360..12c9dd4 100644
--- a/third_party/webgpu-headers/webgpu.h.diff
+++ b/third_party/webgpu-headers/webgpu.h.diff
@@ -116,11 +116,9 @@
  
  #define WGPU_LIMITS_INIT _wgpu_MAKE_INIT_STRUCT(WGPULimits, { \
 @@
-     /*.maxComputeWorkgroupSizeY=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
      /*.maxComputeWorkgroupSizeZ=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
      /*.maxComputeWorkgroupsPerDimension=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
--    /*.maxImmediateSize=*/0 _wgpu_COMMA \
-+    /*.maxImmediateSize=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
+     /*.maxImmediateSize=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
 +    /*.maxStorageBuffersInVertexStage=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
 +    /*.maxStorageTexturesInVertexStage=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
 +    /*.maxStorageBuffersInFragmentStage=*/WGPU_LIMIT_U32_UNDEFINED _wgpu_COMMA \
@@ -138,15 +136,6 @@
  } WGPUPipelineLayoutDescriptor WGPU_STRUCTURE_ATTRIBUTE;
  
 @@
- #define WGPU_PRIMITIVE_STATE_INIT _wgpu_MAKE_INIT_STRUCT(WGPUPrimitiveState, { \
-     /*.nextInChain=*/NULL _wgpu_COMMA \
-     /*.topology=*/WGPUPrimitiveTopology_Undefined _wgpu_COMMA \
--    /*.stripIndexFormat=*/_wgpu_ENUM_ZERO_INIT(WGPUIndexFormat) _wgpu_COMMA \
-+    /*.stripIndexFormat=*/WGPUIndexFormat_Undefined _wgpu_COMMA \
-     /*.frontFace=*/WGPUFrontFace_Undefined _wgpu_COMMA \
-     /*.cullMode=*/WGPUCullMode_Undefined _wgpu_COMMA \
-     /*.unclippedDepth=*/WGPU_FALSE _wgpu_COMMA \
-@@
      /*.features=*/NULL _wgpu_COMMA \
  })
  
@@ -184,15 +173,6 @@
  
  typedef struct WGPUTextureViewDescriptor {
 @@
-     /*.nextInChain=*/NULL _wgpu_COMMA \
-     /*.format=*/WGPUTextureFormat_Undefined _wgpu_COMMA \
-     /*.depthWriteEnabled=*/WGPUOptionalBool_Undefined _wgpu_COMMA \
--    /*.depthCompare=*/_wgpu_ENUM_ZERO_INIT(WGPUCompareFunction) _wgpu_COMMA \
-+    /*.depthCompare=*/WGPUCompareFunction_Undefined _wgpu_COMMA \
-     /*.stencilFront=*/WGPU_STENCIL_FACE_STATE_INIT _wgpu_COMMA \
-     /*.stencilBack=*/WGPU_STENCIL_FACE_STATE_INIT _wgpu_COMMA \
-     /*.stencilReadMask=*/0xFFFFFFFF _wgpu_COMMA \
-@@
  
  typedef struct WGPUInstanceDescriptor {
      WGPUChainedStruct * nextInChain;
@@ -212,17 +192,6 @@
  
  typedef struct WGPURenderPassColorAttachment {
 @@
-     /*.view=*/NULL _wgpu_COMMA \
-     /*.depthSlice=*/WGPU_DEPTH_SLICE_UNDEFINED _wgpu_COMMA \
-     /*.resolveTarget=*/NULL _wgpu_COMMA \
--    /*.loadOp=*/_wgpu_ENUM_ZERO_INIT(WGPULoadOp) _wgpu_COMMA \
--    /*.storeOp=*/_wgpu_ENUM_ZERO_INIT(WGPUStoreOp) _wgpu_COMMA \
-+    /*.loadOp=*/WGPULoadOp_Undefined _wgpu_COMMA \
-+    /*.storeOp=*/WGPUStoreOp_Undefined _wgpu_COMMA \
-     /*.clearValue=*/WGPU_COLOR_INIT _wgpu_COMMA \
- })
- 
-@@
      /*.fragment=*/NULL _wgpu_COMMA \
  })
  
