(self, section_data)
| 580 | return False |
| 581 | |
| 582 | def render_section_worker(self, section_data) -> Tuple[str, bool, Optional[str]]: |
| 583 | section_id = "unknown" |
| 584 | try: |
| 585 | section, agent_class, kwargs = section_data |
| 586 | section_id = section.id |
| 587 | agent = agent_class(**kwargs) |
| 588 | success = agent.render_section(section) |
| 589 | video_path = agent.section_videos.get(section.id) if success else None |
| 590 | return section_id, success, video_path |
| 591 | |
| 592 | except Exception as e: |
| 593 | print(f"❌ {self.learning_topic} {section_id} render process exception: {str(e)}") |
| 594 | return section_id, False, None |
| 595 | |
| 596 | def render_all_sections(self, max_workers: int = 6) -> Dict[str, str]: |
| 597 | print(f"🎥 Start parallel rendering of all section videos (up to {max_workers} processes)...") |
nothing calls this directly
no test coverage detected