refactor(runtime-broker): extract binding provisioning from RuntimeBrokerService (#16501)

* refactor(runtime-broker): extract binding provisioning from RuntimeBrokerService

RuntimeBrokerService still carried the whole Runtime binding lifecycle:
durable provisioning and attestation, the bounded reconciliation loop,
lost-binding cleanup and the trusted maintenance recovery path. Those
members only depend on each other and on the operation claim, so they
move into a package-private RuntimeBindingProvisioning collaborator,
alongside the existing dispatcher, reconciler and recovery classes.

This is a pure move. The service delegates binding acquisition, recovery,
the deadline and step-timeout helpers and attestation checks to the new
class. The provision failure handler is now owned by the collaborator,
which removes the service's constructor-time method reference cycle.
BindingRenewal stays in the service because the drain path also uses it;
the collaborator receives its constructor as a factory.

RuntimeBrokerService shrinks from 4174 to 2948 lines.

Co-Authored-By: Claude Opus 5.5 <[email protected]>

* fix(runtime-broker): tighten class-size ratchet after binding extraction

---------

Co-authored-by: Claude Opus 5.5 <[email protected]>
This commit is contained in:
jinyeandClaude Opus 5.5 authored and GitHub committed 2026-11-07 17:01:35 +08:00
1 parent 5faa620af9
commit 0acd2851cd
4 files changed
+1343 -1247

No files matched your search

@@ -42,7 +42,7 @@ import static org.assertj.core.api.Assertions.assertThat;
*/
class ClassSizeRatchetTest {
private static final int LARGE_CLASS_THRESHOLD = 800;
private static final int GLOBAL_MAX_LINES = 4181;
private static final int GLOBAL_MAX_LINES = 3328;
private static final String PIN_RESOURCE = "/class-size-ratchet.properties";
private static final List<String> SOURCE_ROOTS =
List.of("persistence/src/main/java", "runtime-broker/src/main/java");
@@ -38,4 +38,5 @@ com.alibaba.qwen.code.managedagent.persistence.WorkspaceStorageGuard=877
com.alibaba.qwen.code.runtimebroker.persistence.JdbcCsiActivationAdmission=990
com.alibaba.qwen.code.runtimebroker.persistence.JdbcRuntimeBindingRepository=2670
com.alibaba.qwen.code.runtimebroker.persistence.JdbcToolExecutionRepository=1235
com.alibaba.qwen.code.runtimebroker.service.RuntimeBrokerService=4181
com.alibaba.qwen.code.runtimebroker.service.RuntimeBindingProvisioning=1326
com.alibaba.qwen.code.runtimebroker.service.RuntimeBrokerService=2943