Probe identity-from-keys failure paths in the matrix - #32
Open
lann wants to merge 1 commit into
Open
Conversation
from-keys' rejections were untested: nothing constructed a bad pair. The demo grows identity-negative, an in-guest probe asserting the constructor rejects a mismatched Ed25519 pair (the possession probe's judgment) and a non-Ed25519 (ECDSA P-256) pair, each specifically with invalid-argument, and accepts a matched control pair whose identity reports the pair's public key — proving the rejections are judgments, not environmental failures. The matrix gains endpoint-negative-identity-from-keys running it as a single process: no bind, no relay traffic, no peer. The third from-keys check, a signing key without the sign usage, stays untestable by construction: every webcrypto mint path requires the sole usage enabled, so such a key is unobtainable today (the check guards keystore-loaded keys that arrive with usages disabled).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #31, closing its newest untested branch:
from-keys' rejections had no coverage — nothing ever constructed a bad pair.The demo grows
identity-negative, an in-guest probe asserting:invalid-argument— the possession probe's judgment, exercised;invalid-argument— the algorithm check;Error shape is asserted, not just failure: any wrong variant fails the probe with the observed error in the message. The matrix gains
endpoint-negative-identity-from-keys, a single process with no bind, relay traffic, or peer.Not covered, deliberately: the
can-sign: falsecheck insidefrom-keysis untestable by construction — every webcrypto mint path requires the sole usage enabled ("an untouched options resource failsnot-permitted"), so a no-sign signing key is unobtainable today. That check guards keystore-loaded keys that arrive with usages disabled (the webcrypto#97/#128 direction); it becomes testable when such a mint path exists.Gates: fmt, clippy, validate-wit, test, probes, full matrix (all 19 rows, new probe included), bench, transpile — green.