dify/api/core/workflow/generator
aqiu cd030d82e5 refactor(vibe): extract workflow generation to dedicated module
- Move workflow generation logic from LLMGenerator to WorkflowGenerator
  - Extract to api/core/workflow/generator/ with modular architecture
  - Implement Planner-Builder pattern for better separation of concerns
  - Add validation engine with rule-based error classification
  - Add node and edge repair utilities for auto-fixing common issues
  - Add deterministic Mermaid generator for consistent output

- Reorganize configuration and prompts
  - Move vibe_config/ to generator/config/
  - Move vibe_prompts.py to generator/prompts/ (split into multiple files)
  - Add builder_prompts.py and planner_prompts.py for new architecture

- Enhance frontend workflow handling
  - Use standard node initialization for proper node setup
  - Improve variable reference replacement with better error handling
  - Add model fallback logic for better compatibility
  - Handle end node outputs format (value_selector vs legacy format)
  - Ensure parameter-extractor nodes have required 'required' field

- Add comprehensive test coverage
  - Unit tests for mermaid generator, node repair, edge repair
  - Tests for validation engine and rule system
  - Tests for planner prompts formatting
  - Frontend tests for variable reference replacement

- Add max_fix_iterations parameter for validate-fix loop configuration

# Conflicts:
#	web/app/components/workflow/hooks/use-workflow-vibe.tsx
2025-12-29 11:04:42 +08:00
..
config refactor(vibe): extract workflow generation to dedicated module 2025-12-29 11:04:42 +08:00
prompts refactor(vibe): extract workflow generation to dedicated module 2025-12-29 11:04:42 +08:00
utils refactor(vibe): extract workflow generation to dedicated module 2025-12-29 11:04:42 +08:00
validation refactor(vibe): extract workflow generation to dedicated module 2025-12-29 11:04:42 +08:00
__init__.py refactor(vibe): extract workflow generation to dedicated module 2025-12-29 11:04:42 +08:00
runner.py refactor(vibe): extract workflow generation to dedicated module 2025-12-29 11:04:42 +08:00