Build API: Add logic to handle toolchain changes

Updated chromite build API protos to include new toolchain_change field

BUG=b:147589410
TEST=None

Change-Id: I51eafa718d3e59ab6abe78d5873f43670fb064a8
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/1997261
Tested-by: Chris McDonald <cjmcdonald@chromium.org>
Reviewed-by: Alex Klein <saklein@chromium.org>
Auto-Submit: Chris McDonald <cjmcdonald@chromium.org>
diff --git a/api/controller/sdk_unittest.py b/api/controller/sdk_unittest.py
index cd710d2..01b6203 100644
--- a/api/controller/sdk_unittest.py
+++ b/api/controller/sdk_unittest.py
@@ -169,10 +169,12 @@
     # No boards and flags False.
     request = self._GetRequest(build_source=False)
     sdk_controller.Update(request, self.response, self.api_config)
-    args_patch.assert_called_with(build_source=False, toolchain_targets=[])
+    args_patch.assert_called_with(
+        build_source=False, toolchain_targets=[], toolchain_changed=False)
 
     # Multiple boards and flags True.
     targets = ['board1', 'board2']
     request = self._GetRequest(build_source=True, targets=targets)
     sdk_controller.Update(request, self.response, self.api_config)
-    args_patch.assert_called_with(build_source=True, toolchain_targets=targets)
+    args_patch.assert_called_with(
+        build_source=True, toolchain_targets=targets, toolchain_changed=False)