Compare commits

...
@@ -148,7 +148,16 @@ class GovernedRuntime:
if request["target_branch"] != binding.request.target_branch or request["expected_branch_oid"] != binding.request.expected_branch_oid: raise RuntimeError("LEASE_BINDING_CONFLICT")
commit = ContinuationCommit(idempotency_key=str(request["idempotency_key"]), files=self._files(request), message=str(request["message"]))
executor.workspace.materialize_files(commit.files)
return executor.execute(binding, commit)
result = executor.execute(binding, commit)
receipt = result.get('receipt') if isinstance(result, Mapping) else None
receipt = receipt if isinstance(receipt, Mapping) else {}
commit_oid = receipt.get('authority_oid') or receipt.get('desired_remote_oid')
if not isinstance(commit_oid, str) or len(commit_oid) != 40 or any(ch not in '0123456789abcdef' for ch in commit_oid):
raise RuntimeError('COMMIT_RECEIPT_OID_MISSING')
response = dict(result)
response['commit_oid'] = commit_oid
response['commit_visible'] = bool(receipt.get('commit_visible') or receipt.get('remote_verified'))
return response
def _controller_for_job(self, job_id: str) -> GitOpsJobController:
for controller in self.controllers.values():