René's URL Explorer Experiment


Title: Maglev OSR: object literals returned by a function share their double fields, so earlier results change after later calls (v24.11.0, v26.9.0) · Issue #66457 · nodejs/node · GitHub

Open Graph Title: Maglev OSR: object literals returned by a function share their double fields, so earlier results change after later calls (v24.11.0, v26.9.0) · Issue #66457 · nodejs/node

X Title: Maglev OSR: object literals returned by a function share their double fields, so earlier results change after later calls (v24.11.0, v26.9.0) · Issue #66457 · nodejs/node

Description: Version v24.11.0 (V8 13.6.233.10-node.28) and v26.9.0 (V8 14.6.202.34-node.32). Not reproduced on v22.23.1 or v20.20.1. Later 24.x releases were not tested. Platform Darwin 27.0.0 arm64 (macOS 27.0, Apple M4 Pro, 14 cores) Subsystem V8 (...

Open Graph Description: Version v24.11.0 (V8 13.6.233.10-node.28) and v26.9.0 (V8 14.6.202.34-node.32). Not reproduced on v22.23.1 or v20.20.1. Later 24.x releases were not tested. Platform Darwin 27.0.0 arm64 (macOS 27.0...

X Description: Version v24.11.0 (V8 13.6.233.10-node.28) and v26.9.0 (V8 14.6.202.34-node.32). Not reproduced on v22.23.1 or v20.20.1. Later 24.x releases were not tested. Platform Darwin 27.0.0 arm64 (macOS 27.0...

Opengraph URL: https://github.com/nodejs/node/issues/66457

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Maglev OSR: object literals returned by a function share their double fields, so earlier results change after later calls (v24.11.0, v26.9.0)","articleBody":"### Version\n\nv24.11.0 (V8 13.6.233.10-node.28) and v26.9.0 (V8 14.6.202.34-node.32). Not reproduced on v22.23.1 or v20.20.1. Later 24.x releases were not tested.\n\n### Platform\n\n```text\nDarwin 27.0.0 arm64 (macOS 27.0, Apple M4 Pro, 14 cores)\n```\n\n### Subsystem\n\nV8 (Maglev OSR)\n\n### What steps will reproduce the bug?\n\nRun the script below many times, one process per run. It exits 1 and prints `BUG` when it catches the problem.\n\n```bash\nfor i in $(seq 1 2000); do node maglev-osr-alias.mjs > /dev/null || echo FAIL; done | sort | uniq -c\n```\n\nThe script is plain JavaScript with no dependencies. `faceStats(s, face, off)` loops over a triangle soup held in typed arrays, accumulates two doubles (`area`, `maxOff`), fills a `Set` and a `Map`, and returns `{ area, maxOff, verts, rim }`. The script calls it eight times on different generated inputs, doing some allocation between calls, and keeps each returned object next to the numbers read from it immediately after the call. At the end it compares each object with what it returned.\n\n\u003cdetails>\n\u003csummary>\u003ccode>maglev-osr-alias.mjs\u003c/code> (105 lines)\u003c/summary>\n\n```js\n// Node 24 (V8 13.6): objects returned by a function come out sharing the storage of\n// their double-valued fields, so results of earlier calls change after later calls.\n//\n// Intermittent: about 1 run in 50 on Node 24.11.0 and 1 in 175 on Node 26.9.0 (macOS arm64).\n// Run it in a loop:\n//\n//   for i in $(seq 1 2000); do node maglev-osr-alias.mjs > /dev/null || echo FAIL; done | sort | uniq -c\n//\n// It does not fail with --no-maglev-osr.\n//\n// `faceStats` sums the area of the triangles of one face of a triangle soup and returns\n// { area, maxOff, verts, rim }. The script calls it eight times on different inputs, keeps\n// each returned object together with the numbers read from it right after the call, and\n// at the end compares each object with what it returned.\n\nclass V3 {\n  constructor(x = 0, y = 0, z = 0) { this.x = x; this.y = y; this.z = z; }\n  clone() { return new V3(this.x, this.y, this.z); }\n  sub(v) { this.x -= v.x; this.y -= v.y; this.z -= v.z; return this; }\n  add(v) { this.x += v.x; this.y += v.y; this.z += v.z; return this; }\n  cross(v) { const ax = this.x, ay = this.y, az = this.z; this.x = ay * v.z - az * v.y; this.y = az * v.x - ax * v.z; this.z = ax * v.y - ay * v.x; return this; }\n  length() { return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z); }\n  divideScalar(s) { this.x /= s; this.y /= s; this.z /= s; return this; }\n}\nfunction faceStats(s, face, off) {\n  const id = s.ids.get(face.id);\n  const P = (i) => new V3(s.pos[3 * i], s.pos[3 * i + 1], s.pos[3 * i + 2]);\n  let area2 = 0, maxOff = 0;\n  const verts = new Set();\n  const use = new Map();\n  for (let t = 0; t \u003c s.tris.length / 3; t++) {\n    if (s.faceOf[t] !== id) continue;\n    const idx = [s.tris[3 * t], s.tris[3 * t + 1], s.tris[3 * t + 2]];\n    const [a, b, c] = idx.map(P);\n    area2 += b.clone().sub(a).cross(c.clone().sub(a)).length() / 2;\n    maxOff = Math.max(maxOff, off(a.clone().add(b).add(c).divideScalar(3)));\n    for (let e = 0; e \u003c 3; e++) {\n      verts.add(idx[e]);\n      const k = [idx[e], idx[(e + 1) % 3]].sort((x, y) => x - y).join(\"|\");\n      use.set(k, (use.get(k) ?? 0) + 1);\n    }\n  }\n  const rim = new Set();\n  for (const [k, c] of use) if (c === 1) for (const i of k.split(\"|\")) rim.add(Number(i));\n  return { area: area2, maxOff, verts, rim };\n}\n\n\n// ---- generated input: triangle soups on a cylinder of radius 5, each triangle tagged with a face label ----\nlet seed = 12345;\nconst rnd = () => { seed = (seed * 1664525 + 1013904223) >>> 0; return seed / 4294967296; };\nfunction soup(nVerts, nTris, nFaces, label, labelTris) {\n  const pos = new Float32Array(3 * nVerts);\n  for (let i = 0; i \u003c nVerts; i++) { const th = rnd() * 2 * Math.PI; pos[3 * i] = 5 * Math.cos(th); pos[3 * i + 1] = 5 * Math.sin(th); pos[3 * i + 2] = rnd() * 8; }\n  const tris = new Uint32Array(3 * nTris), faceOf = new Uint32Array(nTris);\n  for (let t = 0; t \u003c nTris; t++) {\n    const a = Math.floor(rnd() * (nVerts - 2));\n    tris[3 * t] = a; tris[3 * t + 1] = a + 1; tris[3 * t + 2] = a + 2;\n    let other = 1 + Math.floor(rnd() * nFaces); if (other === label) other = (other % nFaces) + 1;\n    faceOf[t] = t \u003c labelTris ? label : other;\n  }\n  const faces = Array.from({ length: nFaces }, (_, k) => ({ id: 'face-' + k + '-' + Math.floor(rnd() * 1e9) }));\n  return { s: { pos, tris, faceOf, ids: new Map(faces.map((f, k) => [f.id, k + 1])) }, faceId: faces[label - 1].id };\n}\n// [vertices, triangles, faces, label asked for, triangles carrying that label, ms of other work before the call]\nconst CALLS = [\n  [5112, 10220, 3, 1, 10082, 40],\n  [5206, 528, 4, 1, 338, 20],\n  [5206, 528, 4, 4, 52, 0],\n  [5206, 528, 4, 4, 52, 40],\n  [5206, 528, 4, 4, 52, 10],\n  [2664, 5324, 4, 2, 2592, 60],\n  [2766, 2994, 5, 2, 204, 20],\n  [2766, 2994, 5, 5, 58, 0],\n];\n// Other work between calls: allocation, some of it retained, so garbage collections run.\nconst ring = []; let sink = 0, w = 0;\nfunction churn(ms) {\n  if (ms \u003c= 0) return;\n  const end = performance.now() + ms;\n  while (performance.now() \u003c end) {\n    for (let i = 0; i \u003c 2000; i++) {\n      const o = { a: w * 0.5, b: [w, w + 1, w + 2], c: 'k' + (w % 977), d: { e: w } };\n      if (ring.length \u003c 200000) ring.push(o); else ring[w % 200000] = o;\n      sink += o.b.length; w++;\n    }\n  }\n}\nconst mkOff = (R) => (p) => Math.abs(Math.hypot(p.x, p.y) - R);\nconst out = [];\nCALLS.forEach(([nv, nt, nf, label, labelTris, gap], ci) => {\n  churn(gap);\n  const { s, faceId } = soup(nv, nt, nf, label, labelTris);\n  const face = ci % 3 ? { id: faceId, kind: 'x' + ci, n: ci } : { id: faceId };   // a few object shapes, as real callers have\n  const r = faceStats(s, face, mkOff(5));                                          // a fresh closure per call\n  out.push({ r, area: r.area, maxOff: r.maxOff });                                 // remember what the call returned\n});\nlet bad = 0;\nout.forEach((o, i) => {\n  if (!Object.is(o.r.area, o.area) || !Object.is(o.r.maxOff, o.maxOff)) {\n    bad++;\n    console.log(`call ${i + 1}: returned area=${o.area} maxOff=${o.maxOff}; the same object now reads area=${o.r.area} maxOff=${o.r.maxOff}`);\n  }\n});\nconsole.log(bad ? 'BUG: results of earlier calls changed after later calls' : 'ok');\nprocess.exit(bad ? 1 : 0);\n```\n\n\u003c/details>\n\n### How often does it reproduce? Is there a required condition?\n\nIntermittent. Eight runs in parallel on the 14-core machine above, which was also busy with other work:\n\n| runtime | failed / runs |\n|---|---|\n| v24.11.0 | 58 / 3000 |\n| v24.11.0 `--no-maglev-osr` | 0 / 3000 |\n| v24.11.0 `--no-concurrent-osr` | 0 / 1500 |\n| v24.11.0 `--single-threaded-gc` | 2 / 1500 |\n| v26.9.0 | 17 / 3000 |\n| v26.9.0 `--no-maglev-osr` | 0 / 3000 |\n| v22.23.1 | 0 / 3000 |\n| v20.20.1 | 0 / 1500 |\n\nThe timing of the work between the calls matters: with every gap set to 0 the script did not fail in 600 runs, and some other gap patterns did not fail either. The gaps in the script (40, 20, 0, 40, 10, 60, 20, 0 ms) are the ones that failed most often here; a different machine may need different ones.\n\n### What is the expected behavior? Why is that the expected behavior?\n\nEvery call returns a fresh object literal, so an object's `area` and `maxOff` must keep the values they had when the call returned. The script should always print `ok`.\n\n### What do you see instead?\n\nTwo or more of the returned objects share their double-valued fields. They are distinct objects (`!==`) with different `verts` and `rim` sets, but `area` and `maxOff` of the earlier ones now read as the values of the latest one:\n\n```text\ncall 4: returned area=906.4244995830119 maxOff=4.603054157215277; the same object now reads area=1227.004391521744 maxOff=4.335027103651656\ncall 5: returned area=993.2168554423932 maxOff=4.695433341606722; the same object now reads area=1227.004391521744 maxOff=4.335027103651656\ncall 6: returned area=46422.496206723445 maxOff=4.9146857121757845; the same object now reads area=1227.004391521744 maxOff=4.335027103651656\ncall 7: returned area=3754.819562707991 maxOff=4.836269298746963; the same object now reads area=1227.004391521744 maxOff=4.335027103651656\nBUG: results of earlier calls changed after later calls\n```\n\nRecomputing with the same inputs gives the originally returned values, so the computation is right and the stored fields are what changes.\n\n### Additional information\n\n**Trace signature.** 600 runs on v24.11.0 with `--trace-opt --trace-deopt`: 13 failed. Every failing run has two or three eager deopts of the *same* Maglev code object for `faceStats`, compiled for OSR, at the bytecode right after `CreateObjectLiteral` (the first `DefineNamedOwn` of the returned literal):\n\n```text\n[bailout (kind: deopt-eager, reason: Insufficient type feedback for generic named access): begin. deoptimizing \u003cJSFunction faceStats>, \u003cCode MAGLEV>, opt id 32, bytecode offset 1390, ...]\n[bailout (kind: deopt-eager, reason: Insufficient type feedback for generic named access): begin. deoptimizing \u003cJSFunction faceStats>, \u003cCode MAGLEV>, opt id 32, bytecode offset 1390, ...]\n```\n\nOf the 587 passing runs, 575 have no such deopt and 12 have exactly one. The number of objects sharing fields equals the number of these deopts: 9 runs had two deopts and one earlier object changed, 4 runs had three deopts and two earlier objects changed. So the objects that end up aliased are the ones allocated by that cached Maglev OSR code just before it deopts at the literal's first store; the interpreter then stores the doubles.\n\nMy reading, not verified in V8's source: those objects are created sharing one mutable `HeapNumber` box per double field (the boilerplate's, or one another's), and the interpreter's in-place double stores then write through to all of them.\n\n**Flags.** `--no-maglev-osr` removes it on both versions. In the application where this was found, `--no-turbofan`, `--no-osr-from-maglev`, `--no-concurrent-osr` and `--single-threaded-gc` each also gave 0 failures in 400 runs against 6 in 400 by default; with the reduced script `--single-threaded-gc` still fails, so that one only shifts timing.\n\n**How it was found.** A vitest suite (one forked process per test file) had two geometry tests fail intermittently with values wrong by a large factor. With the application's own code, one cold process per test file: v24.11.0 failed 27 of 2820 runs, 0 of 2680 with `--no-maglev-osr`, and v22.23.1 0 of 2552. The script above is a reduction of the test helper with generated data; it is not minimal.\n\nPossibly related: #66126 (concurrent-compiler races on v24.x), #64841.\n","author":{"url":"https://github.com/jbacus","@type":"Person","name":"jbacus"},"datePublished":"2026-10-02T05:11:55Z","url":"https://github.com/nodejs/node/issues/66457"}

react-profiling0
react-import-mapreact,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf
route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:f1fc59c8-ce74-a706-2517-1cabad964c00
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idC46E:1085A1:77DAB0:9B0AE3:6AED317E
html-safe-nonce95f715bc154bc574e823288b187dc5b3770f1f81110088e43ec3d19b148daf95
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDNDZFOjEwODVBMTo3N0RBQjA6OUIwQUUzOjZBRUQzMTdFIiwidmlzaXRvcl9pZCI6IjQyNzA5NzM5NTI2MjEwOTczNDIiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac3a951f0c88b6e89a77de81ebb7347532898c22c9e22397b587699ae38b7a8ad8
hovercard-subject-tagissue:5673181314
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/nodejs/node/66457/issue_layout
twitter:imagehttps://opengraph.githubassets.com/f39caebf7486ca2f003b1c3a665b0818225a2a8bba664d42d8c9e4c2360a5562/nodejs/node/issues/66457
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/f39caebf7486ca2f003b1c3a665b0818225a2a8bba664d42d8c9e4c2360a5562/nodejs/node/issues/66457
og:image:altVersion v24.11.0 (V8 13.6.233.10-node.28) and v26.9.0 (V8 14.6.202.34-node.32). Not reproduced on v22.23.1 or v20.20.1. Later 24.x releases were not tested. Platform Darwin 27.0.0 arm64 (macOS 27.0...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamejbacus
hostnamegithub.com
expected-hostnamegithub.com
Nonee51d0b7b5ab34b1688c05b54c3ed17b8658b2fa9bca973a9c740683ccb12cf4a
turbo-cache-controlno-preview
go-importgithub.com/nodejs/node git https://github.com/nodejs/node.git
octolytics-dimension-user_id9950313
octolytics-dimension-user_loginnodejs
octolytics-dimension-repository_id27193779
octolytics-dimension-repository_nwonodejs/node
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id27193779
octolytics-dimension-repository_network_root_nwonodejs/node
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release59ebb7b901cc154ecc179a44f266fcf69f343b30
ui-targetfull
theme-color#1e2327
color-schemelight dark
react-app-nameissues

Links:

Skip to contenthttps://github.com/nodejs/node/issues/66457#start-of-content
https://github.com/
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fnodejs%2Fnode%2Fissues%2F66457
GitHubRepository hosting, code review, and collaborationhttps://github.com/platform
CopilotAI coding agent for tasks, projects, and automated workhttps://github.com/features/copilot
ActionsCI/CD and automationhttps://github.com/features/actions
Code QualityQuality analysis, fixes, and enforcementhttps://github.com/features/code-quality
CodespacesCloud development environmentshttps://github.com/features/codespaces
Code SecurityVulnerability detection and remediationhttps://github.com/security/advanced-security/code-security
Secret ProtectionSecret scanning and leak preventionhttps://github.com/security/advanced-security/secret-protection
All Featureshttps://github.com/features
Documentationhttps://docs.github.com/en
Traininghttps://learn.github.com/skills
Certificationshttps://learn.github.com/credentials
Build with Copilothttps://github.com/features/ai
Customize Copilothttps://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/customize-copilot-overview
Integrationshttps://github.com/marketplace
Trending reposhttps://github.com/trending
GitHub Sponsorshttps://github.com/open-source/sponsors
Developer articleshttps://github.com/resources/articles
ChangelogYour source for the latest features, improvements, and fixes across GitHub products, all in one place.https://github.blog/changelog/
Enterpriseshttps://github.com/enterprise
Teamhttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
See all industrieshttps://github.com/solutions/industry
Why GitHubhttps://github.com/why-github
Customer Storieshttps://github.com/customer-stories
Business insightshttps://github.com/solutions/executive-insights
Trust Centerhttps://github.com/trust-center
GitHub Advanced SecurityEnterprise-grade code securityhttps://github.com/security/advanced-security
Copilot for businessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Documentationhttps://docs.github.com/en
Resource centerhttps://github.com/resources
Bloghttps://github.blog/
Events & webinarshttps://github.com/resources/events
Community Forumhttps://github.com/orgs/community/discussions
Customer Storieshttps://github.com/customer-stories
Integrationshttps://github.com/marketplace
Customer supporthttps://help.github.com/
Traininghttps://learn.github.com/skills
GitHub Statushttps://www.githubstatus.com/
Abouthttps://github.com/about
Partnershttps://github.com/partners
Changeloghttps://github.blog/changelog/
GitHub UniverseThe event for developers, by developers — talks, workshops, and what’s next for GitHub.https://githubuniverse.com/
Pricinghttps://github.com/pricing
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fnodejs%2Fnode%2Fissues%2F66457
Sign uphttps://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=nodejs%2Fnode
Reloadhttps://github.com/nodejs/node/issues/66457
Reloadhttps://github.com/nodejs/node/issues/66457
Reloadhttps://github.com/nodejs/node/issues/66457
nodejshttps://github.com/nodejs
nodehttps://github.com/nodejs/node
Codehttps://github.com/nodejs/node
Issues656 (656)https://github.com/nodejs/node/issues
Pull requests666 (666)https://github.com/nodejs/node/pulls
Actionshttps://github.com/nodejs/node/actions
Projectshttps://github.com/nodejs/node/projects
Security and qualityhttps://github.com/nodejs/node/security
Insightshttps://github.com/nodejs/node/pulse
https://github.com/nodejs/node
New issuehttps://github.com/login?return_to=https://github.com/nodejs/node/issues/66457
New issuehttps://github.com/login?return_to=https://github.com/nodejs/node/issues/66457
Maglev OSR: object literals returned by a function share their double fields, so earlier results change after later calls (v24.11.0, v26.9.0)https://github.com/nodejs/node/issues/66457#top
confirmed-bugIssues and PRs for confirmed bugs.https://github.com/nodejs/node/issues?q=state%3Aopen%20label%3A%22confirmed-bug%22
v8 engineIssues and PRs related to the V8 dependency.https://github.com/nodejs/node/issues?q=state%3Aopen%20label%3A%22v8%20engine%22
https://github.com/jbacus
jbacushttps://github.com/jbacus
on Oct 2, 2026https://github.com/nodejs/node/issues/66457#issue-5673181314
#66126https://github.com/nodejs/node/issues/66126
#64841https://github.com/nodejs/node/issues/64841
https://github.com/inoway46
inoway46https://github.com/inoway46
on Oct 3, 2026https://github.com/nodejs/node/issues/66457#issuecomment-5967603647
Workflow and raw trace artifactshttps://github.com/inoway46/node/actions/runs/37109426221
inoway46https://github.com/inoway46
confirmed-bugIssues and PRs for confirmed bugs.https://github.com/nodejs/node/issues?q=state%3Aopen%20label%3A%22confirmed-bug%22
v8 engineIssues and PRs related to the V8 dependency.https://github.com/nodejs/node/issues?q=state%3Aopen%20label%3A%22v8%20engine%22
on Oct 3, 2026https://github.com/nodejs/node/issues/66457#event-32389589706
https://github.com/inoway46
inoway46https://github.com/inoway46
on Oct 3, 2026https://github.com/nodejs/node/issues/66457#issuecomment-5967884934
workflow and raw logshttps://github.com/inoway46/node/actions/runs/37112591553
V8 issue 547819997https://issues.chromium.org/issues/547819997
#65161https://github.com/nodejs/node/pull/65161
https://github.com/inoway46
inoway46https://github.com/inoway46
on Oct 3, 2026https://github.com/nodejs/node/issues/66457#issuecomment-5969471900
#65161https://github.com/nodejs/node/pull/65161
targos/node@15ad628https://github.com/targos/node/commit/15ad628
workflow and artifactshttps://github.com/inoway46/node/actions/runs/37114260304
https://github.com/inoway46
inoway46https://github.com/inoway46
on Oct 5, 2026https://github.com/nodejs/node/issues/66457#issuecomment-5992496146
#65161https://github.com/nodejs/node/pull/65161
inoway46https://github.com/inoway46
completedhttps://github.com/nodejs/node/issues?q=is%3Aissue%20state%3Aclosed%20archived%3Afalse%20reason%3Acompleted
on Oct 5, 2026https://github.com/nodejs/node/issues/66457#event-32498084153
https://github.com/richardlau
richardlauhttps://github.com/richardlau
on Oct 5, 2026https://github.com/nodejs/node/issues/66457#issuecomment-5993753754
#65161https://github.com/nodejs/node/pull/65161
V8 backportshttps://github.com/nodejs/node/blob/main/doc/contributing/maintaining/maintaining-V8.md#backporting-to-abandoned-branches
inoway46https://github.com/inoway46
on Oct 11, 2026https://github.com/nodejs/node/issues/66457#event-32978257164
deps: V8: cherry-pick 7d5eb1df2a72https://github.com/inoway46/node/commit/4fa345f565d73d9973fe3105134000fe9dbbe524
4fa345fhttps://github.com/inoway46/node/commit/4fa345f565d73d9973fe3105134000fe9dbbe524
richardlauhttps://github.com/richardlau
on Oct 12, 2026https://github.com/nodejs/node/issues/66457#event-33052028605
deps: V8: cherry-pick 7d5eb1df2a72https://github.com/nodejs/node/commit/1a33e914e8e1ae488901ddc50718aa0357846f2f
1a33e91https://github.com/nodejs/node/commit/1a33e914e8e1ae488901ddc50718aa0357846f2f
somesh-kshttps://github.com/somesh-ks
on Oct 24, 2026https://github.com/nodejs/node/issues/66457#event-34130440529
fix(sound): keep render loops out of the functions that return objectshttps://github.com/somesh-ks/knowledge-hub/commit/8f1e74fc214a72f14b1b17084ee989abb28c2625
8f1e74fhttps://github.com/somesh-ks/knowledge-hub/commit/8f1e74fc214a72f14b1b17084ee989abb28c2625
fix(sound): keep render loops out of the functions that return objectshttps://github.com/somesh-ks/knowledge-hub/commit/5593c02c94c56692fda8a4aeea11d81d8ed8cd2f
5593c02https://github.com/somesh-ks/knowledge-hub/commit/5593c02c94c56692fda8a4aeea11d81d8ed8cd2f
fix(sound): keep render loops out of the functions that return objectshttps://github.com/somesh-ks/knowledge-hub/commit/d23eb0d6cc2b050e8830b92dcb08c10a12a1d31c
d23eb0dhttps://github.com/somesh-ks/knowledge-hub/commit/d23eb0d6cc2b050e8830b92dcb08c10a12a1d31c
fix(sound): keep render loops out of the functions that return objects (https://github.com/somesh-ks/knowledge-hub/commit/5831d4bebf880724132473520799f560f1227b4a
5831d4bhttps://github.com/somesh-ks/knowledge-hub/commit/5831d4bebf880724132473520799f560f1227b4a
inoway46https://github.com/inoway46
on Oct 29, 2026https://github.com/nodejs/node/issues/66457#event-34537224148
deps: V8: cherry-pick 7d5eb1df2a72https://github.com/inoway46/node/commit/fa476dbc3a5b4bc7b7687f4932fc0796c5b77eef
fa476dbhttps://github.com/inoway46/node/commit/fa476dbc3a5b4bc7b7687f4932fc0796c5b77eef
TomerAberbachhttps://github.com/TomerAberbach
on Nov 1, 2026https://github.com/nodejs/node/issues/66457#event-34859410868
fix(trace): aggregate a trace's events outside `aggregate` to avoid a…https://github.com/TomerAberbach/profiler-md/commit/31ead71d9a049385deebdc4afeb695c8aa49a4c7
31ead71https://github.com/TomerAberbach/profiler-md/commit/31ead71d9a049385deebdc4afeb695c8aa49a4c7
Sign up for freehttps://github.com/signup?return_to=https://github.com/nodejs/node/issues/66457
Sign in to commenthttps://github.com/login?return_to=https://github.com/nodejs/node/issues/66457
confirmed-bugIssues and PRs for confirmed bugs.https://github.com/nodejs/node/issues?q=state%3Aopen%20label%3A%22confirmed-bug%22
v8 engineIssues and PRs related to the V8 dependency.https://github.com/nodejs/node/issues?q=state%3Aopen%20label%3A%22v8%20engine%22
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.