5 September 2026 ? Documentation follow-up ? Local working tree
Runnable scenarios with checked source and READMEs
The nine scenario placeholders have been replaced with small working programs. Every runnable entry point now has a README, is registered with Gradle and is included in the aggregate execution check. The examples-module lint debt is resolved.
Start with the scenario folder
Open the scenario examples or browse the complete examples catalog.
Each new scenario directory contains its Kotlin program and a README explaining its purpose, run command, expected result and limits. Gradle compiles these sources directly; the READMEs link to source rather than duplicate it.
| Scenario | Signed claim demonstrated |
|---|---|
| Proof of location | Observer's location attestation |
| Digital workflow | Approval of a specific workflow revision |
| News provenance | Article revision and author attribution |
| Data catalog | Dataset identifier, version and license metadata |
| Healthcare | Synthetic clinic encounter record |
| Government identity | Fictional municipal residence claim |
| Supply chain | Shipment batch and destination |
| Financial services | Synthetic identity-review outcome |
| IoT device | Device registration and firmware revision |
All nine assert successful issuance, exact JSON round-trip, signature verification and rejection of an altered claim. The vocabulary is defined explicitly and resolved locally. No hosted accounts or secrets are needed.
Remaining example gaps addressed
- Credential lifecycle: replaced the unfinished comprehensive demo with issuance, wallet storage/retrieval, verification, revocation and rejection checks.
- Delegation: now verifies a multi-hop chain and rejects an undelegated employee.
- Professional identity: performs real schema validation instead of printing a skipped step.
- Execution coverage: registered the previously unregistered academic DSL and web-of-trust programs. All 24 entry points are part of one Gradle aggregate.
- Lint: formatted the examples and tests, replaced wildcard imports, removed unused imports and the academic sample's impossible KMS cast.
- Test descriptions: replaced the old placeholder-test base with a local scenario execution test and timeout. The small examples carry positive and tampering assertions in their runner.
SDK bugs found by executing the examples
| Bug | Fix and coverage |
|---|---|
| Issuance could create revocable credentials, but the configured manager was not passed to verification. | The factory now passes the same revocation manager into both built-in credential-service construction paths. Regression tests verify a credential before revocation and reject it afterward. |
| Default schema registration and validation created separate registries, losing registered schemas. | One registry is shared by the built facade and credential service. Direct-config facades retain a stable fallback registry. Tests register a schema, validate good claims, reject malformed claims and verify through the facade. |
The two new tests cover default KMS signing and an explicit signer. Caller-injected credential services remain caller-configured; the factory does not replace them.
Validation
| Check | Result |
|---|---|
| All Kotlin example sources and test sources | Compiled |
| Aggregate example execution | 24 programs passed |
| Examples-module tests | 28 tests passed |
| Targeted SDK tests | 21 passed: 2 configuration regressions, 10 revocation DSL and 9 schema DSL tests |
| Examples-module ktlint | Passed for source, tests and Gradle script |
| Documentation checker | 350 Markdown files; 24 documented/registered entry points; 3 exact source-backed quick-start blocks; zero reported errors |
| Checker regression tests | 8 passed, including missing README and unregistered entry-point cases |
| Other documentation checks | Generated capability docs, legacy snippet rules and diff whitespace checks passed |
Machine-readable inventory. Local execution evidence: scenarios-final.log; final test-wrapper/lint check: scenarios-tests-final.log. The SDK/SaaS local source fingerprint was refreshed for these reviewed changes; no commit or deployment was performed.
./gradlew :distribution:examples:checkDocumentationExamples :distribution:examples:test :distribution:examples:ktlintCheck
python scripts/check-documentation.py
python -m unittest discover -s scripts -p test_check_documentation.py
Use .\gradlew.bat on Windows and JDK 21.
What this validation does not claim
The 2,390 inventoried Kotlin blocks include narrative fragments and historical designs. They have not all been independently compiled; use the source-linked example catalog for runnable programs. Larger examples have varying assertion coverage.
The examples demonstrate local SDK behavior with synthetic data. They do not establish institutional authority, truth of claims, external standard conformance, hosted-provider maturity, physical wallet custody or production recovery. External URL availability and Markdown anchor targets are outside the current checker.
No new production-readiness score is assigned by this documentation follow-up.
Initial documentation review (historical snapshot) ? Previous repository code review