mirror of
https://github.com/QwenLM/qwen-code.git
synced 2026-11-07 06:19:43 -10:00
refactor(runtime-broker): import inline fully qualified names (#16535)
This commit is contained in:
1 parent
4c5820c745
commit
157664acb2
5 files changed
+25
-16
No files matched your search
+4
-3
@@ -14,6 +14,7 @@ import com.alibaba.qwen.code.runtimebroker.RuntimeScope;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.CompletionStage;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.ConcurrentMap;
|
||||
@@ -43,9 +44,9 @@ public final class RoutingRuntimeProvisioner implements RuntimeProvisioner {
|
||||
Function<RuntimeScope, String> kindSelector, BiConsumer<String, RuntimeLease> leaseRegistrar,
|
||||
Consumer<RuntimeLease> leaseReleaser) {
|
||||
this.delegates = Map.copyOf(delegates);
|
||||
this.kindSelector = java.util.Objects.requireNonNull(kindSelector, "kindSelector");
|
||||
this.leaseRegistrar = java.util.Objects.requireNonNull(leaseRegistrar, "leaseRegistrar");
|
||||
this.leaseReleaser = java.util.Objects.requireNonNull(leaseReleaser, "leaseReleaser");
|
||||
this.kindSelector = Objects.requireNonNull(kindSelector, "kindSelector");
|
||||
this.leaseRegistrar = Objects.requireNonNull(leaseRegistrar, "leaseRegistrar");
|
||||
this.leaseReleaser = Objects.requireNonNull(leaseReleaser, "leaseReleaser");
|
||||
if (delegates.isEmpty() || delegates.entrySet().stream()
|
||||
.anyMatch(entry -> !entry.getValue().supportsKind(entry.getKey()))) {
|
||||
throw new IllegalArgumentException("Each routed provider must own its exact kind");
|
||||
|
||||
+2
-1
@@ -23,6 +23,7 @@ import com.alibaba.qwen.code.runtimebroker.service.RuntimeBrokerService.BindingR
|
||||
import java.time.Clock;
|
||||
import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.CompletionException;
|
||||
@@ -1250,7 +1251,7 @@ final class RuntimeBindingProvisioning {
|
||||
&& lease.getLeaseId().equals(attestation.getLeaseId())
|
||||
&& lease.getEpoch() == attestation.getEpoch()
|
||||
&& request.getScope().equals(attestation.getScope())
|
||||
&& java.util.Objects.equals(request.getStorageId(),
|
||||
&& Objects.equals(request.getStorageId(),
|
||||
attestation.getStorageId())
|
||||
&& seed.getProvisionRequestId().equals(
|
||||
attestation.getProvisionRequestId());
|
||||
|
||||
+10
-6
@@ -12,6 +12,7 @@ import com.alibaba.qwen.code.runtimebroker.ResidentWorkspaceProfile;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeBindingRecord;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeBindingRepository;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeBrokerException;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeBrokerOperations;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeDrainReceipt;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeExtensionCommandVerifier;
|
||||
import com.alibaba.qwen.code.runtimebroker.RuntimeLease;
|
||||
@@ -31,6 +32,7 @@ import com.alibaba.qwen.code.runtimebroker.RuntimeTransport;
|
||||
import com.alibaba.qwen.code.runtimebroker.ToolExecutionRecord;
|
||||
import com.alibaba.qwen.code.runtimebroker.ToolExecutionRepository;
|
||||
import com.alibaba.qwen.code.runtimebroker.protocol.ProviderRuntimeProtocol;
|
||||
import com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds;
|
||||
import com.alibaba.qwen.code.runtimebroker.service.RuntimeBindingRegistry.BindingContext;
|
||||
import com.alibaba.qwen.code.runtimebroker.service.RuntimeBindingRegistry.SessionContext;
|
||||
import com.alibaba.qwen.code.runtimebroker.transport.CsiFileHistoryProtocol;
|
||||
@@ -45,9 +47,11 @@ import org.apache.commons.codec.digest.DigestUtils;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.time.Clock;
|
||||
import java.time.Duration;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
@@ -83,7 +87,7 @@ import static com.alibaba.qwen.code.runtimebroker.service.RuntimeBrokerSupport.u
|
||||
import static com.alibaba.qwen.code.runtimebroker.service.RuntimeBrokerSupport.unwrap;
|
||||
|
||||
/** Repository-backed orchestration for the private Managed Runtime contract. */
|
||||
public final class RuntimeBrokerService implements AutoCloseable, com.alibaba.qwen.code.runtimebroker.RuntimeBrokerOperations {
|
||||
public final class RuntimeBrokerService implements AutoCloseable, RuntimeBrokerOperations {
|
||||
/**
|
||||
* Floor for {@code v3ResultWindow}: refuses sub-second durations. The
|
||||
* managed-agent-server property declares {@code @DurationUnit(SECONDS)},
|
||||
@@ -345,7 +349,7 @@ public final class RuntimeBrokerService implements AutoCloseable, com.alibaba.qw
|
||||
if (current == null || !current.getBindingId().equals(binding.getBindingId())
|
||||
|| current.getGeneration() != binding.getGeneration() || current.getState() != RuntimeBindingRecord.State.READY
|
||||
|| current.isDrainRequested() || !current.hasSameLease(binding.getLease())
|
||||
|| !java.util.Objects.equals(current.getResourceHandle(), binding.getResourceHandle())
|
||||
|| !Objects.equals(current.getResourceHandle(), binding.getResourceHandle())
|
||||
|| sessionRepository.countActiveByBinding(binding.getBindingId(), binding.getGeneration()) != 0
|
||||
|| executionRepository.hasActiveByBinding(binding.getBindingId(), binding.getGeneration())) {
|
||||
return failed(conflict("workspace_close_execution_unsettled", "Original resident work remains unsettled"));
|
||||
@@ -709,7 +713,7 @@ public final class RuntimeBrokerService implements AutoCloseable, com.alibaba.qw
|
||||
}
|
||||
|
||||
private CompletionStage<Void> acknowledgeDrainedTools(RuntimeBindingRecord binding, String cursor) {
|
||||
if (!com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind()) || binding.getLease() == null) {
|
||||
if (!RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind()) || binding.getLease() == null) {
|
||||
return CompletableFuture.completedFuture(null);
|
||||
}
|
||||
var batch = executionRepository.findByBinding(binding.getBindingId(), binding.getGeneration(), cursor, 100);
|
||||
@@ -722,7 +726,7 @@ public final class RuntimeBrokerService implements AutoCloseable, com.alibaba.qw
|
||||
}
|
||||
|
||||
private CompletionStage<RuntimeDrainReceipt> stopAcknowledgedRuntime(RuntimeBindingRecord binding) {
|
||||
if (!com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind()) || binding.getLease() == null) {
|
||||
if (!RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind()) || binding.getLease() == null) {
|
||||
return acknowledgeDrainedTools(binding, null).thenCompose(ignored -> provisioner.stopDrained(binding));
|
||||
}
|
||||
return safeStage(() -> provisioner.reconcile(binding.getRequest(), binding.getProvisionSeed(),
|
||||
@@ -1191,7 +1195,7 @@ public final class RuntimeBrokerService implements AutoCloseable, com.alibaba.qw
|
||||
}
|
||||
|
||||
public void configureExtensionCommandVerifier(RuntimeExtensionCommandVerifier verifier) {
|
||||
this.extensionCommandVerifier = java.util.Objects.requireNonNull(verifier, "verifier");
|
||||
this.extensionCommandVerifier = Objects.requireNonNull(verifier, "verifier");
|
||||
}
|
||||
|
||||
public CompletionStage<Object> control(String harnessSessionId,
|
||||
@@ -2354,7 +2358,7 @@ public final class RuntimeBrokerService implements AutoCloseable, com.alibaba.qw
|
||||
|| executionRepository.hasActiveByRuntimeSession(
|
||||
context.binding().getBindingId(), context.binding().getGeneration(),
|
||||
context.session().getRuntimeSessionId(),
|
||||
new java.util.HashSet<>(context.backgroundProcesses()))) {
|
||||
new HashSet<>(context.backgroundProcesses()))) {
|
||||
throw conflict("runtime_session_busy",
|
||||
"Runtime Session has an active operation");
|
||||
}
|
||||
|
||||
+6
-4
@@ -9,11 +9,13 @@ import com.alibaba.qwen.code.runtimebroker.RuntimeScope;
|
||||
import com.alibaba.qwen.code.runtimebroker.StoreFailureException;
|
||||
import com.alibaba.qwen.code.runtimebroker.ToolExecutionRecord;
|
||||
import com.alibaba.qwen.code.runtimebroker.protocol.ProviderRuntimeProtocol;
|
||||
import com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.CompletionException;
|
||||
@@ -214,8 +216,8 @@ final class RuntimeBrokerSupport {
|
||||
Map<String, Object> actual) {
|
||||
if (actual == null || !actual.keySet().equals(Set.of("executionCallId", "manifest",
|
||||
"deliveryStatus", "historyRevision"))
|
||||
|| !java.util.Objects.equals(expected.get("executionCallId"), actual.get("executionCallId"))
|
||||
|| !java.util.Objects.equals(expected.get("deliveryStatus"), actual.get("deliveryStatus"))) {
|
||||
|| !Objects.equals(expected.get("executionCallId"), actual.get("executionCallId"))
|
||||
|| !Objects.equals(expected.get("deliveryStatus"), actual.get("deliveryStatus"))) {
|
||||
return false;
|
||||
}
|
||||
Object leftRevision = expected.get("historyRevision");
|
||||
@@ -235,7 +237,7 @@ final class RuntimeBrokerSupport {
|
||||
return false;
|
||||
}
|
||||
for (String field : List.of("resourceId", "kind", "digest")) {
|
||||
if (!java.util.Objects.equals(saved.get(field), received.get(field))) {
|
||||
if (!Objects.equals(saved.get(field), received.get(field))) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -249,7 +251,7 @@ final class RuntimeBrokerSupport {
|
||||
}
|
||||
|
||||
static Map<String, Object> sshNoStartReceipt(RuntimeBindingRecord binding, ToolExecutionRecord execution) {
|
||||
if (!com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind())
|
||||
if (!RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind())
|
||||
|| !execution.isSettled() || !"not_started".equals(execution.getExecutionStatus())
|
||||
|| execution.getResult() == null || !execution.getResult().containsKey("capture")
|
||||
|| execution.getResult().get("capture") != null
|
||||
|
||||
+3
-2
@@ -15,6 +15,7 @@ import com.alibaba.qwen.code.runtimebroker.RuntimeTransport;
|
||||
import com.alibaba.qwen.code.runtimebroker.ToolExecutionRecord;
|
||||
import com.alibaba.qwen.code.runtimebroker.ToolExecutionRepository;
|
||||
import com.alibaba.qwen.code.runtimebroker.protocol.ProviderRuntimeProtocol;
|
||||
import com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds;
|
||||
import com.alibaba.qwen.code.runtimebroker.service.RuntimeBindingRegistry.SessionContext;
|
||||
|
||||
import java.time.Clock;
|
||||
@@ -234,7 +235,7 @@ final class RuntimeExecutionDispatcher {
|
||||
}
|
||||
return null;
|
||||
}).thenCompose(ignored -> {
|
||||
if (!com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds.SSH_PROCESS.equals(context.binding().getRequest().getProvisionerKind())) {
|
||||
if (!RuntimeProviderKinds.SSH_PROCESS.equals(context.binding().getRequest().getProvisionerKind())) {
|
||||
return CompletableFuture.completedFuture(null);
|
||||
}
|
||||
ToolExecutionRecord settled = executionRepository.findByExecutionCallId(executing.getExecutionCallId());
|
||||
@@ -397,7 +398,7 @@ final class RuntimeExecutionDispatcher {
|
||||
}
|
||||
|
||||
CompletionStage<Void> acknowledgePersistedTools(RuntimeBindingRecord binding, ToolExecutionRecord execution) {
|
||||
if (!com.alibaba.qwen.code.runtimebroker.protocol.RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind())
|
||||
if (!RuntimeProviderKinds.SSH_PROCESS.equals(binding.getRequest().getProvisionerKind())
|
||||
|| !execution.isSettled() || execution.getResult() == null
|
||||
|| ProviderRuntimeProtocol.isReference(execution.getReference())) {
|
||||
return CompletableFuture.completedFuture(null);
|
||||
|
||||
Reference in new issue
Block a user