We will need to pass the `source` field to the keyserver to distinguish between different log-in scenarios ([[ https://linear.app/comm/issue/ENG-1867/pass-loginactionsource-to-keyserver-when-logging-in | task ]]).
This diff adds this field to the `strict` interface but allows an `undefined` source (which will happens on logging from the login form).
A proper type for login from form will be added later on and this field will become mandatory.