aauth.sidecat.dev · All reports · report.md · report.json
aauth-rust remote report
Report rust-v0.1.0-alpha.28. Suite aauth-conformance f415f2f8e18bebb2b4b6928d96c80d999244e72a. Revision v0.1.0-alpha.28. Suite exit 0.
Pass means the listed assertions passed. Remote mode does not grade TLS, enrollment or discovery. not_exercised is a scenario this transport does not run, or a conditional check that did not apply.
| Role | Execution | Pass | Fail | Error | Not exercised | Not claimed |
|---|---|---|---|---|---|---|
authorization.federated | passed | 62 | 0 | 0 | 336 | 0 |
events.agent-provider | passed | 54 | 0 | 0 | 0 | 0 |
events.agent | passed | 11 | 0 | 0 | 0 | 0 |
events.delivery | passed | 15 | 0 | 0 | 0 | 0 |
events.subscription | passed | 27 | 0 | 0 | 0 | 0 |
person-server.direct | passed | 99 | 0 | 0 | 10 | 0 |
r3.issuer | passed | 10 | 0 | 0 | 0 | 0 |
r3.resource | passed | 42 | 0 | 0 | 0 | 0 |
resource.agent-identity | passed | 17 | 0 | 0 | 0 | 8 |
sigkey.verifier | passed | 55 | 0 | 0 | 0 | 3 |
supervision.person-server | passed | 64 | 0 | 0 | 0 | 0 |
supervision.server | passed | 73 | 0 | 0 | 0 | 0 |
The role reports follow.
Four-party authorization report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736314 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| fed.person-required | protocol | pass (14 pass, 0 fail, 0 error, 42 unexercised) |
| fed.person-token | protocol | pass (4 pass, 0 fail, 0 error, 32 unexercised) |
| fed.challenge | protocol | pass (21 pass, 0 fail, 0 error, 63 unexercised) |
| fed.ps-proof | protocol | not_exercised (0 pass, 0 fail, 0 error, 18 unexercised) |
| fed.forwarding | protocol | not_exercised (0 pass, 0 fail, 0 error, 18 unexercised) |
| fed.as-binding | protocol | pass (7 pass, 0 fail, 0 error, 31 unexercised) |
| fed.auth-token | protocol | pass (4 pass, 0 fail, 0 error, 20 unexercised) |
| fed.delivery | protocol | pass (4 pass, 0 fail, 0 error, 45 unexercised) |
| fed.application | adapter-contract | pass (8 pass, 0 fail, 0 error, 9 unexercised) |
| budget.four-party-grant | protocol | not_exercised (0 pass, 0 fail, 0 error, 10 unexercised) |
| budget.four-party-omission | protocol | not_exercised (0 pass, 0 fail, 0 error, 4 unexercised) |
| budget.hard-cap | protocol | not_exercised (0 pass, 0 fail, 0 error, 15 unexercised) |
| budget.header | protocol | not_exercised (0 pass, 0 fail, 0 error, 6 unexercised) |
| budget.trailer | protocol | not_exercised (0 pass, 0 fail, 0 error, 3 unexercised) |
| budget.usage | protocol | not_exercised (0 pass, 0 fail, 0 error, 12 unexercised) |
| budget.usage-request | protocol | not_exercised (0 pass, 0 fail, 0 error, 3 unexercised) |
| budget.consumption | protocol | not_exercised (0 pass, 0 fail, 0 error, 5 unexercised) |
Assertion evidence
aauth-rust
federated-none/initial-status-0—fed.person-required: passfederated-none/initial-sfv-token-1—fed.person-required: passfederated-none/person-status-2—fed.person-token: passfederated-none/person-ps-jwt-3—fed.person-token: passfederated-none/challenge-status-4—fed.challenge: passfederated-none/challenge-sfv-token-5—fed.challenge: passfederated-none/challenge-fed-challenge-6—fed.challenge: passfederated-none/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-none/handoff-fed-forwarded-8—fed.forwarding: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-none/access-status-9—fed.auth-token: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-none/access-ps-jwt-10—fed.auth-token: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-none/token-status-11—fed.delivery: passfederated-none/token-ps-jwt-12—fed.delivery: passfederated-none/protected-status-13—fed.application: passfederated-none/protected-json-member-14—fed.application: passfederated-short-agent/initial-status-0—fed.person-required: passfederated-short-agent/initial-sfv-token-1—fed.person-required: passfederated-short-agent/person-status-2—fed.person-token: passfederated-short-agent/person-ps-jwt-3—fed.person-token: passfederated-short-agent/challenge-status-4—fed.challenge: passfederated-short-agent/challenge-sfv-token-5—fed.challenge: passfederated-short-agent/challenge-fed-challenge-6—fed.challenge: passfederated-short-agent/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-short-agent/handoff-fed-forwarded-8—fed.forwarding: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-short-agent/access-status-9—fed.auth-token: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-short-agent/access-ps-jwt-10—fed.auth-token: not_exercised: the Person Server's request to the Access Server is not observable remotelyfederated-short-agent/token-status-11—fed.delivery: passfederated-short-agent/token-ps-jwt-12—fed.delivery: passfederated-short-agent/protected-status-13—fed.application: passfederated-short-agent/protected-json-member-14—fed.application: passfederated-as-proof/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-proof/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-body/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/access-json-member-11—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/token-ps-no-token-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/token-status-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-aud/token-json-member-14—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/access-json-member-11—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/token-ps-no-token-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/token-status-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-jti/token-json-member-14—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/access-json-member-11—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/token-ps-no-token-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/token-status-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-ps/token-json-member-14—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/access-json-member-11—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/token-ps-no-token-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/token-status-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-resource-key/token-json-member-14—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/access-status-9—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/access-ps-no-token-10—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/access-json-member-11—fed.as-binding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/token-ps-no-token-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/token-status-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-presented-expired/token-json-member-14—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-signature/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-iss/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-aud/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-key/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-sub/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-scope/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-exp/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/access-status-9—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/access-ps-jwt-10—fed.auth-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/token-ps-no-token-11—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/token-status-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-grant-ps/token-json-member-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/initial-status-0—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/initial-sfv-token-1—fed.person-required: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/person-status-2—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/person-ps-jwt-3—fed.person-token: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/challenge-status-4—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/challenge-sfv-token-5—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/challenge-fed-challenge-6—fed.challenge: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/handoff-fed-ps-proof-7—fed.ps-proof: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/handoff-fed-forwarded-8—fed.forwarding: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/access-status-9—fed.application: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/access-ps-no-token-10—fed.application: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/access-json-member-11—fed.application: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/token-ps-no-token-12—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/token-status-13—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfederated-as-denial/token-json-member-14—fed.delivery: not_exercised: injects a fault between the Person Server and the Access Serverfixture-ps-none/initial-status-0—fed.person-required: passfixture-ps-none/initial-sfv-token-1—fed.person-required: passfixture-ps-none/challenge-status-4—fed.challenge: passfixture-ps-none/challenge-sfv-token-5—fed.challenge: passfixture-ps-none/challenge-fed-challenge-6—fed.challenge: passfixture-ps-none/access-status-9—fed.auth-token: passfixture-ps-none/access-ps-jwt-10—fed.auth-token: passfixture-ps-none/protected-status-13—fed.application: passfixture-ps-none/protected-json-member-14—fed.application: passfixture-ps-short-agent/initial-status-0—fed.person-required: passfixture-ps-short-agent/initial-sfv-token-1—fed.person-required: passfixture-ps-short-agent/challenge-status-4—fed.challenge: passfixture-ps-short-agent/challenge-sfv-token-5—fed.challenge: passfixture-ps-short-agent/challenge-fed-challenge-6—fed.challenge: passfixture-ps-short-agent/access-status-9—fed.auth-token: passfixture-ps-short-agent/access-ps-jwt-10—fed.auth-token: passfixture-ps-short-agent/protected-status-13—fed.application: passfixture-ps-short-agent/protected-json-member-14—fed.application: passfixture-ps-as-proof/initial-status-0—fed.person-required: passfixture-ps-as-proof/initial-sfv-token-1—fed.person-required: passfixture-ps-as-proof/challenge-status-4—fed.challenge: passfixture-ps-as-proof/challenge-sfv-token-5—fed.challenge: passfixture-ps-as-proof/challenge-fed-challenge-6—fed.challenge: passfixture-ps-as-proof/access-status-9—fed.as-binding: passfixture-ps-as-proof/access-ps-no-token-10—fed.as-binding: passfixture-ps-as-body/initial-status-0—fed.person-required: passfixture-ps-as-body/initial-sfv-token-1—fed.person-required: passfixture-ps-as-body/challenge-status-4—fed.challenge: passfixture-ps-as-body/challenge-sfv-token-5—fed.challenge: passfixture-ps-as-body/challenge-fed-challenge-6—fed.challenge: passfixture-ps-as-body/access-status-9—fed.as-binding: passfixture-ps-as-body/access-ps-no-token-10—fed.as-binding: passfixture-ps-as-resource-aud/initial-status-0—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/initial-sfv-token-1—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/challenge-status-4—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/challenge-sfv-token-5—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/challenge-fed-challenge-6—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/access-status-9—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/access-ps-no-token-10—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-aud/access-json-member-11—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/initial-status-0—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/initial-sfv-token-1—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/challenge-status-4—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/challenge-sfv-token-5—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/challenge-fed-challenge-6—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/access-status-9—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/access-ps-no-token-10—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-jti/access-json-member-11—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/initial-status-0—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/initial-sfv-token-1—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/challenge-status-4—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/challenge-sfv-token-5—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/challenge-fed-challenge-6—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/access-status-9—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/access-ps-no-token-10—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-ps/access-json-member-11—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/initial-status-0—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/initial-sfv-token-1—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/challenge-status-4—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/challenge-sfv-token-5—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/challenge-fed-challenge-6—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/access-status-9—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/access-ps-no-token-10—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-resource-key/access-json-member-11—fed.as-binding: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-presented-expired/initial-status-0—fed.person-required: passfixture-ps-as-presented-expired/initial-sfv-token-1—fed.person-required: passfixture-ps-as-presented-expired/challenge-status-4—fed.challenge: passfixture-ps-as-presented-expired/challenge-sfv-token-5—fed.challenge: passfixture-ps-as-presented-expired/challenge-fed-challenge-6—fed.challenge: passfixture-ps-as-presented-expired/access-status-9—fed.as-binding: passfixture-ps-as-presented-expired/access-ps-no-token-10—fed.as-binding: passfixture-ps-as-presented-expired/access-json-member-11—fed.as-binding: passfixture-ps-as-denial/initial-status-0—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/initial-sfv-token-1—fed.person-required: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/challenge-status-4—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/challenge-sfv-token-5—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/challenge-fed-challenge-6—fed.challenge: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/access-status-9—fed.application: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/access-ps-no-token-10—fed.application: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keyfixture-ps-as-denial/access-json-member-11—fed.application: not_exercised: re-signs the Resource's challenge, which needs the Resource's private keybudget-four-party-grant/challenge-status—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/challenge-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/access-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/token-status—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/token-jwt—fed.delivery: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/token-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/protected-status—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/protected-subject—fed.application: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/protected-cost—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-grant/protected-remaining—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-omission/challenge-status—budget.four-party-omission: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-omission/challenge-budget—budget.four-party-omission: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-omission/access-status—budget.four-party-omission: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-omission/access-budget—budget.four-party-omission: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-omission/protected-status—fed.application: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-four-party-omission/protected-subject—fed.application: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/challenge-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/access-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/protected-status—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/protected-cost—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/protected-remaining—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/step-up-status—budget.consumption: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/step-up-budget—budget.consumption: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/step-up-consumed—budget.consumption: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/step-up-remaining—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/other-status—budget.consumption: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-consumption/other-consumed—budget.consumption: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/access-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-status—budget.header: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-remaining—budget.header: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-hold—budget.header: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-no-cost—budget.header: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-trailer-cost—budget.trailer: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-trailer-no-remaining—budget.trailer: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/reserved-trailer-no-hold—budget.trailer: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/following-remaining—budget.header: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-header/following-hold—budget.header: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/protected-status—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/protected-cost—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/usage-status—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/usage-audience—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/usage-unit—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/usage-decimals—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/usage-all-time—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/unknown-status—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/unknown-omits-usage—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/unknown-unit—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/no-ps-status—budget.usage-request: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/no-ps-error—budget.usage-request: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/two-keys-status—budget.usage-request: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/jkts-status—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-usage/jkts-omitted—budget.usage: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/protected-status—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/protected-cost—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/protected-remaining—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/second-token-status—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/second-token-budget—budget.four-party-grant: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/second-protected-status—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/second-protected-cost—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/second-protected-remaining—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/refusal-status—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headersbudget-hard-cap/refusal-remaining—budget.hard-cap: not_exercised: uses the launcher's fixed budget paths and X-Fixture cost headers
events.agent-provider report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736315 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| events.ap.metadata | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.subscribe-token | protocol | pass (5 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.validation | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.typ | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.cnf-absent | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.same-key | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.body-s256 | protocol | pass (6 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.coverage | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.unknown-eid | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.resource-match | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.audience | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.max-uses | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.remaining-uses | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.accepted | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.expired-code | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.jwt-code | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.input-code | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.signature-code | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.unknown-key | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.control | adapter-contract | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.problem-type | protocol | pass (11 pass, 0 fail, 0 error, 0 unexercised) |
| events.ap.unchanged | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
events-ap-delivery-with-body/metadata-status—events.ap.metadata: passevents-ap-delivery-with-body/event-endpoint—events.ap.metadata: passevents-ap-delivery-with-body/subscribe-control—events.ap.control: passevents-ap-delivery-with-body/subscribe-token—events.ap.subscribe-token: passevents-ap-delivery-with-body/accepted—events.ap.accepted: passevents-ap-delivery-without-body/subscribe-token—events.ap.subscribe-token: passevents-ap-delivery-without-body/accepted—events.ap.accepted: passevents-ap-max-uses/subscribe-token—events.ap.subscribe-token: passevents-ap-max-uses/first-accepted—events.ap.accepted: passevents-ap-max-uses/first-remaining—events.ap.remaining-uses: passevents-ap-max-uses/second-accepted—events.ap.accepted: passevents-ap-max-uses/second-remaining—events.ap.remaining-uses: passevents-ap-max-uses/third-refused—events.ap.max-uses: passevents-ap-max-uses/pending-unchanged—events.ap.unchanged: passevents-ap-body-mismatch/status—events.ap.body-s256: passevents-ap-body-mismatch/error—events.ap.body-s256: passevents-ap-body-mismatch/problem-type—events.ap.problem-type: passevents-ap-body-mismatch/pending-unchanged—events.ap.unchanged: passevents-ap-body-without-digest/status—events.ap.body-s256: passevents-ap-body-without-digest/error—events.ap.body-s256: passevents-ap-body-without-digest/problem-type—events.ap.problem-type: passevents-ap-digest-without-body/status—events.ap.body-s256: passevents-ap-digest-without-body/error—events.ap.body-s256: passevents-ap-digest-without-body/problem-type—events.ap.problem-type: passevents-ap-cnf/status—events.ap.cnf-absent: passevents-ap-cnf/error—events.ap.validation: passevents-ap-expired/status—events.ap.validation: passevents-ap-expired/error—events.ap.expired-code: passevents-ap-expired/problem-type—events.ap.problem-type: passevents-ap-wrong-typ/status—events.ap.typ: passevents-ap-wrong-typ/error—events.ap.jwt-code: passevents-ap-wrong-typ/problem-type—events.ap.problem-type: passevents-ap-uncovered-content-digest/status—events.ap.coverage: passevents-ap-uncovered-content-digest/error—events.ap.input-code: passevents-ap-uncovered-content-digest/problem-type—events.ap.problem-type: passevents-ap-uncovered-content-type/status—events.ap.coverage: passevents-ap-uncovered-content-type/error—events.ap.input-code: passevents-ap-uncovered-content-type/problem-type—events.ap.problem-type: passevents-ap-proof-key/status—events.ap.same-key: passevents-ap-proof-key/error—events.ap.signature-code: passevents-ap-proof-key/problem-type—events.ap.problem-type: passevents-ap-unknown-kid/status—events.ap.validation: passevents-ap-unknown-kid/error—events.ap.unknown-key: passevents-ap-unknown-kid/problem-type—events.ap.problem-type: passevents-ap-unknown-eid/subscribe-token—events.ap.subscribe-token: passevents-ap-unknown-eid/not-found—events.ap.unknown-eid: passevents-ap-other-resource/subscribe-token—events.ap.subscribe-token: passevents-ap-other-resource/forbidden—events.ap.resource-match: passevents-ap-wrong-aud/status—events.ap.audience: passevents-ap-wrong-aud/error—events.ap.audience: passevents-ap-wrong-aud/problem-type—events.ap.problem-type: passevents-ap-bad-signature/status—events.ap.validation: passevents-ap-bad-signature/error—events.ap.jwt-code: passevents-ap-bad-signature/problem-type—events.ap.problem-type: pass
events.agent report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736314 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| events.agent.verification | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| events.agent.exp | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.agent.aud | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.agent.body | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| events.agent.accepts | adapter-contract | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
events-agent-valid-body/accepted—events.agent.accepts: passevents-agent-valid-no-body/accepted—events.agent.accepts: passevents-agent-aud-case/accepted—events.agent.aud: passevents-agent-aud-other/accepted—events.agent.aud: passevents-agent-expired/accepted—events.agent.exp: passevents-agent-body-mismatch/accepted—events.agent.body: passevents-agent-body-without-digest/accepted—events.agent.body: passevents-agent-digest-without-body/accepted—events.agent.body: passevents-agent-wrong-typ/accepted—events.agent.verification: passevents-agent-wrong-dwk/accepted—events.agent.verification: passevents-agent-bad-signature/accepted—events.agent.verification: pass
events.delivery report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736315 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| events.delivery.self-jwt | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.eid | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.cnf-absent | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.body-s256 | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.coverage | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.proof | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.registered | adapter-contract | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.delivery.fired | adapter-contract | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
events-delivery-native-resource/registered—events.delivery.registered: passevents-delivery-native-resource/fired-1—events.delivery.fired: passevents-delivery-native-resource/self-jwt-1—events.delivery.self-jwt: passevents-delivery-native-resource/eid-1—events.delivery.eid: passevents-delivery-native-resource/cnf-absent-1—events.delivery.cnf-absent: passevents-delivery-native-resource/body-s256-1—events.delivery.body-s256: passevents-delivery-native-resource/coverage-1—events.delivery.coverage: passevents-delivery-native-resource/proof-1—events.delivery.proof: passevents-delivery-native-resource/fired-2—events.delivery.fired: passevents-delivery-native-resource/self-jwt-2—events.delivery.self-jwt: passevents-delivery-native-resource/eid-2—events.delivery.eid: passevents-delivery-native-resource/cnf-absent-2—events.delivery.cnf-absent: passevents-delivery-native-resource/body-s256-2—events.delivery.body-s256: passevents-delivery-native-resource/coverage-2—events.delivery.coverage: passevents-delivery-native-resource/proof-2—events.delivery.proof: pass
events.subscription report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736315 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| events.sub.verification | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.aud | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.exp | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.typ-dwk | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.cnf | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.eid | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.expired-code | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.jwt-code | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.signature-code | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.ticket-bound | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.ticket-single-use | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.registered | adapter-contract | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.ticket-issued | adapter-contract | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| events.sub.problem-type | protocol | pass (5 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
events-sub-valid/registered—events.sub.registered: passevents-sub-expired/status—events.sub.exp: passevents-sub-expired/error—events.sub.expired-code: passevents-sub-expired/problem-type—events.sub.problem-type: passevents-sub-wrong-aud/status—events.sub.aud: passevents-sub-wrong-aud/error—events.sub.verification: passevents-sub-wrong-typ/status—events.sub.typ-dwk: passevents-sub-wrong-typ/error—events.sub.jwt-code: passevents-sub-wrong-typ/problem-type—events.sub.problem-type: passevents-sub-wrong-dwk/status—events.sub.typ-dwk: passevents-sub-wrong-dwk/error—events.sub.jwt-code: passevents-sub-wrong-dwk/problem-type—events.sub.problem-type: passevents-sub-empty-eid/status—events.sub.eid: passevents-sub-empty-eid/error—events.sub.verification: passevents-sub-cnf-mismatch/status—events.sub.cnf: passevents-sub-cnf-mismatch/error—events.sub.signature-code: passevents-sub-cnf-mismatch/problem-type—events.sub.problem-type: passevents-sub-bad-signature/status—events.sub.verification: passevents-sub-bad-signature/error—events.sub.jwt-code: passevents-sub-bad-signature/problem-type—events.sub.problem-type: passevents-sub-ticket-bound/ticket-issued—events.sub.ticket-issued: passevents-sub-ticket-bound/registered—events.sub.ticket-bound: passevents-sub-ticket-other-key/ticket-issued—events.sub.ticket-issued: passevents-sub-ticket-other-key/refused—events.sub.ticket-bound: passevents-sub-ticket-reused/ticket-issued—events.sub.ticket-issued: passevents-sub-ticket-reused/first-registered—events.sub.ticket-bound: passevents-sub-ticket-reused/refused—events.sub.ticket-single-use: pass
Person Server direct authorization report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736314 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| ps.person-endpoint | protocol | pass (9 pass, 0 fail, 0 error, 1 unexercised) |
| ps.person-structure | protocol | pass (18 pass, 0 fail, 0 error, 2 unexercised) |
| ps.person-lifetime | protocol | pass (9 pass, 0 fail, 0 error, 1 unexercised) |
| ps.person-no-authorization | protocol | pass (9 pass, 0 fail, 0 error, 1 unexercised) |
| ps.auth-endpoint | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| ps.resource-verification | protocol | pass (15 pass, 0 fail, 0 error, 0 unexercised) |
| ps.auth-structure | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| ps.auth-lifetime | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| ps.common-verification | protocol | pass (11 pass, 0 fail, 0 error, 1 unexercised) |
| ps.errors | protocol | pass (3 pass, 0 fail, 0 error, 3 unexercised) |
| ps.proof-verification | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| ps.body-integrity | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| ps.host-scope-policy | adapter-contract | pass (5 pass, 0 fail, 0 error, 0 unexercised) |
| ps.host-person-profile | adapter-contract | pass (9 pass, 0 fail, 0 error, 1 unexercised) |
Assertion evidence
aauth-rust
ps-valid/person-status—ps.person-endpoint: passps-valid/person-signature—ps.common-verification: passps-valid/person-identity—ps.person-structure: passps-valid/person-key—ps.person-structure: passps-valid/person-lifetime—ps.person-lifetime: passps-valid/person-authorization—ps.person-no-authorization: passps-valid/auth-status—ps.auth-endpoint: passps-valid/auth-signature—ps.common-verification: passps-valid/auth-identity—ps.auth-structure: passps-valid/auth-key—ps.auth-structure: passps-valid/auth-lifetime—ps.auth-lifetime: passps-valid/auth-authorization—ps.host-scope-policy: passps-valid/configured-person—ps.host-person-profile: passps-proof-tamper/refusal—ps.proof-verification: passps-proof-tamper/signature-error—ps.proof-verification: passps-body-tamper/refusal—ps.body-integrity: passps-wrong-audience/person-status—ps.person-endpoint: passps-wrong-audience/person-signature—ps.common-verification: passps-wrong-audience/person-identity—ps.person-structure: passps-wrong-audience/person-key—ps.person-structure: passps-wrong-audience/person-lifetime—ps.person-lifetime: passps-wrong-audience/person-authorization—ps.person-no-authorization: passps-wrong-audience/token-refusal—ps.resource-verification: passps-wrong-audience/token-error—ps.resource-verification: passps-wrong-audience/configured-person—ps.host-person-profile: passps-wrong-audience/no-issued-token—ps.resource-verification: passps-wrong-key/person-status—ps.person-endpoint: passps-wrong-key/person-signature—ps.common-verification: passps-wrong-key/person-identity—ps.person-structure: passps-wrong-key/person-key—ps.person-structure: passps-wrong-key/person-lifetime—ps.person-lifetime: passps-wrong-key/person-authorization—ps.person-no-authorization: passps-wrong-key/token-refusal—ps.resource-verification: passps-wrong-key/token-error—ps.resource-verification: passps-wrong-key/configured-person—ps.host-person-profile: passps-wrong-key/no-issued-token—ps.resource-verification: passps-wrong-person/person-status—ps.person-endpoint: passps-wrong-person/person-signature—ps.common-verification: passps-wrong-person/person-identity—ps.person-structure: passps-wrong-person/person-key—ps.person-structure: passps-wrong-person/person-lifetime—ps.person-lifetime: passps-wrong-person/person-authorization—ps.person-no-authorization: passps-wrong-person/token-refusal—ps.resource-verification: passps-wrong-person/token-error—ps.resource-verification: passps-wrong-person/configured-person—ps.host-person-profile: passps-wrong-person/no-issued-token—ps.resource-verification: passps-wrong-lineage/person-status—ps.person-endpoint: passps-wrong-lineage/person-signature—ps.common-verification: passps-wrong-lineage/person-identity—ps.person-structure: passps-wrong-lineage/person-key—ps.person-structure: passps-wrong-lineage/person-lifetime—ps.person-lifetime: passps-wrong-lineage/person-authorization—ps.person-no-authorization: passps-wrong-lineage/token-refusal—ps.resource-verification: passps-wrong-lineage/token-error—ps.resource-verification: passps-wrong-lineage/configured-person—ps.host-person-profile: passps-wrong-lineage/no-issued-token—ps.resource-verification: passps-wrong-ps/person-status—ps.person-endpoint: passps-wrong-ps/person-signature—ps.common-verification: passps-wrong-ps/person-identity—ps.person-structure: passps-wrong-ps/person-key—ps.person-structure: passps-wrong-ps/person-lifetime—ps.person-lifetime: passps-wrong-ps/person-authorization—ps.person-no-authorization: passps-wrong-ps/token-refusal—ps.resource-verification: passps-wrong-ps/token-error—ps.resource-verification: passps-wrong-ps/configured-person—ps.host-person-profile: passps-wrong-ps/no-issued-token—ps.resource-verification: passps-expired-resource/person-status—ps.person-endpoint: passps-expired-resource/person-signature—ps.common-verification: passps-expired-resource/person-identity—ps.person-structure: passps-expired-resource/person-key—ps.person-structure: passps-expired-resource/person-lifetime—ps.person-lifetime: passps-expired-resource/person-authorization—ps.person-no-authorization: passps-expired-resource/token-refusal—ps.errors: passps-expired-resource/token-error—ps.errors: passps-expired-resource/configured-person—ps.host-person-profile: passps-expired-resource/no-issued-token—ps.errors: passps-expired-presented/person-status—ps.person-endpoint: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/person-signature—ps.common-verification: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/person-identity—ps.person-structure: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/person-key—ps.person-structure: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/person-lifetime—ps.person-lifetime: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/person-authorization—ps.person-no-authorization: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/token-refusal—ps.errors: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/token-error—ps.errors: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/configured-person—ps.host-person-profile: not_exercised: re-signs the Person Server's own token, which needs its private keyps-expired-presented/no-issued-token—ps.errors: not_exercised: re-signs the Person Server's own token, which needs its private keyps-denied-scope/person-status—ps.person-endpoint: passps-denied-scope/person-signature—ps.common-verification: passps-denied-scope/person-identity—ps.person-structure: passps-denied-scope/person-key—ps.person-structure: passps-denied-scope/person-lifetime—ps.person-lifetime: passps-denied-scope/person-authorization—ps.person-no-authorization: passps-denied-scope/token-refusal—ps.host-scope-policy: passps-denied-scope/token-error—ps.host-scope-policy: passps-denied-scope/configured-person—ps.host-person-profile: passps-denied-scope/no-issued-token—ps.host-scope-policy: passps-short-parent/person-status—ps.person-endpoint: passps-short-parent/person-signature—ps.common-verification: passps-short-parent/person-identity—ps.person-structure: passps-short-parent/person-key—ps.person-structure: passps-short-parent/person-lifetime—ps.person-lifetime: passps-short-parent/person-authorization—ps.person-no-authorization: passps-short-parent/auth-status—ps.auth-endpoint: passps-short-parent/auth-signature—ps.common-verification: passps-short-parent/auth-identity—ps.auth-structure: passps-short-parent/auth-key—ps.auth-structure: passps-short-parent/auth-lifetime—ps.auth-lifetime: passps-short-parent/auth-authorization—ps.host-scope-policy: passps-short-parent/configured-person—ps.host-person-profile: pass
r3.issuer report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736316 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| r3.issuer.fetch | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| r3.issuer.fetch-signature | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| r3.issuer.hash-mismatch | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| r3.issuer.hash-verification | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| r3.issuer.auth-claims | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| r3.issuer.scope-and-r3 | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
r3-issuer-class/fetched—r3.issuer.fetch: passr3-issuer-class/fetch-proof—r3.issuer.fetch-signature: passr3-issuer-class/auth-token—r3.issuer.auth-claims: passr3-issuer-hash-mismatch/fetched—r3.issuer.fetch: passr3-issuer-hash-mismatch/refused—r3.issuer.hash-mismatch: passr3-issuer-hash-mismatch/no-auth-token—r3.issuer.hash-mismatch: passr3-issuer-document-missing/fetched—r3.issuer.fetch: passr3-issuer-document-missing/no-auth-token—r3.issuer.hash-verification: passr3-issuer-scope-and-r3/auth-token—r3.issuer.auth-claims: passr3-issuer-scope-and-r3/scope—r3.issuer.scope-and-r3: pass
r3.resource report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736316 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| r3.resource.metadata-vocabularies | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.token-claims | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.document-signature | protocol | pass (6 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.document-entitlement | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.content-addressing | protocol | pass (6 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.document-fields | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.composition | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.operation-validation | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.grant-enforcement | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.granted-served | adapter-contract | pass (5 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.document-signature-error | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.per-call-requirement | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.proposal-fields | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.per-call-parameters | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| r3.resource.per-call-single-use | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
r3-resource-class/vocabularies—r3.resource.metadata-vocabularies: passr3-resource-class/resource-token—r3.resource.token-claims: passr3-resource-class/as-fetch-status—r3.resource.content-addressing: passr3-resource-class/as-fetch-digest—r3.resource.content-addressing: passr3-resource-class/as-fetch-fields—r3.resource.document-fields: passr3-resource-class/as-fetch-covers—r3.resource.composition: passr3-resource-class/as-refetch-digest—r3.resource.content-addressing: passr3-resource-class/ps-fetch-digest—r3.resource.content-addressing: passr3-resource-class/granted-served—r3.resource.granted-served: passr3-resource-class/granted-operation—r3.resource.granted-served: passr3-resource-class/ungranted-refused—r3.resource.grant-enforcement: passr3-resource-unsigned-fetch/fetch-unsigned-refused—r3.resource.document-signature: passr3-resource-unsigned-fetch/fetch-unsigned-no-document—r3.resource.document-signature: passr3-resource-unsigned-fetch/fetch-unsigned-status—r3.resource.document-signature-error: passr3-resource-unsigned-fetch/fetch-unsigned-error—r3.resource.document-signature-error: passr3-resource-agent-fetch/fetch-agent-refused—r3.resource.document-signature: passr3-resource-agent-fetch/fetch-agent-no-document—r3.resource.document-signature: passr3-resource-other-signer/fetch-other-refused—r3.resource.document-entitlement: passr3-resource-other-signer/fetch-other-no-document—r3.resource.document-entitlement: passr3-resource-tampered-fetch/fetch-tampered-refused—r3.resource.document-signature: passr3-resource-tampered-fetch/fetch-tampered-no-document—r3.resource.document-signature: passr3-resource-tampered-fetch/fetch-tampered-status—r3.resource.document-signature-error: passr3-resource-tampered-fetch/fetch-tampered-error—r3.resource.document-signature-error: passr3-resource-unknown-operation/refused—r3.resource.operation-validation: passr3-resource-unknown-operation/no-resource-token—r3.resource.operation-validation: passr3-resource-unadvertised-vocabulary/refused—r3.resource.operation-validation: passr3-resource-unadvertised-vocabulary/no-resource-token—r3.resource.operation-validation: passr3-resource-three-party/resource-token—r3.resource.token-claims: passr3-resource-three-party/ps-fetch-digest—r3.resource.content-addressing: passr3-resource-three-party/ps-fetch-fields—r3.resource.document-fields: passr3-resource-three-party/fetch-access-refused—r3.resource.document-entitlement: passr3-resource-three-party/fetch-access-no-document—r3.resource.document-entitlement: passr3-resource-three-party/granted-served—r3.resource.granted-served: passr3-resource-per-call/challenge—r3.resource.per-call-requirement: passr3-resource-per-call/proposal-digest—r3.resource.content-addressing: passr3-resource-per-call/proposal-shape—r3.resource.proposal-fields: passr3-resource-per-call/completed—r3.resource.granted-served: passr3-resource-per-call/completed-operation—r3.resource.granted-served: passr3-resource-per-call/executed-once—r3.resource.per-call-single-use: passr3-resource-per-call-mismatch/challenge—r3.resource.per-call-requirement: passr3-resource-per-call-mismatch/refused—r3.resource.per-call-parameters: passr3-resource-per-call-mismatch/not-executed—r3.resource.per-call-parameters: pass
Resource agent-identity report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736313 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| core.agent-token-required | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| core.agent-identity | adapter-contract | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| core.verification | protocol | pass (5 pass, 0 fail, 0 error, 0 unexercised) |
| key.invalid-signature | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| key.expired-jwt | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| key.invalid-input | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| key.clock-skew | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| key.response-body | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| core.person-token-required | out-of-slice | not_claimed (0 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
unsigned/status—core.agent-token-required: passunsigned/requirement—core.agent-token-required: passvalid/status—core.agent-identity: passvalid/subject—core.agent-identity: passtampered/status—core.verification: passtampered/error—key.invalid-signature: passtampered/problem-type—key.response-body: passexpired/status—core.verification: passexpired/error—key.expired-jwt: passexpired/problem-type—key.response-body: passuncovered-signature-key/status—core.verification: passuncovered-signature-key/error—key.invalid-input: passuncovered-signature-key/problem-type—key.response-body: passuncovered-signature-key/required-coverage—core.verification: passfuture-created/status—core.verification: passfuture-created/error—key.clock-skew: passfuture-created/problem-type—key.response-body: passperson-required-agent-token/status—core.person-token-required: not_claimedperson-required-agent-token/requirement—core.person-token-required: not_claimedperson-required-agent-token/no-parameters—core.person-token-required: not_claimedperson-required-unsigned/status—core.person-token-required: not_claimedperson-required-unsigned/requirement—core.person-token-required: not_claimedperson-required-unsigned/no-parameters—core.person-token-required: not_claimedperson-required-person-token/status—core.person-token-required: not_claimedperson-required-person-token/subject—core.person-token-required: not_claimed
sigkey.verifier report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736316 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| sigkey.v.echo | adapter-contract | pass (10 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-ed25519 | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-es256 | recommended | not_claimed (0 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-es384 | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-rs256 | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-ps256 | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.ap-mixed-jwks | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.ap-pq-only | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.jwks-uri | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.signer-mixed-jwks | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.signer-pq-only | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.unknown-kid | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.jwks | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.self-jwt | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.jkt-jwt | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.uncovered-hwk | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.uncovered-jwks-uri | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.unknown-scheme | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.missing-member-jwt | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.missing-member-hwk | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-kid | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-eddsa | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.cnf-eddsa | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.jws-eddsa | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-kty-mismatch | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-crv-mismatch | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.cnf-kty-mismatch | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.hwk-symmetric | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.cnf-symmetric | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.jwt-es256 | recommended | not_claimed (0 pass, 0 fail, 0 error, 0 unexercised) |
| sigkey.v.jwt-exp | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
sigkey-hwk-ed25519/status—sigkey.v.hwk-ed25519: passsigkey-hwk-ed25519/verified-scheme—sigkey.v.echo: passsigkey-hwk-es256/status—sigkey.v.hwk-es256: not_claimedsigkey-hwk-es256/verified-scheme—sigkey.v.echo: not_claimedsigkey-hwk-es384/status—sigkey.v.hwk-es384: passsigkey-hwk-es384/verified-scheme—sigkey.v.echo: passsigkey-hwk-rs256/status—sigkey.v.hwk-rs256: passsigkey-hwk-rs256/verified-scheme—sigkey.v.echo: passsigkey-hwk-ps256/status—sigkey.v.hwk-ps256: passsigkey-hwk-ps256/verified-scheme—sigkey.v.echo: passsigkey-ap-mixed-jwks/status—sigkey.v.ap-mixed-jwks: passsigkey-ap-pq-only/outcome—sigkey.v.ap-pq-only: passsigkey-jwks-uri/status—sigkey.v.jwks-uri: passsigkey-jwks-uri/verified-scheme—sigkey.v.echo: passsigkey-jwks-uri-mixed/status—sigkey.v.signer-mixed-jwks: passsigkey-jwks-uri-mixed/verified-scheme—sigkey.v.echo: passsigkey-jwks-uri-pq-only/outcome—sigkey.v.signer-pq-only: passsigkey-jwks-uri-unknown-kid/status—sigkey.v.unknown-kid: passsigkey-jwks-uri-unknown-kid/error—sigkey.v.unknown-kid: passsigkey-jwks/status—sigkey.v.jwks: passsigkey-jwks/verified-scheme—sigkey.v.echo: passsigkey-self-jwt/status—sigkey.v.self-jwt: passsigkey-self-jwt/verified-scheme—sigkey.v.echo: passsigkey-jkt-jwt/status—sigkey.v.jkt-jwt: passsigkey-jkt-jwt/verified-scheme—sigkey.v.echo: passsigkey-uncovered-hwk/status—sigkey.v.uncovered-hwk: passsigkey-uncovered-hwk/error—sigkey.v.uncovered-hwk: passsigkey-uncovered-jwks-uri/status—sigkey.v.uncovered-jwks-uri: passsigkey-uncovered-jwks-uri/error—sigkey.v.uncovered-jwks-uri: passsigkey-unknown-scheme/status—sigkey.v.unknown-scheme: passsigkey-unknown-scheme/error—sigkey.v.unknown-scheme: passsigkey-missing-member-jwt/status—sigkey.v.missing-member-jwt: passsigkey-missing-member-jwt/error—sigkey.v.missing-member-jwt: passsigkey-missing-member-hwk/status—sigkey.v.missing-member-hwk: passsigkey-missing-member-hwk/error—sigkey.v.missing-member-hwk: passsigkey-hwk-kid/status—sigkey.v.hwk-kid: passsigkey-hwk-kid/error-present—sigkey.v.hwk-kid: passsigkey-hwk-eddsa/status—sigkey.v.hwk-eddsa: passsigkey-hwk-eddsa/error—sigkey.v.hwk-eddsa: passsigkey-cnf-eddsa/status—sigkey.v.cnf-eddsa: passsigkey-cnf-eddsa/error—sigkey.v.cnf-eddsa: passsigkey-jws-eddsa/status—sigkey.v.jws-eddsa: passsigkey-jws-eddsa/error-present—sigkey.v.jws-eddsa: passsigkey-hwk-kty-mismatch/status—sigkey.v.hwk-kty-mismatch: passsigkey-hwk-kty-mismatch/error—sigkey.v.hwk-kty-mismatch: passsigkey-hwk-crv-mismatch/status—sigkey.v.hwk-crv-mismatch: passsigkey-hwk-crv-mismatch/error—sigkey.v.hwk-crv-mismatch: passsigkey-cnf-kty-mismatch/status—sigkey.v.cnf-kty-mismatch: passsigkey-cnf-kty-mismatch/error-present—sigkey.v.cnf-kty-mismatch: passsigkey-hwk-symmetric/status—sigkey.v.hwk-symmetric: passsigkey-hwk-symmetric/error-present—sigkey.v.hwk-symmetric: passsigkey-cnf-symmetric/status—sigkey.v.cnf-symmetric: passsigkey-cnf-symmetric/error-present—sigkey.v.cnf-symmetric: passsigkey-jwt-no-exp/status—sigkey.v.jwt-exp: passsigkey-jwt-no-exp/error—sigkey.v.jwt-exp: passsigkey-jwt-es256/status—sigkey.v.jwt-es256: not_claimedsigkey-jwks-uri-named-document/status—sigkey.v.jwks-uri: passsigkey-jwks-uri-named-document/verified-scheme—sigkey.v.echo: pass
supervision.person-server report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736318 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| supervision.ps.core-keying | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.body-coverage | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.envelope | protocol | pass (11 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.sdi-unique | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.event-id | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.connect-action | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.act-members | protocol | pass (7 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.sdi-verify | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.signed-verify | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.allow-exp | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.decision-resolved | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.reason-optional | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.mission-action | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.proposal-description | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.approved-report | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.decision-applied | protocol | pass (12 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.unavailable | protocol | pass (8 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ps.deferred-poll | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
supervision.ps-allow/status—supervision.ps.decision-applied: passsupervision.ps-allow/credential—supervision.ps.decision-applied: passsupervision.ps-allow/exp—supervision.ps.allow-exp: passsupervision.ps-allow/connect-proof—supervision.ps.core-keying: passsupervision.ps-allow/connect-action—supervision.ps.connect-action: passsupervision.ps-allow/decision-proof—supervision.ps.body-coverage: passsupervision.ps-allow/sdi—supervision.ps.envelope: passsupervision.ps-allow/iat—supervision.ps.envelope: passsupervision.ps-allow/sub—supervision.ps.envelope: passsupervision.ps-allow/agent—supervision.ps.envelope: passsupervision.ps-allow/act—supervision.ps.act-members: passsupervision.ps-allow/resource—supervision.ps.act-members: passsupervision.ps-allow/agent-token—supervision.ps.act-members: passsupervision.ps-allow/distinct-sdi—supervision.ps.sdi-unique: passsupervision.ps-allow/again—supervision.ps.decision-applied: passsupervision.ps-allow/issued-proof—supervision.ps.core-keying: passsupervision.ps-allow/issued-id—supervision.ps.event-id: passsupervision.ps-auth-token/status—supervision.ps.decision-applied: passsupervision.ps-auth-token/credential—supervision.ps.decision-applied: passsupervision.ps-auth-token/act—supervision.ps.act-members: passsupervision.ps-auth-token/resource-token—supervision.ps.act-members: passsupervision.ps-auth-token/presented-token—supervision.ps.act-members: passsupervision.ps-auth-token/proof—supervision.ps.body-coverage: passsupervision.ps-auth-token/sdi—supervision.ps.envelope: passsupervision.ps-deny/refused—supervision.ps.decision-applied: passsupervision.ps-deny/no-credential—supervision.ps.decision-applied: passsupervision.ps-wrong-sdi/no-credential—supervision.ps.sdi-verify: passsupervision.ps-wrong-sdi/to-person—supervision.ps.unavailable: passsupervision.ps-wrong-sdi/consulted—supervision.ps.envelope: passsupervision.ps-bad-signature/no-credential—supervision.ps.signed-verify: passsupervision.ps-bad-signature/to-person—supervision.ps.unavailable: passsupervision.ps-bad-signature/consulted—supervision.ps.envelope: passsupervision.ps-foreign-signer/no-credential—supervision.ps.signed-verify: passsupervision.ps-foreign-signer/to-person—supervision.ps.unavailable: passsupervision.ps-foreign-signer/consulted—supervision.ps.envelope: passsupervision.ps-unsigned/no-credential—supervision.ps.signed-verify: passsupervision.ps-unsigned/to-person—supervision.ps.unavailable: passsupervision.ps-unsigned/consulted—supervision.ps.envelope: passsupervision.ps-ask/pending—supervision.ps.decision-applied: passsupervision.ps-ask/no-credential—supervision.ps.decision-applied: passsupervision.ps-ask/completed—supervision.ps.reason-optional: passsupervision.ps-ask/answer—supervision.ps.decision-resolved: passsupervision.ps-ask/resolved-id—supervision.ps.event-id: passsupervision.ps-ask/resolved-proof—supervision.ps.core-keying: passsupervision.ps-server-error/pending—supervision.ps.unavailable: passsupervision.ps-server-error/no-credential—supervision.ps.unavailable: passsupervision.ps-server-error/person-decided—supervision.ps.unavailable: passsupervision.ps-server-error/answer—supervision.ps.decision-resolved: passsupervision.ps-deferred/pending—supervision.ps.deferred-poll: passsupervision.ps-deferred/no-credential—supervision.ps.deferred-poll: passsupervision.ps-deferred/poll-proof—supervision.ps.deferred-poll: passsupervision.ps-deferred/applied—supervision.ps.decision-applied: passsupervision.ps-proposal/status—supervision.ps.decision-applied: passsupervision.ps-proposal/mission—supervision.ps.decision-applied: passsupervision.ps-proposal/proposal-proof—supervision.ps.body-coverage: passsupervision.ps-proposal/proposal-sdi—supervision.ps.envelope: passsupervision.ps-proposal/proposal-agent-token—supervision.ps.act-members: passsupervision.ps-proposal/approved-action—supervision.ps.mission-action: passsupervision.ps-proposal/approved-id—supervision.ps.event-id: passsupervision.ps-proposal/approved-mission—supervision.ps.approved-report: passsupervision.ps-proposal/approved-proof—supervision.ps.core-keying: passsupervision.ps-proposal-no-description/no-mission—supervision.ps.proposal-description: passsupervision.ps-proposal-no-description/to-person—supervision.ps.unavailable: passsupervision.ps-proposal-no-description/consulted—supervision.ps.envelope: pass
supervision.server report
Suite SHA-256: 33056ca8b0601972c16829eecf57e9d6eda7857fc80670a7a379c8f5f61f9da2
Verifier clock: 1793736320 Unix seconds
Execution: passed.
Pass means only the listed assertions passed, not the entire section. adapter-contract rows specify the test application's response. Remote mode reached the deployed servers over HTTPS; it does not grade TLS, enrollment or discovery security.
| Clause | Scope | aauth-rust (v0.1.0-alpha.28) |
|---|---|---|
| supervision.ss.metadata-issuer | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.metadata-endpoints | protocol | pass (1 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.core-verification | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.connected-only | protocol | pass (10 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.connect-action | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.envelope | protocol | pass (12 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.event-id | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.sdi-echo | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.deferred-pending | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.deferred-poller | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.idempotence | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.signed-coverage | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.mission-action | protocol | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.act-members | protocol | pass (10 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.decision-resolved-answer | protocol | pass (2 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.rate-limited | protocol | pass (3 pass, 0 fail, 0 error, 0 unexercised) |
| supervision.ss.host-policy | adapter-contract | pass (4 pass, 0 fail, 0 error, 0 unexercised) |
Assertion evidence
aauth-rust
supervision.ss-metadata/issuer—supervision.ss.metadata-issuer: passsupervision.ss-metadata/endpoints—supervision.ss.metadata-endpoints: passsupervision.ss-unsigned/status—supervision.ss.core-verification: passsupervision.ss-unsigned/signature-error—supervision.ss.core-verification: passsupervision.ss-unsigned/no-decision—supervision.ss.connected-only: passsupervision.ss-uncovered-body/status—supervision.ss.core-verification: passsupervision.ss-uncovered-body/invalid-input—supervision.ss.core-verification: passsupervision.ss-uncovered-body/no-decision—supervision.ss.connected-only: passsupervision.ss-unknown-sub/unknown-sub-status—supervision.ss.connected-only: passsupervision.ss-unknown-sub/unknown-sub-error—supervision.ss.connected-only: passsupervision.ss-unknown-sub/unknown-sub-no-decision—supervision.ss.connected-only: passsupervision.ss-refused-person-server/connect-status—supervision.ss.connected-only: passsupervision.ss-refused-person-server/connect-error—supervision.ss.connected-only: passsupervision.ss-refused-person-server/connect-no-decision—supervision.ss.connected-only: passsupervision.ss-refused-person-server/decide-refused—supervision.ss.connected-only: passsupervision.ss-refused-person-server/decide-no-decision—supervision.ss.connected-only: passsupervision.ss-connect-action/missing-status—supervision.ss.connect-action: passsupervision.ss-connect-action/missing-error—supervision.ss.connect-action: passsupervision.ss-connect-action/unrecognized-status—supervision.ss.connect-action: passsupervision.ss-connect-action/unrecognized-error—supervision.ss.connect-action: passsupervision.ss-envelope/no-sdi-status—supervision.ss.envelope: passsupervision.ss-envelope/no-sdi-error—supervision.ss.envelope: passsupervision.ss-envelope/no-sdi-no-decision—supervision.ss.envelope: passsupervision.ss-envelope/no-iat-status—supervision.ss.envelope: passsupervision.ss-envelope/no-iat-error—supervision.ss.envelope: passsupervision.ss-envelope/no-iat-no-decision—supervision.ss.envelope: passsupervision.ss-envelope/no-sub-status—supervision.ss.envelope: passsupervision.ss-envelope/no-sub-error—supervision.ss.envelope: passsupervision.ss-envelope/no-sub-no-decision—supervision.ss.envelope: passsupervision.ss-envelope/no-agent-status—supervision.ss.envelope: passsupervision.ss-envelope/no-agent-error—supervision.ss.envelope: passsupervision.ss-envelope/no-agent-no-decision—supervision.ss.envelope: passsupervision.ss-act-members/person-no-resource-status—supervision.ss.act-members: passsupervision.ss-act-members/person-no-resource-error—supervision.ss.act-members: passsupervision.ss-act-members/person-no-agent-token-status—supervision.ss.act-members: passsupervision.ss-act-members/person-no-agent-token-error—supervision.ss.act-members: passsupervision.ss-act-members/auth-no-resource-token-status—supervision.ss.act-members: passsupervision.ss-act-members/auth-no-resource-token-error—supervision.ss.act-members: passsupervision.ss-act-members/auth-no-presented-token-status—supervision.ss.act-members: passsupervision.ss-act-members/auth-no-presented-token-error—supervision.ss.act-members: passsupervision.ss-act-members/proposal-no-agent-token-status—supervision.ss.act-members: passsupervision.ss-act-members/proposal-no-agent-token-error—supervision.ss.act-members: passsupervision.ss-signed-allow/status—supervision.ss.host-policy: passsupervision.ss-signed-allow/allowed—supervision.ss.host-policy: passsupervision.ss-signed-allow/sdi—supervision.ss.sdi-echo: passsupervision.ss-signed-allow/signed—supervision.ss.signed-coverage: passsupervision.ss-idempotent/status—supervision.ss.host-policy: passsupervision.ss-idempotent/sdi—supervision.ss.sdi-echo: passsupervision.ss-idempotent/signed—supervision.ss.signed-coverage: passsupervision.ss-idempotent/same—supervision.ss.idempotence: passsupervision.ss-deferred/pending—supervision.ss.deferred-pending: passsupervision.ss-deferred/again-pending—supervision.ss.idempotence: passsupervision.ss-deferred/again-location—supervision.ss.idempotence: passsupervision.ss-deferred/other-status—supervision.ss.deferred-poller: passsupervision.ss-deferred/other-error—supervision.ss.deferred-poller: passsupervision.ss-deferred/other-no-decision—supervision.ss.deferred-poller: passsupervision.ss-deferred/early-pending—supervision.ss.deferred-pending: passsupervision.ss-deferred/decided—supervision.ss.host-policy: passsupervision.ss-deferred/sdi—supervision.ss.sdi-echo: passsupervision.ss-deferred/signed—supervision.ss.signed-coverage: passsupervision.ss-mission-action/missing-status—supervision.ss.mission-action: passsupervision.ss-mission-action/missing-error—supervision.ss.mission-action: passsupervision.ss-mission-action/unrecognized-status—supervision.ss.mission-action: passsupervision.ss-mission-action/unrecognized-error—supervision.ss.mission-action: passsupervision.ss-mission-action/report-no-id-status—supervision.ss.event-id: passsupervision.ss-mission-action/report-no-id-error—supervision.ss.event-id: passsupervision.ss-event-members/no-id-status—supervision.ss.event-id: passsupervision.ss-event-members/no-id-error—supervision.ss.event-id: passsupervision.ss-event-members/no-answer-status—supervision.ss.decision-resolved-answer: passsupervision.ss-event-members/no-answer-error—supervision.ss.decision-resolved-answer: passsupervision.ss-rate-limited/status—supervision.ss.rate-limited: passsupervision.ss-rate-limited/error—supervision.ss.rate-limited: passsupervision.ss-rate-limited/retry-after—supervision.ss.rate-limited: pass