fix: converge workbench session authority

This commit is contained in:
lyon
2026-06-18 15:24:16 +08:00
parent dc4cac04a6
commit 08b2e3077a
42 changed files with 797 additions and 8096 deletions
-8
View File
@@ -25,7 +25,6 @@ export function computeCodeAgentComposerState(input = {}) {
input.chatPending === true
);
const mode = active ? "steer" : "turn";
const conversationId = firstNonEmptyString(input.conversationId, current?.conversationId, latest?.conversationId, workspace?.selectedConversationId);
const sessionId = firstNonEmptyString(input.sessionId, current?.sessionId, latest?.sessionId);
const sessionUsable = Boolean(sessionId) && !unusableSessionStatus(explicitStatus);
const disabledReason = active
@@ -48,11 +47,8 @@ export function computeCodeAgentComposerState(input = {}) {
route: mode === "steer" ? "/v1/agent/chat/steer" : "/v1/agent/chat",
method: "POST",
targetTraceId: active ? traceId : null,
conversationId,
sessionId,
threadId: firstNonEmptyString(input.threadId, current?.threadId, latest?.threadId),
workspaceId: firstNonEmptyString(input.workspaceId, workspace?.workspaceId),
workspaceRevision: integerOrNull(input.workspaceRevision ?? workspace?.revision),
reason: active ? "active-turn-steer" : disabledReason ?? (terminalStatus(effectiveStatus) ? "terminal-turn" : "idle-turn")
});
}
@@ -108,10 +104,6 @@ function firstNonEmptyString(...values) {
return null;
}
function integerOrNull(value) {
return Number.isInteger(value) ? value : null;
}
function pruneUndefined(value) {
const out = {};
for (const [key, item] of Object.entries(value)) {