Reliability update: SDK Reliability and scale now scores 9.5/10, with overall engineering score 9.2/10. Read the load, durability and WAL-recovery qualification. The testing assessment below remains historical evidence.

TRUSTWEAVE SDK · 10 SEPTEMBER 2026

Testing and documentation qualified

Full SDK validation, independent conformance, executable examples and retained evidence for an exact committed candidate.

9.0 → 9.5testing and documentation / 10
9.1 / 10overall engineering score
3,894hosted JUnit tests passed

What the score covers

9.5/10 is the engineering assessment of testing and documentation for the credential-free SDK candidate. It is not a code-coverage percentage. External services and HSMs retain explicit qualification gaps; the draft VI profile is a supported subset. No release publication or production deployment is claimed.

Candidate 32a73dfa6d8d6903555e5902d8a50f39485a6b2c on codex/testing-qualification-20260910. Successful hosted release-evidence run · Evidence summary and hashes · Scoring rationale

Implemented and verified

WorkstreamDelivered evidence
Full regression and coverageFull local SDK build, lint/ABI checks and fresh merged XML/HTML coverage; Docker-backed components run, including cloud-wallet, PostgreSQL and local Indy integration. Existing coverage floors remain enforced.
Independent conformance26 Python-issued cases, three Kotlin-issued reverse profiles and 65 reference evaluations; two explicit stricter merchant-policy differences. A separate 214-transition Python model agrees with real PostgreSQL reservation, replay, occurrence and settlement behavior.
Executable documentationNine source-copy contracts across seven distinct files, plus 24 executed entry points, including credential verification, merchant authentication, wallet configuration and an idempotent legacy-ledger migration. Documentation checks find no maintained-link, fence or source-copy errors.
Candidate identityHosted full build, merged coverage, reference suite, alert/notification exercises and artifact attestation pass for the displayed commit. The manifest rejects dirty or mismatched source, malformed test counters and unapproved skips. The downloaded VI JAR attestation was independently verified against the repository, signer workflow, branch and exact commit; verification record.

Verified examples · Conformance scope and reproduction · Acceptance gates

Validation results

EvidenceResult
Local SDK JUnit3,910 total; 15 explicit skips; zero failures/errors. The local tree is dirty and includes one existing scratch test excluded from the candidate. Thirty-four obsolete BBS cases were quarantined before this count; this is not labelled a release candidate.
Hosted SDK JUnit3,909 total; 15 permitted skips; zero failures/errors. Commit-bound manifest
Validation tools and reference55 validation-tool tests, 24 documentation entry points and 326 pinned Python-reference tests pass; reference tests qualify that peer, not the SDK.
Local discovery and required regressions3,831 compiled direct JUnit methods checked; zero invalid signatures. 47 required named tests verified, including every dynamic autonomous vector and the real overload test.
Conformance execution65 reference evaluations pass the declared expectations. The 214 ledger transitions are assertions within one model test, not 214 additional JUnit methods.

Local JUnit XML, merged coverage and build log · Named regressions · Compiled discovery · Documentation inventory · Conformance results

15 explicit optional-test skips and their limits

Each row is permitted by an exact reviewed policy; a new skipped test fails qualification. None of these rows counts as executed provider coverage.

