Skip to main content

Track Our Progress

This kanban board shows our teamโ€™s progress across bug reports, feature requests and incident reports.

Backlog

2

Under consideration

Feature Requests

Multikey VerificationMethod support

Currently by my reading of the docs, iโ€™m able to update a DIDDoc with VMs of type: Ed25519VerificationKey2020 EcdsaSecp256k1VerificationKey2019 RsaVerificationKey2018 (source) https://docs.cheqd.io/product/advanced/sdk/did-module#supported-key-types Although the source code seems to indicate: JsonWebKey2020 (key types ECDSA, Ed25519 & RSA are seemingly supported) Ed25519VerificationKey2020 Ed25519VerificationKey2018 (source) https://github.com/cheqd/cheqd-node/blob/2089162a071d1a741696a256457d656fa9457968/x/did/types/diddoc_verification_method.go#L17 It would be nice if it was also possible to push Multikey VM types. Anecdotally, iโ€™ve seen this VM grow in popularity over the years, as it is able to represent a huge range of key types with a single VM type, and is also compact. Similar properties to JsonWebKey2020, but arguably more compact and could be overtaking it in popularity. The support for the VM could be done in the same way as JsonWebKey2020 - limited scope to ed25519, ecdsa & rsa key type support. Supporting multikey VMs in cheqd DID Docs may improve interoperability in systems which prefer Multikey to itโ€™s alternatives (e.g. JsonWebKey2020)

George Mulhearn
Feature Requests

Compress AnonCreds status lists

From Timo (Animo) Maybe we should update the cheqd anoncreds method to compress the status list (or anoncreds in general)? It's quite inefficient to put it as an array like this: https://resolver.cheqd.net/1.0/identifiers/did:cheqd:mainnet:fdd80fdc-8756-491d-838d-ccd705b2776a/resources/c95a79db-fb74-4b00-a114-faa8ac12d629

cheqd Product Team

Next up

4

In Progress

1

Actively being built

In Review

2

Actively being built

Done

16

Recently shipped

Bug Reports

account/create

Hi, I get the following error while calling the โ€œaccount/createโ€ endpoint for getting a token so that my client can use the API endpoints of cheqd studio. Maybe the error: "Internal Error: Cannot read properties of undefined (reading 'kid')" is a bug? See the attached picture to replicate the error. Regards, Sid

sid030sid
Bug Reports

Cheqd Studio Update DID

isDIDArray: (value: Validatable) => { const res = new DIDArrayValidator().validate((value as string[]).map((v) => (v.includes('#') ? v.split('#')[0] : v))); if (!res.valid) { throw new Error(res.error); } return true; }, Am I write to consider this a fix for checking the authentication property for the update did api endpoint validator in Cheqd Studio? https://github.com/cheqd/studio/blob/140dcea007da52f0fc4aea1eb6f2ca65aef0327c/src/controllers/api/did.ts#L131 I am attempting to update the authentication but its failing during validation unless I make the above change.

Luke Nispel
Bug Reports

Studio: Staging: Verification of Suspended Credential

Bug: Severe Priority: High This is too much of a major bug. Unfortunately, the result from verifying a suspended credential is returned as still being valid. This is extremely misleading. And in addition, a revoked credential in my list comes back as valid when I verify. Using the features of our own platform, revocation appears to not to be working.

Matthew Arnold
Bug Reports

Unable to update Cheqd did with DIDComm V1 Service endpoint on Credo

1) Using Credo v0.5.14-0.5.17 create a cheqd did, with or without an existing DIDDoc. 2) Then immediately after successful creation, add a DIDCommV1 Service endpoint to the DIDDoc of the created did. 3) And then update the cheqd did with the newly updated DIDDoc. Step 3 should result in the following error: 'unknownError: failed to execute message; message index: 0: there should be at least one valid signature by did:cheqd:testnet:52ae96fb-66cd-4945-9914-39b7ff638243 (old version): invalid signature detected' With the did referenced in the error message being the did that was created in step 1.

James Clark
Bug Reports

Cheqd Rust Resolver - Crates.io deployment failing

