✔ selected DOM capture returns only text and origin, with no page URL path (1.361534ms)
✔ capture rejects missing selection, multiple ranges and edit fields (0.316586ms)
✔ capture rejects protected protocols and excessive UTF8 bytes (0.234675ms)
✔ Unicode observations survive export and strict parse; independent pins match (14.22099ms)
✔ private key is non-extractable; public key can be exported (1.629628ms)
✔ altering text, origin, time, signature, metadata or algorithms fails (8.585206ms)
✔ omission, duplication and reordering fail against signed manifest (4.796469ms)
✔ wholesale valid replacement is untrusted without pins and rejected with prior pin (9.659997ms)
✔ valid re-signed prefix with same key passes self-check but fails pinned pack digest (6.109802ms)
✔ empty pack, oversize content, malformed time and credential/path URLs rejected (0.664889ms)
✔ JSON parser rejects duplicates, BOM, floats, depth, unsafe numbers and surrogates (0.677937ms)
✔ canonicalization sorts UTF-16 keys, retains Unicode and rejects unsupported values (0.304558ms)
✔ RFC6962 roots agree with independent Node crypto recursion at 0,1,3,5,6 leaves (2.641157ms)
✔ malformed embedded key, signature encoding and incorrect fingerprint rejected (6.493057ms)
✔ manifest grants no background access, network access, all-sites permission or content bridge (1.764777ms)
ℹ tests 15
ℹ suites 0
ℹ pass 15
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 136.916826
