
Research
/Security News
Mini Shai-Hulud Campaign Hits Red Hat Cloud Services npm Packages
A mini Shai-Hulud campaign compromised Red Hat Cloud Services npm packages to steal developer and CI/CD secrets during installation.
@mizchi/playwright-v8-coverage
Advanced tools
V8 precise-coverage collector for Playwright (CDP Profiler.takePreciseCoverage) with novelty-scoring helpers. Extracted from chaosbringer.
V8 precise-coverage collector for Playwright via CDP (Profiler.takePreciseCoverage), with novelty-scoring helpers. Extracted from chaosbringer where it powers AFL-style coverage-guided action selection.
pnpm add @mizchi/playwright-v8-coverage
# also requires playwright as a peer
pnpm add playwright
Requires Node 20+.
import { chromium } from "playwright";
import { CoverageCollector, coverageDelta } from "@mizchi/playwright-v8-coverage";
const browser = await chromium.launch();
const ctx = await browser.newContext();
const page = await ctx.newPage();
const cdp = await ctx.newCDPSession(page);
const collector = new CoverageCollector(cdp);
await collector.start();
await page.goto("https://example.com");
const before = await collector.take();
await page.click("button#open-drawer");
const after = await collector.take();
const novel = coverageDelta(before, after);
console.log(`drawer click executed ${novel.size} new functions`);
await collector.stop();
await browser.close();
CoverageCollectorclass CoverageCollector {
constructor(cdp: CDPSession);
start(): Promise<void>; // Profiler.enable + startPreciseCoverage
take(): Promise<Set<string>>; // snapshot of executed function fingerprints
stop(): Promise<void>; // Profiler.stopPreciseCoverage
}
take() returns a Set<string> of function fingerprints <scriptUrl> <functionName> <startOffset>. Counters accumulate across take() calls — diff against a previous snapshot to get per-action deltas.
coverageSignature(scripts) -> Set<string>Convert a raw V8 precise-coverage snapshot into the fingerprint set. Useful when you already have the CDP response from elsewhere.
coverageDelta(prev, next) -> Set<string>Set difference: elements of next not in prev.
noveltyMultiplier(score, boost) -> number1 + boost · log(1 + score). Logarithmic so a target with a huge historical contribution doesn't crush every other target's weight. boost: 0 disables (returns 1).
summarizeCoverage(state) -> CoverageReportBuild a report-shaped summary from running coverage state (totalFunctions, pagesWithNewCoverage, topNovelTargets).
targetKey(url, selector) -> stringStable map key for a (url, selector) pair. Used as the key in per-target novelty maps.
MIT
FAQs
V8 precise-coverage collector for Playwright (CDP Profiler.takePreciseCoverage) with novelty-scoring helpers. Extracted from chaosbringer.
The npm package @mizchi/playwright-v8-coverage receives a total of 456 weekly downloads. As such, @mizchi/playwright-v8-coverage popularity was classified as not popular.
We found that @mizchi/playwright-v8-coverage demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
A mini Shai-Hulud campaign compromised Red Hat Cloud Services npm packages to steal developer and CI/CD secrets during installation.

Research
/Security News
The North Korean malware loader hides in a Packagist-listed package and its GitHub branch to fetch and execute remote code in a likely Contagious Interview-style lure.

Security News
The Rust project is moving toward formal rules on LLM use in contributions after months of internal debate over maintainer burden, code quality, and contributor experience.