From Glenn (CEO @ Affinidi) One of your engineers (https://github.com/DaevMithran) submitted a PR to integrate Cheqd into our DID Resolver - thank you! Unfortunately we canโ€™t push this to release because the Cheqd code is being sourced from the OWF git repo which hasnโ€™t been published on crates.io and crates.io is failing it because it is pedantic on package names etc. I had a Quick Look at the OWF repo code https://github.com/openwallet-foundation/vcx/tree/main/did_core/did_methods/did_cheqd It is old, out of date and needs some love ๐Ÿ˜Š I am going to hold the Cheqd implementation as it is breaking our own CICD toolchain (and it is pulling in a rather large git repo). Do you have a preference on the following solutions: Pull the Cheqd DID implementation out of OWF and you publish a standalone Rust Library of the Cheqd resolver. Affinidi can then integrate with this cleanly If you have dev documentation on the gRPC details of resolving Cheqd DIDโ€™s, I can whip up a did-cheqd native crate for you (similar to the other DID-methods in the eco-system).

Fraser Edwards
Feature Requests

Fallback Endpoints for DID Resolver / DID Registrar

I wanted to reach out about an operational challenge weโ€™re experiencing with cheqd/did-resolver and cheqd/did-registrar that a fallback mechanism could solve.The Problem: Weโ€™re running into issues with testnet accessibility. When your testnet nodes are behind the firewall (blocking p2p connections), our self-hosted node canโ€™t join the network, which breaks our applications that are configured to use our local endpoints.Current Manual Workaround: Testnet nodes go behind firewall โ†’ our node canโ€™t sync We manually update deployments to point at official endpoints (grpc.cheqd.network:443, https://rpc.cheqd.network) When firewall is removed โ†’ our node can rejoin the network We manually update deployments back to our local endpoints This creates a lot of operational overhead and requires manual intervention every time network accessibility changes.Proposed Solution: Could you add automatic fallback functionality to both projects? Something like: did-resolver: Try our gRPC endpoint first, if connection fails (5xx, or Connection Refused) โ†’ automatically fall back to grpc.cheqd.network:443 did-registrar: Try our RPC endpoint first, if connection fails (5xx, or Connection Refused) โ†’ automatically fall back to https://rpc.cheqd.network The Flow Weโ€™re Envisioning: Try primary endpoint (our node) On connection error โ†’ switch to official endpoints When primary comes back online โ†’ switch back automatically This would eliminate the need for manual deployment updates every time testnet accessibility changes and make our infrastructure much more resilient to network-level issues.

cheqd Product Team
Bug Reports

Missing validator Dep

I raised an issue here that may be related to my problem but mainly is just a noted missing dep in the @cheqd/studio code https://github.com/cheqd/studio/issues/694

An Anonymous User
Bug Reports

P256 signing fails when using Askar as KMS

Raised on behalf of Timo from Animo On the P256 signing in Credo (brought this up a long time ago). When i add an authentication using Askar as KMS it fails, but if I use Node crypto directly it succeeds. It's odd as we have been using our P256 signing with Askar with a lot of other implementation correctly, but it's probably something to do with encoding then I guess? Additional context: We are going to add P-256 signing in Paradym, and if cheqd can support it we will also enable this for Cheqd DIDs. It's not high priority, mainly wanted to share this behvaiour that it does work with another crypto implementation

Fraser Edwards
Bug Reports

SDK expects serviceEndpoint to be an Array of Strings

Opened on behalf of Timo / Animo Bug raised in GitHub: https://github.com/cheqd/sdk/issues/436 DID Spec mentions: The value of the serviceEndpoint property MUST be a string, a map, or a set composed of one or more strings and/or maps. How can we reproduce this bug? Update a did document, where there is a service having serviceEndpoint that is a string. (I think it also applies to creating a did doc). Environment Not applicable Bug prevalence No response Which browser/client application did you encounter the bug in? (if applicable) No response Relevant log output

Fraser Edwards
Bug Reports

Unknown error writing to Cheqd mainnet

Transaction with ID 904E70D7044638A0A37103E32C00DB1031BD0198B08F25CEED7AA2B3F78AD061 was submitted but was not yet found on the chain. You might want to check later. There was a wait of 60 seconds We suddenly got this error when submitting a status list to cheqd mainnet for did did:cheqd:mainnet:c3a49697-6282-4fda-a0d9-c81d2f76e9fe and revocation registry definition did:cheqd:mainnet:c3a49697-6282-4fda-a0d9-c81d2f76e9fe/resources/9ed8e025-2697-477c-a49a-3ec8da44de3e

An Anonymous User