{"schemaVersion":1,"status":{"id":"5b662c8e-08e4-4a51-be44-d1772492be37","scanId":"ab614b32-0846-48f6-ab11-eef9a2a619ff","invalidatedAt":null,"invalidationReason":null,"replacedBy":null,"snapshotAvailable":true,"policyAllowed":true,"createdAt":"2026-10-09T14:57:24.150Z","observationRevision":0,"previousScanId":null,"previousReportId":null,"current":true},"report":{"schemaVersion":1,"id":"5b662c8e-08e4-4a51-be44-d1772492be37","scanId":"ab614b32-0846-48f6-ab11-eef9a2a619ff","classifierRevision":"classifier_v2","observedAt":"2026-10-09T14:57:22.463Z","classifiedAt":"2026-10-09T14:57:24.153Z","artifact":{"name":"jsdom","version":"30.1.2","integrity":"sha512-0FFE/jE1rppmVfUrJUgxqXjcwolZYIGtAgj1pTussMhNZxIxi7W/PvfWaMNroGi2B36X1IKHbexpZ9DhkoOPiQ==","tarballUrl":"https://registry.npmjs.org/jsdom/-/jsdom-30.1.2.tgz"},"preparation":{"id":"771fe99b-c73e-400c-b628-e5733b419c5c","outcome":"pass","failure":null,"profileRevision":"npm_11_19_0_linux_amd64_v2","snapshot":{"id":"e69eec09-c63b-4108-b0fa-90e4f76b8608","generation":"7961c96b-8be6-4b56-a659-9c77228f36e3","lockDigest":"228b2bd890d134f748e2c56fd11fe2cd195ba3294c5acbd00d857a99527b889e","treeDigest":"01d7ce1b22e774e62cf518929e528613acd7df15f2c05bba7efb96826266b765","profileRevision":"npm_11_19_0_linux_amd64_v2","installerImage":"node:24.21.0-bookworm-slim@sha256:5cbc7caba8c2c0f0bca675d1b61b9f2857e1cf1853c6164ee9dd409501a936e7"},"installedCount":36,"omittedOptionalCount":0,"staticObservations":{"native":{"count":0,"paths":[],"buildIndicators":[],"prerequisiteProven":false},"declared":{"main":"./lib/api.js","type":"commonjs","engines":{"node":"^22.22.2 || ^24.15.0 || >=26.0.0"},"scripts":{"lint":"eslint --cache","test":"npm-run-all --continue-on-error test:*","prepare":"wireit","pretest":"npm run prepare && npm run wpt:init","test:api":"mocha test/api/","test:wpt":"mocha test/web-platform-tests/run-wpts.js","wpt:init":"git submodule update --init --recursive","benchmark":"node ./benchmark/runner","wpt:reset":"rm -rf ./test/web-platform-tests/tests && npm run wpt:init","test:tuwpt":"mocha test/web-platform-tests/run-tuwpts.js","wpt:update":"git submodule update --init --recursive --remote && cd test/web-platform-tests/tests && python wpt.py manifest --path ../wpt-manifest.json","benchmark:compare":"node ./benchmark/compare","test:tuwpt:browser":"node scripts/verify-tuwpts-in-browser.js","prepare:convert-idl":"wireit","test:to-port-to-wpts":"mocha test/to-port-to-wpts/ && mocha test/to-port-to-wpts/level1/ && mocha test/to-port-to-wpts/level2/ && mocha test/to-port-to-wpts/level3/","prepare:generate-event-sets":"wireit","prepare:generate-js-globals":"wireit","prepare:generate-css-style-properties":"wireit"},"dependencies":{"saxes":"^6.0.0","parse5":"^8.0.1","undici":"^8.11.2","css-tree":"^3.2.1","data-urls":"^8.0.0","lru-cache":"^11.5.3","decimal.js":"^10.6.0","whatwg-url":"^17.2.0","tough-cookie":"^6.0.2","@exodus/bytes":"^1.16.0","whatwg-mimetype":"^5.0.0","w3c-xmlserializer":"^6.0.0","webidl-conversions":"^8.0.1","xml-name-validator":"^5.0.0","@bramus/specificity":"^2.4.2","@asamuzakjp/css-color":"^7.1.3","html-encoding-sniffer":"^7.0.0","@asamuzakjp/dom-selector":"^9.2.4","is-potential-custom-element-name":"^1.0.1","@csstools/css-syntax-patches-for-csstree":"^1.1.15"},"devDependencies":{"mocha":"^12.0.3","eslint":"^10.12.0","opener":"^1.5.2","semver":"^7.8.5","wireit":"^0.14.13","globals":"^17.13.0","js-yaml":"^5.4.2","webidl2":"^24.5.0","tinybench":"^6.2.0","webidl2js":"^21.0.2","@webref/css":"^8.7.5","npm-run-all2":"^9.0.3","server-destroy":"^1.0.1","eslint-plugin-n":"^18.4.1","mocha-sugar-free":"^1.4.0","eslint-plugin-html":"^8.2.1","@domenic/eslint-config":"^5.1.0","@stylistic/eslint-plugin":"^5.10.0"},"peerDependencies":{"canvas":"^3.2.3"},"peerDependenciesMeta":{"canvas":{"optional":true}}},"platform":{"os":true,"cpu":true,"libc":true},"evidenceLevel":"static_only","lifecycleScripts":["prepare"]}},"matrix":{"id":"bfab88d7-3f4a-41b5-97a9-5aafd5bda511","revision":"production_ab51508deb208994caf81cb80f14b800","platform":"linux_amd64_glibc","harnessRevision":"load_v2","planRevision":"explicit_exports_v1","policyRevision":"runtime_limits_v2","images":[{"profileId":"node_24_21_0","kind":"node","version":"24.21.0","imageId":"sha256:f2fcbb4dfbd6d5f57f4e43de97e70182d9982ac7cc0cc063dfff2cf1759a411d","builtAt":"2026-10-04T15:20:38.392Z","sourceImage":"node:24.21.0-bookworm-slim@sha256:5cbc7caba8c2c0f0bca675d1b61b9f2857e1cf1853c6164ee9dd409501a936e7","baseImage":"gcr.io/distroless/cc-debian13:nonroot@sha256:20afe6a70f2565277b704cc17289cb557f353a3619f6350f52a2317106598df4","supportImage":"node:26.10.0-bookworm-slim@sha256:0a992e1420e2d70611578f1844a6f10a9d11fe6bb535aabf72efe3007f13d79b","platform":"linux_amd64_glibc","recipeRevision":"runtime_image_v1"},{"profileId":"node_26_10_0","kind":"node","version":"26.10.0","imageId":"sha256:9c1c93cc35d1408d26a61c4efccbde37c35425e362a2e723b885c3333d2be073","builtAt":"2026-10-04T15:20:47.161Z","sourceImage":"node:26.10.0-bookworm-slim@sha256:0a992e1420e2d70611578f1844a6f10a9d11fe6bb535aabf72efe3007f13d79b","baseImage":"gcr.io/distroless/cc-debian13:nonroot@sha256:20afe6a70f2565277b704cc17289cb557f353a3619f6350f52a2317106598df4","supportImage":"node:26.10.0-bookworm-slim@sha256:0a992e1420e2d70611578f1844a6f10a9d11fe6bb535aabf72efe3007f13d79b","platform":"linux_amd64_glibc","recipeRevision":"runtime_image_v1"},{"profileId":"bun_1_4_2","kind":"bun","version":"1.4.2","imageId":"sha256:2343363679fb92d59a395ff081b783b5514f06295b1bc6d61baaeef17e793789","builtAt":"2026-10-04T15:21:07.160Z","sourceImage":"oven/bun:1.4.2-debian@sha256:53710ce0f14eef8312521c586a7ae1d9aeab4011840f09f1966073b68fc2e2ab","baseImage":"gcr.io/distroless/cc-debian13:nonroot@sha256:20afe6a70f2565277b704cc17289cb557f353a3619f6350f52a2317106598df4","supportImage":"node:26.10.0-bookworm-slim@sha256:0a992e1420e2d70611578f1844a6f10a9d11fe6bb535aabf72efe3007f13d79b","platform":"linux_amd64_glibc","recipeRevision":"runtime_image_v1"},{"profileId":"deno_2_9_7","kind":"deno","version":"2.9.7","imageId":"sha256:4292bb23555f98fb9dfc30fb447daa1c301686d89264fd8643ccb86bc0d53c29","builtAt":"2026-10-04T15:21:22.570Z","sourceImage":"denoland/deno:debian-2.9.7@sha256:869d374bdaddda4fde029c492d7219199b0e821c2c53cca5357b3a6f5b9336fc","baseImage":"gcr.io/distroless/cc-debian13:nonroot@sha256:20afe6a70f2565277b704cc17289cb557f353a3619f6350f52a2317106598df4","supportImage":"node:26.10.0-bookworm-slim@sha256:0a992e1420e2d70611578f1844a6f10a9d11fe6bb535aabf72efe3007f13d79b","platform":"linux_amd64_glibc","recipeRevision":"runtime_image_v1"}]},"omissions":{"counts":{"pattern":0,"non_executable":0,"not_exported":0,"invalid_subpath":0,"coverage_limit":0},"samples":[]},"outcome":"pass","evidenceLevel":"smoke_tested","coverageComplete":true,"cells":[{"runId":"16d43a05-288e-4bf4-b307-6e6680e36114","profileId":"node_24_21_0","group":"root","mode":"esm","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":1349.4716439996846,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":925.011268,"resolvedTo":"file:///workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"8d991efc-6de9-4973-872d-91ae87876cb5","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":1349.4716439996846}]},{"runId":"973fca8b-607d-4264-8c43-d032d28e8a56","profileId":"node_24_21_0","group":"root","mode":"commonjs","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":1432.5270610000007,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":1036.651079,"resolvedTo":"/workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"153eb3dc-f6a5-413f-9680-2acba18155ef","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":1432.5270610000007}]},{"runId":"eb79a463-3d13-4071-a316-f9918453b56a","profileId":"node_24_21_0","group":"subpaths","mode":"esm","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"004e6bcc-bc05-41b0-a64a-08bee9a301f4","profileId":"node_24_21_0","group":"subpaths","mode":"commonjs","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"d018ca6b-d6b0-4e52-84d4-9b0bc889967f","profileId":"node_26_10_0","group":"root","mode":"esm","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":1340.5763749997132,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":908.168291,"resolvedTo":"file:///workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"ae2fc8b7-7c7e-4252-8b8d-4b658c22c009","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":1340.5763749997132}]},{"runId":"9901a6e8-f841-4bee-ad6f-c7016ecc559b","profileId":"node_26_10_0","group":"root","mode":"commonjs","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":1320.8653640002012,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":951.351359,"resolvedTo":"/workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"332c3fe4-9155-4fae-bf70-0cbbf877d8cf","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":1320.8653640002012}]},{"runId":"341b2de5-2d8e-4465-9ac5-b063ec1dd784","profileId":"node_26_10_0","group":"subpaths","mode":"esm","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"e406a12e-5389-4c75-8773-d13cff9df780","profileId":"node_26_10_0","group":"subpaths","mode":"commonjs","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"ca98710a-d535-46a9-ab03-bbfa2bd32e10","profileId":"bun_1_4_2","group":"root","mode":"esm","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":1331.8626480000094,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":1019.84969,"resolvedTo":"file:///workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"4302bc29-a7bc-456a-9556-80e181db94af","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":1331.8626480000094}]},{"runId":"02e77668-b4dc-4e7f-b986-0ef77c0602c8","profileId":"bun_1_4_2","group":"root","mode":"commonjs","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":1245.2300880001858,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":922.3559789999999,"resolvedTo":"/workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"a3a08f56-946e-4a98-91a0-20e9c3d5900c","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":1245.2300880001858}]},{"runId":"4bd3d559-a048-4e1e-9e48-3450375896fe","profileId":"bun_1_4_2","group":"subpaths","mode":"esm","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"2c8c095a-6462-42b1-8184-e6d9adc48fdf","profileId":"bun_1_4_2","group":"subpaths","mode":"commonjs","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"8a49396e-6ff7-4a5d-8d24-1e4e0a051136","profileId":"deno_2_9_7","group":"root","mode":"esm","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":2536.9898689999245,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":2034.567944,"resolvedTo":"file:///workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"9a85e71e-6d2b-4d9c-a940-07ee46629e28","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":2536.9898689999245}]},{"runId":"d7fb2d29-56e8-4af6-86d7-f1abbb35e6f4","profileId":"deno_2_9_7","group":"root","mode":"commonjs","method":"fresh_root_v2","outcome":"pass","evidenceLevel":"smoke_tested","coverage":{"planned":1,"observed":1,"passed":1,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":2557.306307999883,"failure":null,"entries":[{"index":0,"specifier":"jsdom","displaySpecifier":"jsdom","outcome":"pass","durationMs":2098.027376,"resolvedTo":"/workspace/node_modules/jsdom/lib/api.js","failure":null}],"sessions":[{"probeId":"1fdf1211-e5c3-422e-add2-00e34a752dbf","startIndex":0,"stopReason":"completed","exitCode":0,"oomKilled":false,"durationMs":2557.306307999883}]},{"runId":"7fb04bc2-5582-41ed-8911-880886d60f90","profileId":"deno_2_9_7","group":"subpaths","mode":"esm","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]},{"runId":"b245914e-61c9-42c0-8064-817d1c4fe258","profileId":"deno_2_9_7","group":"subpaths","mode":"commonjs","method":"sequential_batch_v2","outcome":"not_applicable","evidenceLevel":"static_only","coverage":{"planned":0,"observed":0,"passed":0,"failed":0,"prerequisiteLimited":0,"interrupted":0,"untested":0,"complete":true},"durationMs":0,"failure":null,"entries":[],"sessions":[]}],"limitations":["Only installation and loading were observed; functional correctness and package safety are not established.","Subpath batches share module caches and globals; root modes use separate fresh sandboxes.","Package-visible harness observations can be tampered with. They are not adversarial attestation.","Evidence applies to these exact artifacts, dependency snapshot, runtime images and Linux amd64/glibc policy.","Runtime error codes are captured observations and can also be thrown by package code."]}}