from src.sdlc.states.states import WorkerState from src.sdlc.prompts.prompts import CODE_GEN_INSTRUCTIONS from src.sdlc.schema.codefiles import CodeFile from src.sdlc import logger class CodeGenerationNode: """ Node logic implementation to generate code for each code file type from orchestrator. """ def __init__(self,model): self.llm=model.with_structured_output(CodeFile) def process(self, state: WorkerState) -> dict: """ Processes the input state and generates code files. """ code_review=state.get('generated_code_review', '') code_file=self.llm.invoke(CODE_GEN_INSTRUCTIONS.format(code_review=code_review, codefilename=state['codefiletype'].name, codefiledescription=state['codefiletype'].description)) logger.info(f"In Code generation node for code file : {state['codefiletype'].name}") return {"generated_files": [code_file]}