fix: use exn.rp field as recipient for exchange message (#3) - #396
fix: use exn.rp field as recipient for exchange message (#3)#396lenkan wants to merge 2 commits into
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #396 +/- ##
==========================================
- Coverage 87.76% 86.10% -1.66%
==========================================
Files 26 26
Lines 5826 5650 -176
==========================================
- Hits 5113 4865 -248
- Misses 713 785 +72 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
@lenkan will you rebase this on main? Also, is it ready for review? |
d8cf00e to
41ade39
Compare
|
@kentbull Rebased on current main and ready for review. We have been running this code for about 6 months now. One note on the controversial removal of the multisig IPEX route handlers: no Signify code paths used them at the time. I did not want two different ways of achieving the same thing. The |
Exercise recipient resolution from exchange payloads so the removal of the separate rec parameter remains covered.
| op = IpexAdmitCollectionEnd.sendMultisigExn( | ||
| agent, hab, ked, sigs, atc, rec | ||
| ) | ||
| op = IpexAdmitCollectionEnd.sendAdmit(agent, hab, ked, sigs) |
There was a problem hiding this comment.
Probably worth a refactor now or later to
if ked["r"] !== "/ipex/admit":
raise falcon.HTTPBadRequest(
description=f"invalid message route {route}"
)
op = IpexAdmitCollectionEnd.sendAdmit(agent, hab, ked, sigs)
There was a problem hiding this comment.
But really, I have been thinking that an even bigger refactor that would be nice is to drop all IPEX endpoints in favour of just /identifiers/{name}/exchanges, and be able to register Decks based on the route, so agent.grants.append(dict(said=ked["d"], pre=hab.pre)) could be called dynamically.
|
@lenkan please fix conflicts. |
All exchange messages now have the intended recipient in the payload, so the extra body parameter is confusing and could cause issues.
This PR removes the "rec" body parameter that previously specified a list of recipients of an exn message. This list had no correlation with the
rpfield in the exchange message payload.This PR also removes the ipex multisig handlers, for no other reason that they weren't used in any of the signify integration tests, so to me it was unnecessary complexity. I do not see any reason to keep this feature as we already use the "/multisig/exn" from the client.
See discussions:
recpfield in POST body #270