| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
lockfiles / every Cargo.lock is current (pull_request) Successful in 41s
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 5s
no-vanity-metrics / WAI public text names no comparison (pull_request) Successful in 4s
no-vanity-metrics / WAI public text names no company or product (pull_request) Successful in 4s
no-vanity-metrics / No new orphan source files (pull_request) Successful in 5s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m58s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 3m23s
standards workspaces build + test / aac-rs (pull_request) Successful in 5m0s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 2m7s
standards workspaces build + test / map-rs (pull_request) Successful in 2m6s
standards workspaces build + test / mesh-rs (pull_request) Successful in 3m27s
tests in CI / every test file is run by a job or listed with its reason (pull_request) Successful in 1m20s
spec citations resolve / Code cites no section its SPEC lacks (pull_request) Successful in 5s
standards workspaces build + test / arl-rs (pull_request) Successful in 1m10s
standards workspaces build + test / eoc-rs (pull_request) Successful in 2m3s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m33s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 1m15s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 4m15s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 1m15s
standards workspaces build + test / openpay (pull_request) Successful in 12m20s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m30s
standards workspaces build + test / sense-rs (pull_request) Successful in 1m11s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m23s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 4m6s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 20m23s
Falsifying the test above found a defect in the test. It asserted that the
secret handle does not appear in the grant id:
let core = format!("{:?}", grants_content_id(&live_key));
assert!(!core.contains("live-key"), ...);
`grants_content_id` returns a BLAKE3 address. No formatting of a hash can
contain its own preimage, whatever went into it — so that assertion passes
against any implementation, including one that commits the handle verbatim. It
checked the hash function, not this code, which is the definition of
decoration.
I only noticed because mutation C — committing `endpoint|secret_ref`, which
really does put the handle in the preimage — was caught by a *different*
assertion (Bearer versus a named header, since that mutation also drops
`inject`). The one written for it stayed green, which is what a vacuous
assertion looks like from the outside.
Removed, with the reason in its place so it is not reintroduced, and a pointer
to the property that is testable: `commitment()` distinguishing its three
fields, which the swap and injection-mode assertions cover, and
`commitment_distinguishes_credentials_without_the_secret` in sandbox-capability
for the shape.
Re-falsified after the change: all three mutations still caught — the binding
disabled, the commitment reduced to the endpoint, and the handle committed
verbatim.
Co-Authored-By: Claude Opus 5 <[email protected]>
|
||
| .. | ||
| crates | ||
| Cargo.lock | ||
| Cargo.toml | ||