Extension should also check whether it's actually connected to the workflow.
Alternatively, add "reconnect" button to extension or, at least, instructions on how to force the extension to reconnect (disable and then re-enable it).
This is a requirement for #2 to work smoothly: without it, starting a new Firefox will replace the already-running browser's socket, but the extension will never know and will still think it's connected (the native client is still running; it's just not what the workflow is talking to).
Extension should also check whether it's actually connected to the workflow.
Alternatively, add "reconnect" button to extension or, at least, instructions on how to force the extension to reconnect (disable and then re-enable it).
This is a requirement for #2 to work smoothly: without it, starting a new Firefox will replace the already-running browser's socket, but the extension will never know and will still think it's connected (the native client is still running; it's just not what the workflow is talking to).