Files
ragflow/web/src/pages/agent/form-sheet/single-debug-sheet/utils.ts
buua436 daf8a58c4b Fix: add codeexec attachments output (#14787)
### What problem does this PR solve?

add codeexec attachments output

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
2026-05-11 19:16:33 +08:00

42 lines
1.1 KiB
TypeScript

import { Operator } from '../../constant';
import { CodeOutputContract } from '../../form/code-form/utils';
const SYSTEM_OUTPUT_NAMES = new Set([
'_ERROR',
'_ARTIFACTS',
'attachments',
'_ATTACHMENT_CONTENT',
]);
export type GroupedCodeExecDebugOutput = {
expectedType: string;
actualType: string;
rawResult: unknown;
content: string;
systemOutputs: Record<string, unknown>;
};
export function groupCodeExecDebugOutput(
data: Record<string, unknown> | undefined,
contract: CodeOutputContract | null,
): GroupedCodeExecDebugOutput {
const businessName = contract?.name ?? '';
const source = data ?? {};
const systemOutputs = Object.fromEntries(
Object.entries(source).filter(([key]) => SYSTEM_OUTPUT_NAMES.has(key)),
);
return {
expectedType: contract?.type ?? '',
actualType: String(source.actual_type ?? ''),
rawResult:
source.raw_result ?? (businessName ? source[businessName] : undefined),
content: String(source.content ?? ''),
systemOutputs,
};
}
export function shouldUseCodeExecDebugLayout(label?: string): boolean {
return label === Operator.Code;
}