fix: make Kafka projection the sole Workbench authority

This commit is contained in:
root
2026-07-10 06:51:09 +02:00
parent ce83ffdf49
commit efe4b62a0b
12 changed files with 660 additions and 2272 deletions
@@ -17,7 +17,7 @@ import { createCodeAgentErrorPayload, handleCodeAgentChat } from "./code-agent-c
import { defaultCodeAgentTraceStore } from "./code-agent-trace-store.ts";
import { codeAgentSessionLifecycleSummary } from "./code-agent-session-lifecycle.ts";
import { messageAuthorityTextValue } from "./code-agent-agentrun-prompt.ts";
import { writeWorkbenchProjectionSession, writeWorkbenchSessionAdmissionFact } from "./workbench-projection-writer.ts";
import { recordWorkbenchSessionOwner } from "./workbench-projection-writer.ts";
import { createWorkbenchReadModel } from "./workbench-read-model.ts";
import { codeAgentOtelTraceFields, emitCodeAgentOtelSpan } from "./otel-trace.ts";
import {
@@ -450,10 +450,8 @@ async function recordCodeAgentSessionOwner({ payload = {}, params = {}, options
const sessionId = safeSessionId(payload.sessionId ?? session?.sessionId ?? sessionReuse?.sessionId ?? params.sessionId) || null;
const conversationId = safeConversationId(payload.conversationId ?? session?.conversationId ?? sessionReuse?.conversationId ?? params.conversationId) || null;
const threadId = safeOpaqueId(session?.threadId ?? sessionReuse?.threadId ?? payload.threadId ?? params.threadId) || null;
return writeWorkbenchProjectionSession({
return recordWorkbenchSessionOwner({
accessController: options.accessController,
runtimeStore: options.runtimeStore,
traceStore: options.traceStore ?? defaultCodeAgentTraceStore,
traceId,
ownerUserId,
ownerRole: options.actor?.role ?? params.ownerRole ?? null,
@@ -463,9 +461,7 @@ async function recordCodeAgentSessionOwner({ payload = {}, params = {}, options
threadId,
status,
preserveLastTraceId,
session: codeAgentSessionOwnerEvidence(payload, params),
payload,
params
session: codeAgentSessionOwnerEvidence(payload, params)
});
}