keripy icon indicating copy to clipboard operation
keripy copied to clipboard

processCredential telquery messages missing src identifier (fix or remove?)

Open iFergal opened this issue 1 year ago • 0 comments

Version

1.2.0.dev11 (still there on main)

Environment

No response

Expected behavior

If tel events are missing when processing a credential, the credential is escrowed and a telquery is initiated.

e.g. here

self.cues.append(dict(kin="telquery", q=dict(ri=regk, i=vcid, issr=creder.issuer)))

Given the current code, expected would be the telquery would be sent to the issuer, so the credential can get out of escrow.

However, yesterday we had some discussions on a TEL observer role and in many ways retrieving TELs may vary based on use case and not directly involve the issuer agent, so I wonder if we should remove the telquery and have application specific code decide how to retrieve the TELs if missing?

Actual behavior

Not only should this be pre=creder.issuer instead of issr but even then it's still missing the src field so the WitnessInquisitor doesn't know from which prefix to send the message - see query function here.

Steps to reproduce

I've added an endpoint in KERIA temporarily locally to call processCredential given an ACDC SAD. This happens if I don't do an explicit (properly formed) telquery beforehand.

An easier way might be to comment out the streaming of TEL events when disclosing an ACDC via IPEX: https://github.com/WebOfTrust/keripy/blob/1.2.0-dev11/src/keri/vdr/credentialing.py#L981-L990

iFergal avatar Sep 18 '24 14:09 iFergal