diff --git a/modules/features/graphicalEditor/nodeDefinitions/file.py b/modules/features/graphicalEditor/nodeDefinitions/file.py index ffa4d722..a5390016 100644 --- a/modules/features/graphicalEditor/nodeDefinitions/file.py +++ b/modules/features/graphicalEditor/nodeDefinitions/file.py @@ -20,7 +20,11 @@ FILE_NODES = [ ], "inputs": 1, "outputs": 1, +<<<<<<< HEAD "inputPorts": {0: {"accepts": ["AiResult", "TextResult", "Transit", "FormPayload", "LoopItem", "ActionResult"]}}, +======= + "inputPorts": {0: {"accepts": ["AiResult", "TextResult", "Transit", "FormPayload"]}}, +>>>>>>> 875f8252 (ValueOn Lead to Offer durchgespielt, bugfixes in Dateigenerierung und ai nodes) "outputPorts": {0: {"schema": "DocumentList"}}, "meta": {"icon": "mdi-file-plus-outline", "color": "#2196F3", "usesAi": False}, "_method": "file", diff --git a/modules/features/graphicalEditor/portTypes.py b/modules/features/graphicalEditor/portTypes.py index deab83b9..af0759f5 100644 --- a/modules/features/graphicalEditor/portTypes.py +++ b/modules/features/graphicalEditor/portTypes.py @@ -723,9 +723,12 @@ def normalizeToSchema(raw: Any, schemaName: str) -> Dict[str, Any]: if not schema or schemaName == "Transit": return result +<<<<<<< HEAD if schemaName == "DocumentList": _coerce_document_list_upload_fields(result) +======= +>>>>>>> 875f8252 (ValueOn Lead to Offer durchgespielt, bugfixes in Dateigenerierung und ai nodes) # Only default **required** fields. Optional fields stay absent so DataRefs / context # resolution never pick a synthetic `{}` or `[]` (e.g. AiResult.responseData when the # model returned plain text only). diff --git a/modules/serviceCenter/services/serviceAi/subAiCallLooping.py b/modules/serviceCenter/services/serviceAi/subAiCallLooping.py index d532115d..ed8ddcda 100644 --- a/modules/serviceCenter/services/serviceAi/subAiCallLooping.py +++ b/modules/serviceCenter/services/serviceAi/subAiCallLooping.py @@ -559,6 +559,7 @@ class AiCallLooper: if iteration >= maxIterations: logger.warning(f"AI call stopped after maximum iterations ({maxIterations})") +<<<<<<< HEAD # Prefer last repaired complete JSON from getContexts (raw `result` is only the last fragment). if lastValidCompletePart and useCase and not useCase.requiresExtraction: try: @@ -577,6 +578,11 @@ class AiCallLooper: except Exception as e: logger.debug("Max-iterations fallback on completePart failed: %s", e) +======= + # This code path should never be reached because all registered use cases + # return early when JSON is complete. This would only execute for use cases that + # require section extraction, but no such use cases are currently registered. +>>>>>>> 875f8252 (ValueOn Lead to Offer durchgespielt, bugfixes in Dateigenerierung und ai nodes) logger.error( "End of callAiWithLooping without success for use case %r (iterations=%s, lastResultLen=%s)", useCaseId, diff --git a/modules/serviceCenter/services/serviceGeneration/renderers/rendererCsv.py b/modules/serviceCenter/services/serviceGeneration/renderers/rendererCsv.py index a8b2c346..2c8d35b3 100644 --- a/modules/serviceCenter/services/serviceGeneration/renderers/rendererCsv.py +++ b/modules/serviceCenter/services/serviceGeneration/renderers/rendererCsv.py @@ -39,6 +39,12 @@ class RendererCsv(BaseRenderer): """ return ["table", "code_block"] +<<<<<<< HEAD +======= +<<<<<<< HEAD + async def render(self, extractedContent: Dict[str, Any], title: str, userPrompt: str = None, aiService=None, *, style: Dict[str, Any] = None) -> List[RenderedDocument]: +======= +>>>>>>> 875f8252 (ValueOn Lead to Offer durchgespielt, bugfixes in Dateigenerierung und ai nodes) async def render( self, extractedContent: Dict[str, Any], @@ -48,6 +54,10 @@ class RendererCsv(BaseRenderer): *, style: Dict[str, Any] = None, ) -> List[RenderedDocument]: +<<<<<<< HEAD +======= +>>>>>>> 0659d0d2 (ValueOn Lead to Offer durchgespielt, bugfixes in Dateigenerierung und ai nodes) +>>>>>>> 875f8252 (ValueOn Lead to Offer durchgespielt, bugfixes in Dateigenerierung und ai nodes) """Render extracted JSON content to CSV format. Produces one CSV file per table section.""" _ = style try: