Merge branch 'main' into update/main/dal
Home /
Input Output /
atala-prism-building-blocks
Mar 04, 5-6 AM (1)
Mar 04, 6-7 AM (0)
Mar 04, 7-8 AM (0)
Mar 04, 8-9 AM (0)
Mar 04, 9-10 AM (0)
Mar 04, 10-11 AM (1)
Mar 04, 11-12 PM (3)
Mar 04, 12-1 PM (1)
Mar 04, 1-2 PM (2)
Mar 04, 2-3 PM (4)
Mar 04, 3-4 PM (1)
Mar 04, 4-5 PM (0)
Mar 04, 5-6 PM (5)
Mar 04, 6-7 PM (0)
Mar 04, 7-8 PM (0)
Mar 04, 8-9 PM (0)
Mar 04, 9-10 PM (0)
Mar 04, 10-11 PM (0)
Mar 04, 11-12 AM (0)
Mar 05, 12-1 AM (0)
Mar 05, 1-2 AM (0)
Mar 05, 2-3 AM (0)
Mar 05, 3-4 AM (0)
Mar 05, 4-5 AM (0)
Mar 05, 5-6 AM (0)
Mar 05, 6-7 AM (0)
Mar 05, 7-8 AM (0)
Mar 05, 8-9 AM (0)
Mar 05, 9-10 AM (2)
Mar 05, 10-11 AM (0)
Mar 05, 11-12 PM (2)
Mar 05, 12-1 PM (0)
Mar 05, 1-2 PM (0)
Mar 05, 2-3 PM (0)
Mar 05, 3-4 PM (0)
Mar 05, 4-5 PM (0)
Mar 05, 5-6 PM (0)
Mar 05, 6-7 PM (0)
Mar 05, 7-8 PM (0)
Mar 05, 8-9 PM (0)
Mar 05, 9-10 PM (0)
Mar 05, 10-11 PM (0)
Mar 05, 11-12 AM (0)
Mar 06, 12-1 AM (0)
Mar 06, 1-2 AM (0)
Mar 06, 2-3 AM (0)
Mar 06, 3-4 AM (0)
Mar 06, 4-5 AM (0)
Mar 06, 5-6 AM (0)
Mar 06, 6-7 AM (0)
Mar 06, 7-8 AM (0)
Mar 06, 8-9 AM (0)
Mar 06, 9-10 AM (0)
Mar 06, 10-11 AM (0)
Mar 06, 11-12 PM (0)
Mar 06, 12-1 PM (2)
Mar 06, 1-2 PM (0)
Mar 06, 2-3 PM (0)
Mar 06, 3-4 PM (0)
Mar 06, 4-5 PM (0)
Mar 06, 5-6 PM (0)
Mar 06, 6-7 PM (0)
Mar 06, 7-8 PM (0)
Mar 06, 8-9 PM (0)
Mar 06, 9-10 PM (0)
Mar 06, 10-11 PM (0)
Mar 06, 11-12 AM (0)
Mar 07, 12-1 AM (0)
Mar 07, 1-2 AM (0)
Mar 07, 2-3 AM (0)
Mar 07, 3-4 AM (0)
Mar 07, 4-5 AM (0)
Mar 07, 5-6 AM (0)
Mar 07, 6-7 AM (0)
Mar 07, 7-8 AM (0)
Mar 07, 8-9 AM (0)
Mar 07, 9-10 AM (0)
Mar 07, 10-11 AM (0)
Mar 07, 11-12 PM (2)
Mar 07, 12-1 PM (0)
Mar 07, 1-2 PM (0)
Mar 07, 2-3 PM (0)
Mar 07, 3-4 PM (0)
Mar 07, 4-5 PM (1)
Mar 07, 5-6 PM (0)
Mar 07, 6-7 PM (0)
Mar 07, 7-8 PM (0)
Mar 07, 8-9 PM (0)
Mar 07, 9-10 PM (0)
Mar 07, 10-11 PM (0)
Mar 07, 11-12 AM (0)
Mar 08, 12-1 AM (0)
Mar 08, 1-2 AM (0)
Mar 08, 2-3 AM (0)
Mar 08, 3-4 AM (0)
Mar 08, 4-5 AM (0)
Mar 08, 5-6 AM (0)
Mar 08, 6-7 AM (0)
Mar 08, 7-8 AM (0)
Mar 08, 8-9 AM (0)
Mar 08, 9-10 AM (0)
Mar 08, 10-11 AM (0)
Mar 08, 11-12 PM (0)
Mar 08, 12-1 PM (0)
Mar 08, 1-2 PM (0)
Mar 08, 2-3 PM (0)
Mar 08, 3-4 PM (0)
Mar 08, 4-5 PM (0)
Mar 08, 5-6 PM (0)
Mar 08, 6-7 PM (0)
Mar 08, 7-8 PM (0)
Mar 08, 8-9 PM (0)
Mar 08, 9-10 PM (0)
Mar 08, 10-11 PM (0)
Mar 08, 11-12 AM (0)
Mar 09, 12-1 AM (0)
Mar 09, 1-2 AM (0)
Mar 09, 2-3 AM (0)
Mar 09, 3-4 AM (0)
Mar 09, 4-5 AM (0)
Mar 09, 5-6 AM (0)
Mar 09, 6-7 AM (0)
Mar 09, 7-8 AM (0)
Mar 09, 8-9 AM (1)
Mar 09, 9-10 AM (0)
Mar 09, 10-11 AM (0)
Mar 09, 11-12 PM (0)
Mar 09, 12-1 PM (1)
Mar 09, 1-2 PM (0)
Mar 09, 2-3 PM (0)
Mar 09, 3-4 PM (0)
Mar 09, 4-5 PM (0)
Mar 09, 5-6 PM (0)
Mar 09, 6-7 PM (0)
Mar 09, 7-8 PM (0)
Mar 09, 8-9 PM (0)
Mar 09, 9-10 PM (0)
Mar 09, 10-11 PM (0)
Mar 09, 11-12 AM (0)
Mar 10, 12-1 AM (0)
Mar 10, 1-2 AM (0)
Mar 10, 2-3 AM (0)
Mar 10, 3-4 AM (0)
Mar 10, 4-5 AM (0)
Mar 10, 5-6 AM (0)
Mar 10, 6-7 AM (0)
Mar 10, 7-8 AM (0)
Mar 10, 8-9 AM (1)
Mar 10, 9-10 AM (0)
Mar 10, 10-11 AM (0)
Mar 10, 11-12 PM (0)
Mar 10, 12-1 PM (0)
Mar 10, 1-2 PM (0)
Mar 10, 2-3 PM (0)
Mar 10, 3-4 PM (0)
Mar 10, 4-5 PM (0)
Mar 10, 5-6 PM (0)
Mar 10, 6-7 PM (0)
Mar 10, 7-8 PM (0)
Mar 10, 8-9 PM (0)
Mar 10, 9-10 PM (0)
Mar 10, 10-11 PM (0)
Mar 10, 11-12 AM (0)
Mar 11, 12-1 AM (0)
Mar 11, 1-2 AM (0)
Mar 11, 2-3 AM (0)
Mar 11, 3-4 AM (0)
Mar 11, 4-5 AM (0)
Mar 11, 5-6 AM (0)
30 commits this week
Mar 04, 2026
-
Mar 11, 2026
chore(deps): bump the actions-deps group with 12 updates
Bumps the actions-deps group with 12 updates: | Package | From | To | | --- | --- | --- | | [step-security/harden-runner](https://github.com/step-security/harden-runner) | `2.15.0` | `2.15.1` | | [sbt/setup-sbt](https://github.com/sbt/setup-sbt) | `1.1.18` | `1.1.19` | | [actions/setup-node](https://github.com/actions/setup-node) | `6.2.0` | `6.3.0` | | [docker/login-action](https://github.com/docker/login-action) | `3.7.0` | `4.0.0` | | [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) | `3.7.0` | `4.0.0` | | [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) | `3.12.0` | `4.0.0` | | [docker/metadata-action](https://github.com/docker/metadata-action) | `5.10.0` | `6.0.0` | | [docker/build-push-action](https://github.com/docker/build-push-action) | `6.19.2` | `7.0.0` | | [actions/dependency-review-action](https://github.com/actions/dependency-review-action) | `4.8.3` | `4.9.0` | | [oasdiff/oasdiff-action](https://github.com/oasdiff/oasdiff-action) | `0.0.21` | `0.0.30` | | [scala-steward-org/scala-steward-action](https://github.com/scala-steward-org/scala-steward-action) | `2.84.0` | `2.86.0` | | [github/codeql-action](https://github.com/github/codeql-action) | `4.32.5` | `4.32.6` | Updates `step-security/harden-runner` from 2.15.0 to 2.15.1 - [Release notes](https://github.com/step-security/harden-runner/releases) - [Commits](https://github.com/step-security/harden-runner/compare/a90bcbc6539c36a85cdfeb73f7e2f433735f215b...58077d3c7e43986b6b15fba718e8ea69e387dfcc) Updates `sbt/setup-sbt` from 1.1.18 to 1.1.19 - [Release notes](https://github.com/sbt/setup-sbt/releases) - [Commits](https://github.com/sbt/setup-sbt/compare/1cad58d595b729a71ca2254cdf5b43dd6f42d4bb...6bec67c98f542b9e17369bfca0ec822ac1363194) Updates `actions/setup-node` from 6.2.0 to 6.3.0 - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v6.2.0...v6.3.0) Updates `docker/login-action` from 3.7.0 to 4.0.0 - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/c94ce9fb468520275223c153574b00df6fe4bcc9...b45d80f862d83dbcd57f89517bcf500b2ab88fb2) Updates `docker/setup-qemu-action` from 3.7.0 to 4.0.0 - [Release notes](https://github.com/docker/setup-qemu-action/releases) - [Commits](https://github.com/docker/setup-qemu-action/compare/c7c53464625b32c7a7e944ae62b3e17d2b600130...ce360397dd3f832beb865e1373c09c0e9f86d70a) Updates `docker/setup-buildx-action` from 3.12.0 to 4.0.0 - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/8d2750c68a42422c14e847fe6c8ac0403b4cbd6f...4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd) Updates `docker/metadata-action` from 5.10.0 to 6.0.0 - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/c299e40c65443455700f0fdfc63efafe5b349051...030e881283bb7a6894de51c315a6bfe6a94e05cf) Updates `docker/build-push-action` from 6.19.2 to 7.0.0 - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/10e90e3645eae34f1e60eeb005ba3a3d33f178e8...d08e5c354a6adb9ed34480a06d141179aa583294) Updates `actions/dependency-review-action` from 4.8.3 to 4.9.0 - [Release notes](https://github.com/actions/dependency-review-action/releases) - [Commits](https://github.com/actions/dependency-review-action/compare/05fe4576374b728f0c523d6a13d64c25081e0803...2031cfc080254a8a887f58cffee85186f0e49e48) Updates `oasdiff/oasdiff-action` from 0.0.21 to 0.0.30 - [Release notes](https://github.com/oasdiff/oasdiff-action/releases) - [Commits](https://github.com/oasdiff/oasdiff-action/compare/1c611ffb1253a72924624aa4fb662e302b3565d3...65fef71494258f00f911d7a71edb0482c5378899) Updates `scala-steward-org/scala-steward-action` from 2.84.0 to 2.86.0 - [Release notes](https://github.com/scala-steward-org/scala-steward-action/releases) - [Commits](https://github.com/scala-steward-org/scala-steward-action/compare/df2a4cec1721d0b48be3e1d1f0acdf7543ea0fb4...026472ebc0e1f80577b240b249e3dc1494e7041b) Updates `github/codeql-action` from 4.32.5 to 4.32.6 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/c793b717bc78562f491db7b0e93a3a178b099162...0d579ffd059c29b07949a3cce3983f0780820c98) --- updated-dependencies: - dependency-name: step-security/harden-runner dependency-version: 2.15.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions-deps - dependency-name: sbt/setup-sbt dependency-version: 1.1.19 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions-deps - dependency-name: actions/setup-node dependency-version: 6.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions-deps - dependency-name: docker/login-action dependency-version: 4.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions-deps - dependency-name: docker/setup-qemu-action dependency-version: 4.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions-deps - dependency-name: docker/setup-buildx-action dependency-version: 4.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions-deps - dependency-name: docker/metadata-action dependency-version: 6.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions-deps - dependency-name: docker/build-push-action dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions-deps - dependency-name: actions/dependency-review-action dependency-version: 4.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions-deps - dependency-name: oasdiff/oasdiff-action dependency-version: 0.0.30 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions-deps - dependency-name: scala-steward-org/scala-steward-action dependency-version: 2.86.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions-deps - dependency-name: github/codeql-action dependency-version: 4.32.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions-deps ... Signed-off-by: dependabot[bot] <[email protected]>
fix(neoprism): handle 410 GONE for deactivated DID resolution
NeoPrism returns HTTP 410 GONE when resolving a deactivated DID. The NeoPrismClient only handled 200 OK and 404 Not Found, causing the deactivation e2e test to timeout because the metadata with deactivated=true was never extracted from the 410 response. Also removes the @deactivate test exclusion from neoprism CI now that deactivation works correctly. Signed-off-by: Yurii Shynbuiev <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]>
fix(ci): fix integration test CI for neoprism and prism-node
- Update NEOPRISM_VERSION from 0.9.1 to 0.13.0 in infrastructure/local/.env (CI reads this to set the neoprism docker image version) - Replace @vdr_prism_node with @vdr_ledger in integration-tests workflow (feature file was renamed but CI was not updated) - Add missing VDR env vars (VDR_LEDGER_DRIVER, VDR_PRISM_NODE_DRIVER_ENABLED, VDR_MEMORY_DRIVER_ENABLED, VDR_DATABASE_DRIVER_ENABLED) for prism-node job - Increase DID deactivation polling timeout from 30s to 5min (neoprism ledger confirmation exceeds the default timeout in CI) Signed-off-by: Yurii Shynbuiev <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]>
fix(ci): increase deactivate DID polling timeout to 2 minutes
The default 30s PollingWait timeout is too short for DID deactivation on neoprism in CI, causing consistent test timeouts. Increase to 2min with 500ms poll interval, matching the pattern used in other long- running test steps (e.g. RevokeCredentialSteps). Signed-off-by: Yurii Shynbuiev <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]>
Revert "fix(ci): exclude @deactivate test from neoprism CI run"
This reverts commit a80fca43fc26153dca910bc1e67f2f54a3fa9b32.
fix(ci): add missing VDR env vars for prism-node integration tests
The @vdr_ledger test requires VDR_LEDGER_DRIVER=prism-node and VDR_PRISM_NODE_DRIVER_ENABLED=true to select the correct driver. Signed-off-by: Yurii Shynbuiev <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat(vdr): add NeoPrism REST API as VDR backend (#1728)
Signed-off-by: Yurii Shynbuiev <[email protected]> Co-authored-by: Claude Opus 4.6 <[email protected]>
feat: set Service = CredentialBuilder on builder module declarations
Co-Authored-By: Claude Opus 4.6 <[email protected]> Signed-off-by: Yurii Shynbuiev <[email protected]>
docs: update VDR tutorial with driver selection guide
Add driver comparison table, mermaid architecture diagram, and updated prerequisites listing all 5 VDR drivers (memory, database, neoprism, prism-node, PRISM blockfrost) with their enable flags and use cases. Signed-off-by: Yurii Shynbuiev <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]>
docs: add design for wiring credential builders via ModuleRegistry layers
Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat!: decouple job modules from format-specific credential dependencies
Move JWT and SD-JWT verification logic behind PresentationService, SDJwtService, and VcJwtService abstractions so that apiServerJobsIssue and apiServerJobsPresent no longer depend on credentialsVcJWT, credentialsSDJWT, or credentialsAnoncreds modules directly. BREAKING CHANGE: PresentationService, VcJwtService, and SDJwtService traits have new methods that implementations must provide. Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add AnonCreds CredentialBuilder with module declaration
Extract AnonCredsCredentialBuilder that delegates to AnoncredService for credential issuance. Uses CredentialContext.Resolver to bridge pre-negotiated state (cred def, offer, request) from the protocol layer. Add zio-test dependencies to credentialsAnoncreds project. Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add SD-JWT CredentialBuilder with module declaration
Extract SdJwtCredentialBuilder that delegates to SDJwtService for credential issuance. Includes IssuerKeyResolver trait to bridge generic KeyRef to Ed25519PrivateKey. Registered as SdJwtBuilderModule in AllModules. Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add OID4VP presentation protocol adapter (Task 3.4)
Bridges PresentationProtocol contract to OID4VP redirect-based flow. Registered in AllModules for startup validation. Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add OID4VCI issuance protocol adapter (Task 3.3)
Bridges IssuanceProtocol contract to OID4VCI redirect-based flow. Most methods are unsupported (OID4VCI uses HTTP, not messages), but the adapter formalizes OID4VCI as a first-class protocol. Co-Authored-By: Claude Opus 4.6 <[email protected]>
refactor: deduplicate submitSignedOperation and add isLedgerBacked to VdrDriver
- Simplify submitSignedOperation to delegate to submitVdrOperation, eliminating ~30 lines of duplicated HTTP call logic. - Add isLedgerBacked property to VdrDriver enum, replacing repeated `driver == PRISM_NODE || driver == NEOPRISM` checks across test steps. Co-Authored-By: Claude Opus 4.6 <[email protected]> Signed-off-by: Yurii Shynbuiev <[email protected]>
fix: resolve neoPrismConfigLayer forward reference and add webhooks to vdr_neoprism config
- Change neoPrismConfigLayer from val to lazy val in Modules.scala to fix NullPointerException caused by forward reference in object initialization - Add webhook URLs for Issuer/Holder/Verifier roles in vdr_neoprism.conf to support ListenToEvents ability required by DID publishing tests - Fix duplicate version line in agents config Signed-off-by: Yurii Shynbuiev <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]> Signed-off-by: Yurii Shynbuiev <[email protected]>
chore: add architecture constraints for plugin modules
Enforce that shared contains only contracts (no implementation deps) and persistence-sqlite stays isolated from domain modules. Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: wire ModuleRegistry with startup validation (Phase 6)
- ModuleRegistry.fromAll with disable filtering and report generation - AllModules registry collecting all extracted modules - CloudAgentApp validates module dependency graph at startup - Integration tests expanded to 10 (covering all modules + filtering) - ModuleRegistry unit tests expanded to 8 Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add persistence provider contract and SQLite implementation (Phase 5)
- PersistenceProvider trait and PersistenceType enum in shared - SqlitePersistenceProvider with Flyway migration support - PostgresPersistenceModule and SqlitePersistenceModule declarations - New persistence-sqlite sbt project with sqlite-jdbc dependency - 9 tests: contract (2), SQLite provider (3), module registry (4) Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add transport and PEX module declarations (Phase 4)
Add DIDCommV2 transport, OIDC transport, and PresentationExchange module declarations. Extend ModuleRegistry integration tests to cover issuance and presentation protocol resolution. Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add DIDComm presentation protocol module and strangler adapter (Phase 3.4)
Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add DIDComm issuance protocol module and strangler adapter (Phase 3)
Add DIDCommIssuanceModule declaring IssuanceProtocol("didcomm-v3")
capability. Add DIDCommIssuanceAdapter that bridges the IssuanceProtocol
contract to the existing CredentialService — dispatches createRequest
and issueCredential to format-specific methods based on record's
credential format. Enables incremental migration via strangler fig
pattern.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
feat: add VCDM 1.1 DataModelCodec and JWT CredentialBuilder (Phase 2)
Add Vcdm11DataModelCodec that encodes/decodes W3C VCDM 1.1 credential structure. Add JwtCredentialBuilder that composes DataModelCodec + CredentialSigner through a pipeline: encode claims → serialize → sign → assemble JWT string. Co-Authored-By: Claude Opus 4.6 <[email protected]>