)]}'
{
  "commit": "ca338db0c2d10ae744a5da3e97b4cf2385013d76",
  "tree": "ef71c5b784c0a1ea65ef51fb5b8cddba6149e596",
  "parents": [
    "2e0c4085589c748f7b43b1d3ed1c3e0c34a359f8"
  ],
  "author": {
    "name": "Steven Perron",
    "email": "stevenperron@google.com",
    "time": "Tue Oct 13 12:15:38 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Oct 13 12:15:38 2026 -0700"
  },
  "message": "[dawn][node] Do not create a JS promise for kUnusedPromise\n\ndawn.node needs to be updated because kUnusedPromise is used when\nsomething goes wrong, like a JS exception. The existing code tries to\ncreate a promise that is immediately rejected. However, that is not\nvalid under the Node-API:\n\n\u003e In many cases when a Node-API function is called and an exception is\n\u003e already pending, the function will return immediately with a\n\u003e napi_status of napi_pending_exception.\n\nSo we fix dawn.node, and fix our Node-API implementation to match that\nbehaviour.\n\nThis fixes the following CTS tests under Node.js:\n- webgpu:api,validation,compute_pipeline:overrides,value,type_error:isAsync\u003dtrue;*\n- webgpu:api,validation,render_pipeline,overrides:value,type_error,*:isAsync\u003dtrue;*\n- webgpu:api,validation,capability_checks,features,*:isAsync\u003dtrue;*\n\nBug: 571890980\nChange-Id: Ic5451a32626936a66e729aff9074bfbba4371936\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/350576\nAuto-Submit: Steven Perron \u003cstevenperron@google.com\u003e\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\nCommit-Queue: Steven Perron \u003cstevenperron@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "358627373cc8f9e5a307a9cff375682e25a88fb0",
      "old_mode": 33188,
      "old_path": "src/dawn/node/interop/Core.h",
      "new_id": "3d6290214273a2fc12b74d81a00ded8b28c4917d",
      "new_mode": 33188,
      "new_path": "src/dawn/node/interop/Core.h"
    },
    {
      "type": "modify",
      "old_id": "2ffca94ada504bfce480fd18b8009087763a6d7a",
      "old_mode": 33188,
      "old_path": "src/dawn/node/napi_v8/napi_v8.cpp",
      "new_id": "a3bf94c7f9154fc82f9c97944bd895e005ba234d",
      "new_mode": 33188,
      "new_path": "src/dawn/node/napi_v8/napi_v8.cpp"
    },
    {
      "type": "modify",
      "old_id": "61db6c83f89eef8934a2d2dcc2e110697bda3c0b",
      "old_mode": 33188,
      "old_path": "src/dawn/node/test/NapiV8Test.cpp",
      "new_id": "929f0bc2c502d888f2666abc845cfac6099261f1",
      "new_mode": 33188,
      "new_path": "src/dawn/node/test/NapiV8Test.cpp"
    }
  ]
}
