fix: restore master agent relay guidance

This commit is contained in:
kris
2026-03-30 17:42:21 +08:00
parent 5eb1246f02
commit 7c6101f22b
9 changed files with 312 additions and 22 deletions

View File

@@ -52,6 +52,20 @@ public class BossApiClientDispatchPlansTest {
assertEquals("{\"approvedTargetProjectIds\":[\"target-1\",\"target-2\"]}", connection.requestBody());
}
@Test
public void sendProjectMessageUsesExtendedReadTimeoutForMasterAgent() throws Exception {
RecordingConnection connection = new RecordingConnection(new URL("https://boss.hyzq.net/api/v1/projects/master-agent/messages"));
RecordingBossApiClient apiClient = new RecordingBossApiClient(connection);
BossApiClient.ApiResponse response = apiClient.sendProjectMessage("master-agent", "你好", "text");
assertEquals(200, response.statusCode);
assertEquals("/api/v1/projects/master-agent/messages", apiClient.lastPath);
assertEquals("POST", connection.requestMethodValue);
assertEquals(12000, connection.connectTimeoutValue);
assertEquals(65000, connection.readTimeoutValue);
}
private static final class RecordingBossApiClient extends BossApiClient {
private final RecordingConnection connection;
private String lastPath = "";
@@ -82,6 +96,8 @@ public class BossApiClientDispatchPlansTest {
private final ByteArrayOutputStream requestBody = new ByteArrayOutputStream();
private final Map<String, String> requestHeaders = new HashMap<>();
private String requestMethodValue = "GET";
private int connectTimeoutValue = 0;
private int readTimeoutValue = 0;
RecordingConnection(URL url) {
super(url);
@@ -108,6 +124,16 @@ public class BossApiClientDispatchPlansTest {
requestHeaders.put(key, value);
}
@Override
public void setConnectTimeout(int timeout) {
connectTimeoutValue = timeout;
}
@Override
public void setReadTimeout(int timeout) {
readTimeoutValue = timeout;
}
@Override
public String getRequestProperty(String key) {
return requestHeaders.get(key);