The PR adds more information to the error message, when user is using a SDK with a version that does not have semantic versioning.
Incorrect Sessions are not loaded again.
RCA and proposed fix
User starts the service with incorrect version of SDK
InsidiousService.setSession() method gets called to attempt to set the session
A call to onAgentConnected() happens at line-1438, which results in an exception and error message.
Since the flow resulted in an exception message the current state is not set, which would have otherwise happened on line-1445. This is expected behaviour.
The InsidiousService.setSession() method get's called again, and the same flow happens.
To fix this a lastCheckedSessionId is introduced so that the code for loading the session is not attempted again for a session.
Test Plan
Smoke Test
session-1 is run with BUILD_TEST version (error came only once)
session-2 is run with BUILD_TEST version (error came only once, it is mapped to the lc of InsidiousService)
session-3 is run with 0.6.4, the error does not comes live window loads correctly.
session-4 is run with 0.6.4, the error does not comes and live window loads with new test candidates. So, the session changed correctly.
Description
RCA and proposed fix
Test Plan
Smoke Test
Scanning Test