Skip to content

Conversation

@GrahamS-Quartech
Copy link

Summary of Changes

Marking this PR as draft since it's still a WIP, but I think I may need some community input to get this in to a state where it's ready for a full review.

This PR is meant to handle changes introduced by 0.6.x versions of credo-ts. One of the main ones is changes to naming conventions for many of the imported types. In many cases the types have been moved into a separate module as well (credo-ts/didcomm).

It seems there are also some changes to how certain modules and APIs function in this version. I've made changes in bifold to reflect these by referencing the credo-ts repo, though I was not sure how to handle them in every case.

It should be possible to deploy the app to your device in it's current state, but as of writing I can't seem to get the AskarModule to initialize properly, so that's my main blocker to progressing this PR further. Insight and comments welcome!

@changeset-bot
Copy link

changeset-bot bot commented Oct 16, 2025

🦋 Changeset detected

Latest commit: a0bbbe5

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 5 packages
Name Type
@bifold/core Patch
@bifold/remote-logs Patch
@bifold/oca Patch
@bifold/react-native-attestation Patch
@bifold/verifier Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@sonarqubecloud
Copy link

@jleach jleach changed the title Integration with credo-ts 0.6.x releases chore: integration with credo-ts 0.6.x releases Oct 21, 2025
…d displayed similar to other OpenId4vc credential types
@jleach
Copy link
Contributor

jleach commented Oct 24, 2025

@GrahamS-Quartech I can start looking through the PR and provide some guidance.

@GrahamS-Quartech
Copy link
Author

GrahamS-Quartech commented Oct 27, 2025

Much appreciated, feel free to reach out to me on the openwallet discord (g.stew) if you'd like to have some back and forth.

GrahamS-Quartech and others added 19 commits October 28, 2025 12:08
…asier to apply similar branding across different instances of same credential
Signed-off-by: Mckay <[email protected]>
Co-authored-by: Copilot <[email protected]>
Signed-off-by: SpencerMckayQ <[email protected]>
Signed-off-by: Mckay <[email protected]>
- Update core dependencies: React 19.1.0, Expo SDK 54
- Update Android build configuration: SDK 36, Gradle 8.14.3, Kotlin 2.1.20
- Update iOS minimum deployment target to 15.1, remove deprecated Flipper
- Update Metro config (blacklistRE → blockList)
- Fix React 19 TypeScript compatibility issues:
  - Add explicit JSX type imports where needed
  - Update BackHandler to subscription-based API
  - Update TouchableOpacity ref types to View
  - Fix navigation ref type to allow null
  - Change route config from children to component property
- Update react-test-renderer and testing libraries to React 19 compatible versions
- Add jest mocks for react-native-orientation-locker
- Update test snapshots for React 19

Closes openwallet-foundation#1726

Signed-off-by: omercsx <[email protected]>
- Add yarn resolutions for react-native-safe-area-context (~5.4.0),
  react-native-svg-transformer (~1.5.0), react-native-screens (~4.10.0),
  react-native-gesture-handler (~2.29.0)
- Update metro.config.js: replace deprecated exclusionList with blockList
- Update iOS deployment target to 15.1 in project.pbxproj
- Add Podfile post_install hooks for deployment target and RNArgon2 module fix
- Add escape-string-regexp dependency for metro config

Signed-off-by: omercsx <[email protected]>
…d gha versions with commit sha versions

Signed-off-by: Bryce McMath <[email protected]>
@MosCD3
Copy link
Contributor

MosCD3 commented Dec 9, 2025

@GrahamS-Quartech since credo 0.6 was released, are you going to maintain this PR?

@GrahamS-Quartech
Copy link
Author

@MosCD3
I will certainly try. I've been looking at this again recently now that 0.6 is stable and I would very much like to revive the efforts in this PR. Last time I looked at this with an alpha 0.6 build from last week, the exports from credo did not work correctly with react native / expo anymore.

GrahamS-Quartech and others added 14 commits December 10, 2025 10:25
…m interfaces changing in OpenID related components. Indy SDK migration package no longer appears to be supported, removed that.
Signed-off-by: Akiff Manji <[email protected]>
Signed-off-by: Akiff Manji <[email protected]>
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Akiff Manji <[email protected]>
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Akiff Manji <[email protected]>
…d424b96.patch

Co-authored-by: Copilot <[email protected]>
Signed-off-by: Akiff Manji <[email protected]>
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Akiff Manji <[email protected]>
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Akiff Manji <[email protected]>
chore: upgrade react native to 0.79
…g expo-crypto package. Now in app with credo-ts 0.6.1 stable.
@GrahamS-Quartech
Copy link
Author

Update; I am back in-app with 0.6.1.

Hitting an exception:

Error during call to 'onInitializeContext' method for module 'didcomm' for agent context 'default'

@timbl-ont
Copy link
Contributor

In lieu of documentation on Credo 0.6 the demos are current:

The openID demo supports ISO mDOC, SD-JWT etc..

It would be good to add support for the credo modularity in Bifold via configuration. Not all downstream wallets will require all the features.

My understanding from the credo call is that a quick start will be available soon as a bridge to the formal docs. FYI @MosCD3 @GrahamS-Quartech

@GrahamS-Quartech
Copy link
Author

GrahamS-Quartech commented Dec 19, 2025

The demos are indeed a useful reference point. I note that some of the didcomm modules may have been consolidated in to the DidCommModule config, so I tried aligning the config with the demo example, but it did not help with the exception I commented on above.

The AskarModule also still throws in its onInitializeContext too (which is where I got stuck way back when I first opened this), and I'm still having a hard time understanding why this happens. It doesn't seem to me like the agent is being started in an incorrect way.

// }


// TODO: Are notifications even supported here? If so the interface has clearly changed.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is custom metadata set on receiving the credential

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OID4VCI supports a /notification endpoint which is supported in credo 0.6. The wallet can call this endpoint to provide a status - accepted, error etc..

@timbl-ont
Copy link
Contributor

timbl-ont commented Jan 13, 2026

@amanji Take a look at #1751 (upgrade to RN 0.81). This PR will be merged fairly soon and will conflict with RN 0.79 in this PR.

There is also some work on display abstraction (PR #1748) that will impact this PR - should simplify the changes required for credo 0.6

@sonarqubecloud
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants