As far as I understand, SauceLabs job ID is the same as webdriver session id. You can obtain an instance of WebDriver from Browser.getDriver(), and in case of driving a browser in SauceLabs it will be an instance of RemoteWebDriver which has a getSessionId() method.
With regards to detecting test results you will need to probably write a global Spock extension which registers a org.spockframework.runtime.IRunListener with appropriate implementations of afterFeature(FeatureInfo) and error(ErrorInfo) and potentially afterIteration(IterationInfo) as well.