feat: support KERIpy-style /delegate/request EXN sending#432
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #432 +/- ##
==========================================
+ Coverage 87.73% 87.75% +0.02%
==========================================
Files 26 26
Lines 5823 5841 +18
==========================================
+ Hits 5109 5126 +17
- Misses 714 715 +1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
670dc38 to
54dae41
Compare
| exc.addHandler(delreq) | ||
|
|
||
|
|
||
| class DelegateRequestHandler: |
There was a problem hiding this comment.
All of these look identical to the keripy implementation - I think we should import them
There was a problem hiding this comment.
I agree, I'll just import it. Good catch.
There was a problem hiding this comment.
@kentbull I also meant loadHandlers and delegateRequestExn - I don't see a reason to not import them
ac9cee9 to
21cf54e
Compare
21cf54e to
3d000ff
Compare
3d000ff to
6ad75f8
Compare
Signed-off-by: Kent Bull <[email protected]>
Signed-off-by: Kent Bull <[email protected]>
Signed-off-by: Kent Bull <[email protected]>
6ad75f8 to
f015156
Compare
| - multisig signing | ||
| - credential issuance and presentation, single or multisig | ||
| - challenge response and verification | ||
| - identifier creation |
There was a problem hiding this comment.
Notifications are generally driven by exchange message responses. What notification do we get for identifier creation that isn't multisig (mentioned above)?
| hard-coding the inception case. | ||
|
|
||
| ##### Inception | ||
| For delegated inception, `s` is `"0"` and `d` is usually the delegate prefix. |
| separately. | ||
|
|
||
| We should add at the very least an error message in the logs when receiving an approval request from | ||
| an unknown sender, though ideally that would be surfaced to the user in some visible way. Right now |
There was a problem hiding this comment.
Surfacing every unknown message would be problematic in production imo
| The `/delegate/request` EXN is signed by the sender's habitat selected by KERIA's delegation | ||
| `Anchorer`. For a Signify managed single-sig AID, that sender is normally the delegatee agent/proxy | ||
| AID, because Signify habitats do not sign inside KERIA. For a group delegated AID, the sender is | ||
| the local member habitat. |
There was a problem hiding this comment.
I presume we actually do this because the delegated AID won't be valid until it is approved, so the exn wouldn't surface to the delegator
We need KERIpy-style
/delegate/requestEXN sending like line 199 in the Anchorer.partialWitnessEscrow in themainbranch. This has been a missing feature in KERIA for a long time.This delegation request EXN is sent from the delegate to the delegator in order for the delegator to get a notification that it can surface to a Signify UX where it shows the edge controller that a delegation request has come through.
In order for single sig delegation to have a KERIpy-style workflow this change is necessary.
I also added protocol, module, class, and function docs to clarify this change.