Skip to content

perf_hooks: export the real performance object and fix entry prototypes (+5 tests) - #34518

Merged
dylan-conway merged 8 commits into
mainfrom
claude/node-v26-perf-hooks
Jul 21, 2026
Merged

perf_hooks: export the real performance object and fix entry prototypes (+5 tests)#34518
dylan-conway merged 8 commits into
mainfrom
claude/node-v26-perf-hooks

perf_hooks: match Node's Symbol error message in clearMeasures too

684dd81
Select commit
Loading
Failed to load commit list.
Claude / Claude Code Review completed Jul 18, 2026 in 31m 16s

Code review found 1 potential issue

Found 2 candidates, confirmed 1. See review comments for details.

Details

Severity Count
🔴 Important 0
🟡 Nit 1
🟣 Pre-existing 0
Severity File:Line Issue
🟡 Nit src/jsc/bindings/webcore/PerformanceUserTiming.cpp:302-308 measure(name, {detail}, endMark) fix has no test coverage

Annotations

Check warning on line 308 in src/jsc/bindings/webcore/PerformanceUserTiming.cpp

See this annotation in the file changed.

@claude claude / Claude Code Review

measure(name, {detail}, endMark) fix has no test coverage

The new `if (!endMark.isNull())` block that honours a trailing `endMark` when the options dict has no `start`/`end` is unexercised — no test in the tree calls `performance.measure(name, {…}, endMark)`, so deleting this block would not break any test. Per REVIEW.md ("Confirm deleting each load-bearing clause of your fix breaks at least one test"), consider adding a small case in `perf_hooks.test.ts`: `performance.mark("m", {startTime: 100})`, then assert `performance.measure("x", {detail: "d"}, "