Skip to content

test(inspector): expand granular Node parity coverage#6490

Open
TheHypnoo wants to merge 2 commits into
mainfrom
test/expand-node-inspector-parity
Open

test(inspector): expand granular Node parity coverage#6490
TheHypnoo wants to merge 2 commits into
mainfrom
test/expand-node-inspector-parity

Conversation

@TheHypnoo

@TheHypnoo TheHypnoo commented Jul 16, 2026

Copy link
Copy Markdown
Member

Summary

  • expand the granular node:inspector callback parity suite from 3 to 37 entries
  • cover public surface descriptors, session lifecycle, post() validation and callback behavior, deterministic Runtime/Schema/Debugger/Profiler/HeapProfiler commands, notifications, and isolated endpoint semantics
  • document per-entry Node 26.5.0, Deno 2.9.2, Bun 1.3.14, and Perry evidence plus the separate node:inspector/promises follow-on boundary
  • ratchet the measured inspector baseline from 2/3 to 4/37 without changing runtime or compiler behavior

Validation

  • exact Node 26.5.0 oracle: three final complete runs, 111/111 zero-exit executions, identical aggregate SHA-256 fedccaf62d97bd5c1ebe1589a063e872222510b591536816ab38fe5bfb39fecd
  • Perry release-focused runner: two identical runs at 4/37 with 33 stable output diffs and no compile failures or execution timeouts
  • Deno 2.9.2: 30 exact passes, 4 diffs, 3 errors
  • Bun 1.3.14: 14 diffs, 19 errors, 4 bounded timeouts; no exact passes
  • cargo build --release -p perry -p perry-runtime-static -p perry-stdlib-static --locked --offline
  • cargo fmt --all -- --check
  • deno fmt --check test-parity/node-suite/inspector test-parity/node_suite_baseline.json
  • JSON, evidence-row, baseline, scope, file-size, generated-artifact, and leaked-process checks

Exclusions

CPU/heap sampling, coverage payloads, snapshots, GC/finalization, breakpoints, active waitForDebugger, signals, stress, external frontends/clients, and scheduler-sensitive worker behavior remain excluded. node:inspector/promises remains the correct separate next suite.

Summary by CodeRabbit

  • New Features

    • Added comprehensive node:inspector parity coverage across events, sessions, lifecycle behavior, protocol commands, runtime evaluation, network helpers, and API surface details.
    • Added validation for inspector callbacks, parameters, commands, object handling, and endpoint lifecycle scenarios.
  • Documentation

    • Added coverage guidance, runtime comparison evidence, test constraints, and baseline results for the inspector parity suite.

@coderabbitai

coderabbitai Bot commented Jul 16, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@proggeramlug, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 15 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: b72da657-f808-43a2-a9df-c4be3f444677

📥 Commits

Reviewing files that changed from the base of the PR and between 0422640 and cf98ebb.

📒 Files selected for processing (1)
  • test-parity/node_suite_baseline.json
📝 Walkthrough

Walkthrough

The PR adds a deterministic node:inspector parity suite covering exports, sessions, lifecycle, events, protocol calls, runtime values, validation, and cleanup. It documents Node 26.5.0 oracle results and updates the node-suite baseline from 3 to 37 inspector entries.

Changes

Inspector parity suite

Layer / File(s) Summary
Suite documentation and baseline
test-parity/node-suite/inspector/README.md, test-parity/node-suite/inspector/EVIDENCE.md, test-parity/node_suite_baseline.json
Documents coverage, oracle evidence, exclusions, and follow-on inventory; updates aggregate and inspector baseline metrics.
Inspector surface introspection
test-parity/node-suite/inspector/surface/*
Adds export, Session, domain helper, descriptor, and invalid-parameter probes.
Session and endpoint lifecycle
test-parity/node-suite/inspector/lifecycle/*
Adds endpoint child-process checks, receiver validation, connection transitions, port validation, main-thread behavior, and concurrent sessions.
Notifications and helper events
test-parity/node-suite/inspector/events/*, test-parity/node-suite/inspector/network/helpers.ts
Adds console, listener, notification-order, script-parsed, and Network event cleanup probes.
Session post validation and ordering
test-parity/node-suite/inspector/post/*
Adds callback, method, parameter, circular-value, disconnected-session, overload, unknown-command, and pending-disconnect checks.
Protocol and runtime behavior
test-parity/node-suite/inspector/protocol/*, test-parity/node-suite/inspector/runtime/*
Adds protocol enablement, schema, script-source, evaluation, exception, preview, subtype, and object-release probes.
Callback session cleanup
test-parity/node-suite/inspector/session/callback-runtime.ts
Refines callback error reporting and ensures listener/session cleanup across connection and notification checks.

Estimated code review effort: 4 (Complex) | ~60 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description covers summary, validation, and exclusions, but it omits required template sections like Changes, Related issue, Test plan, and Checklist. Add the missing template sections, especially a concrete Changes list, Related issue, Test plan, and checklist items.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title is concise and accurately summarizes the main change: expanded Node inspector parity coverage.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch test/expand-node-inspector-parity

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…ector-parity

# Conflicts:
#	test-parity/node_suite_baseline.json
@proggeramlug proggeramlug added the ready PR triaged: CodeRabbit feedback + conflicts addressed label Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready PR triaged: CodeRabbit feedback + conflicts addressed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants