Low-severity items from adversarial review of js/jco/webcrypto.js:
invalidKey (4377-4379) maps every platform import rejection to invalid-key, while the host's own taxonomy maps NotSupportedError to unsupported (251-262). On an engine lacking an algorithm entirely, import reports "bad key" instead of "not served". Unobservable on the conformance matrix's platforms.
- Stale doc: the
EcdsaAlgorithm typedef (85-89) mentions "the curve OID the PKCS#8 wrapping needs"; no OID field or PKCS#8 construction exists (all PKCS#8 imports are platform pass-throughs).
- JSDoc convention: prose block + separate bare
/** @type */ block (270-271, 330-331, 420-421, ...) detaches the prose from the symbol for tooling; the componentize shim merges them. Also errMessageTooLong (5360) sits ~5,000 lines from the err* family (119-155), and errOther (202) below its consumer.
- The
configure() doc (3512-3514) ends in an objection-answering clause ("so without this the new capacity would go unused...") — the rationale already lives in the right place, js/jco/test/admission.test.js:190.
- Note for an upstream pin:
bytesToStream (3600-3614) releases its pool reservation on pull-completion or cancel(); this relies on jco mapping guest-side stream drop to cancel() (version-anchored to jco-transpile 0.5.2 in the header). Worth a pinned test when the toolchain moves.
Related: #28.
Low-severity items from adversarial review of js/jco/webcrypto.js:
invalidKey(4377-4379) maps every platform import rejection toinvalid-key, while the host's own taxonomy mapsNotSupportedErrortounsupported(251-262). On an engine lacking an algorithm entirely, import reports "bad key" instead of "not served". Unobservable on the conformance matrix's platforms.EcdsaAlgorithmtypedef (85-89) mentions "the curve OID the PKCS#8 wrapping needs"; no OID field or PKCS#8 construction exists (all PKCS#8 imports are platform pass-throughs)./** @type */block (270-271, 330-331, 420-421, ...) detaches the prose from the symbol for tooling; the componentize shim merges them. AlsoerrMessageTooLong(5360) sits ~5,000 lines from theerr*family (119-155), anderrOther(202) below its consumer.configure()doc (3512-3514) ends in an objection-answering clause ("so without this the new capacity would go unused...") — the rationale already lives in the right place, js/jco/test/admission.test.js:190.bytesToStream(3600-3614) releases its pool reservation on pull-completion orcancel(); this relies on jco mapping guest-side stream drop tocancel()(version-anchored to jco-transpile 0.5.2 in the header). Worth a pinned test when the toolchain moves.Related: #28.