Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wallet Stub Development for Local & E2E Testing #788

Closed
1 task done
thackerronak opened this issue Jul 12, 2024 · 2 comments
Closed
1 task done

Wallet Stub Development for Local & E2E Testing #788

thackerronak opened this issue Jul 12, 2024 · 2 comments
Assignees
Labels
Prep-R24.12 ssi Self-Sovereign Identity
Milestone

Comments

@thackerronak
Copy link

thackerronak commented Jul 12, 2024

Description

The purpose of this proposal is to outline the development of a wallet stub that can be utilized within local and integration environments to facilitate end-to-end (E2E) testing of the issuance and presentation flow. The wallet stub will serve as a mock component, simulating the behavior of a user's digital wallet in the ecosystem.

Objective

Development of a wallet stub to:

  • Enable E2E testing of the issuance and presentation flow.

  • Ensure compatibility and proper integration with the portal, issuer component, and connectors based on the catena-x standard 24.05.

Dependencies and Integration Applications

The wallet stub will be designed to integrate seamlessly with the following components:

  • Portal

  • Issuer Component

  • Connector

High-Level Requirements

  1. Wallet Stub Functionality

    • Simulate the storage and management of digital credentials.

    • Provide endpoints for credential issuance and presentation.

  2. Integration with Portal

    • The portal should be able to direct requests to the wallet stub for testing purposes.

    • Ensure user interface consistency with actual wallet interfaces.

  3. Integration with Issuer Component

    • Implement APIs that allow the issuer component to issue credentials to the wallet stub.

    • Validate the integrity and authenticity of credentials.

  4. Integration with EDC

    • Facilitate communication between the wallet stub and EDC to obtain necessary data for credential issuance.

    • Ensure data privacy and security during data retrieval and transfer.

Detailed Functionality

Wallet Stub

  • Credential Issuance: The stub must accept and simulate the storage of credentials issued by the issuer component.

  • Credential Presentation: The stub must be able to present stored credentials upon request.

  • APIs: Define and implement APIs for interaction with the portal and issuer component.

Portal

  • User Interaction: Allow users to initiate credential issuance and presentation through the wallet stub.

  • Display Information: Show the status of credentials within the wallet stub.

Issuer Component

  • API Integration: Create APIs for the issuer to send credentials to the wallet stub.

  • Credential Verification: The issuer must verify the wallet stub's ability to handle credentials correctly.

EDC

  • Data Access: Ensure secure API endpoints for the wallet stub to access necessary data.

  • Data Format: Define the data format and structure that will be accepted by the wallet stub for credential issuance.

Testing and Validation

  • Implement automated test cases to validate the wallet stub's functionality in both local and integration environments.

  • Conduct performance testing to ensure the wallet stub can handle expected loads.

Out of Scope

  • Production-level wallet functionalities.

  • Real user data handling within the testing environments.

Timeline and Milestones

  1. Design Phase: Till end of July 2024

  2. Development Phase: Till end of August 2024

  3. Integration Testing: depending on the committer plans

  4. User Acceptance Testing: depending on the committer and association plans

  5. Deployment to Environments: depending on the committer and association plans

Risks and Mitigation Strategies

  • Integration Issues: Regular sync-up meetings and integration tests to detect and address issues early.

  • Delays in Delivery: Allocate buffer time in the timeline for unexpected delays.

Impact
Impact would be more stability for components that depend on the wallet.

Additional information

  • I'm willing to contribute to this feature

Contribution by Cofinity-X Team
Commiter to support this @nitin-vavdiya

@stephanbcbauer
Copy link
Member

I am not sure if the supported-by is correct. Is the Expert Group working on this topic?

@stephanbcbauer stephanbcbauer moved this from Inbox to Backlog in Release Planning Jul 22, 2024
@stephanbcbauer stephanbcbauer moved this to Backlog in Release Planning Jul 22, 2024
@stephanbcbauer
Copy link
Member

This would be done in a new repository, which is not there right now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Prep-R24.12 ssi Self-Sovereign Identity
Projects
Status: Done
Development

No branches or pull requests

3 participants