Files
meowlib/invitation_prompt.md
T
ycc 61e6598392
continuous-integration/drone/push Build is failing
invitation process upgrade
2026-04-02 18:50:04 +02:00

1.8 KiB

Context

The invitation process might be performed by file exchange (raw or maybe qr codes later) or though server. In the current code the first step provides first peer data without any encryption (invitation create), this has to be changed.

Requested improvement

Library implementation

An initial step shall be added befoe the current first step where the initiator will send almost only it's public key for initiating invitation. The required structure InvitationInitPayload is described in @pb/messages.proto. Invitation struct in the same file has also been adapted to the new flow.

Then the full workflow is described in @doc/invitation/sq_invitation.puml

this will allow to adapt the base invitation functions attached to the @client/identity.go that allow the invitation steps to be performed.

Then the helper functions @client/helpers/invitation*.go allow to implement the full flow, through files exchanges or through server invitation.

The "through server" flow is described in @doc/invitation/sq_srvinv*.puml

Server implementation

Most of the server code is in @server/router.go invitation process consistency with that code should be checked/upgraded

Cli client implementation

The cli client is available in @../meowcli/ it should also be adapted to the new process

Constraints

The functions should be renamed according to the sequence diagrams flow stps to improve clarity, instead od create/answer/finalize...

Testing

Already present test files should be adapted and improved to fit the changes, new test files may be created.

Stop condition

Once all changed have beed edited, and library unit testing performed, you will stop. I will then review and commit changes, integrate new lib in server and cli, and then we'll iterate over end to end tests.