TestReason
org.trustweave.anchor.cardano.CardanoBlockfrostIntegrationTest
anchor and read back round-trip on Preview()
Requires an authorized Blockfrost Preview project and funded test wallet.
org.trustweave.anchor.polygon.PolygonBlockchainAnchorClientTest
should throw NotFoundException for non-existent transaction()
Live Amoy RPC requires TRUSTWEAVE_TEST_USE_REAL_SERVICES; local transport tests are separate evidence.
org.trustweave.kms.cloudhsm.CloudHsmKeyManagementServiceIntegrationTest
requireClusterActive does not throw()
Requires an authorized AWS CloudHSM cluster, HSM identity and native library; no hardware custody qualification claimed.
org.trustweave.kms.cloudhsm.CloudHsmKeyManagementServiceIntegrationTest
cluster is ACTIVE()
Requires an authorized AWS CloudHSM cluster, HSM identity and native library; no hardware custody qualification claimed.
org.trustweave.kms.cloudhsm.CloudHsmKeyManagementServiceIntegrationTest
generateKey sign and deleteKey round-trip on the HSM()
Requires an authorized AWS CloudHSM cluster, HSM identity and native library; no hardware custody qualification claimed.
org.trustweave.googlekms.GoogleKmsProviderTest
test create with valid options()
Requires Google Cloud credentials; constructor checks are not live KMS qualification.
org.trustweave.kms.pkcs11.Pkcs11KeyManagementServiceIntegrationTest
generateKey(P256) returns a handle and getPublicKey round-trips it()
Requires a configured PKCS11 or SoftHSM2 token and native library; no native token qualification claimed.
org.trustweave.kms.pkcs11.Pkcs11KeyManagementServiceIntegrationTest
sign(P256) produces a signature that verifies with JCA SHA256withECDSA()
Requires a configured PKCS11 or SoftHSM2 token and native library; no native token qualification claimed.
org.trustweave.kms.pkcs11.Pkcs11KeyManagementServiceIntegrationTest
generateKey(Secp256k1) is rejected with UnsupportedAlgorithm (MVP contract)()
Requires a configured PKCS11 or SoftHSM2 token and native library; no native token qualification claimed.
org.trustweave.kms.pkcs11.Pkcs11KeyManagementServiceIntegrationTest
generateKey(Ed25519) succeeds on SoftHSM2 (requires v2_6+)()
Requires a configured PKCS11 or SoftHSM2 token and native library; no native token qualification claimed.
org.trustweave.kms.pkcs11.Pkcs11KeyManagementServiceIntegrationTest
deleteKey removes the key so subsequent getPublicKey returns KeyNotFound()
Requires a configured PKCS11 or SoftHSM2 token and native library; no native token qualification claimed.
org.trustweave.testkit.annotations.RequiresPluginExampleTest
example test requiring multiple plugins()
Conditional external-plugin example; intentionally unavailable without example provider credentials.
org.trustweave.testkit.annotations.RequiresPluginExampleTest
example test requiring Google Cloud KMS()
Conditional external-plugin example; intentionally unavailable without example provider credentials.
org.trustweave.testkit.annotations.RequiresPluginExampleTest
example test requiring AWS KMS()
Conditional external-plugin example; intentionally unavailable without example provider credentials.
org.trustweave.integration.InMemoryTrustWeaveIntegrationTest
test with external services template()
External-services template requires AWS KMS and Ethereum DID configuration; not executed integration coverage.

Measured merged coverage

Values show measured coverage / enforced floor. No exclusions or floor reductions were introduced to pass this qualification.

ScopeLineBranch
*57.30% / 56%39.83% / 38%
org/trustweave/revocation/database74.15% / 59%53.10% / 44%
org/trustweave/credential/anchor77.87% / 75%37.07% / 33%
org/trustweave/credential/vi/verification91.57% / 83%68.68% / 58%
org/trustweave/anchor/indy82.87% / 82%61.13% / 60%

Exact counters. Shared-host coverage has its own stricter CI policy.

Defects found while qualifying

Remaining work for 10/10

  1. Qualify external custody, PKCS11 and live provider combinations in authorized environments, including failure and recovery behavior.
  2. Complete the requirement-to-vector matrix for every supported VI constraint and malformed encoding; add an independent merchant peer with the same authenticated trust profile and external/concurrent ledger traces.
  3. Review or convert the wider Kotlin snippet inventory beyond the nine protected complete examples. Validate deployment-specific configuration, migrations and external documentation links in their actual environments.
  4. Qualify published artifacts and deployed operating procedures, including production load, recovery objectives and on-call delivery. The hosted candidate run is not that evidence.

Existing multi-pair and mixed-recurrence combinations remain rejected. Sequential model agreement does not certify concurrent external settlement or uncertain-commit recovery.

Scorecard

CategoryPreviousNow
Security and access control9.09.0
Observability and diagnosability9.69.6
Reliability and scale9.09.0
Configuration and data9.09.0
Deployment and release8.58.5
Testing and documentation9.09.5

54.6 / 6 = 9.1, rounded half-up to 9.1. Only testing/documentation is reassessed; other category scores carry forward. Previous assessment.