Workflows Module

The workflows module orchestrates the complete podcast generation pipeline.

Podcast Pipeline

Main podcast generation workflow.

class the_data_packet.workflows.podcast.PodcastResult(success: bool = False, number_of_articles_collected: int = 0, articles_collected: List[Article] = <factory>, script_generated: bool = False, audio_generated: bool = False, rss_generated: bool = False, script_path: Path | None = None, audio_path: Path | None = None, rss_path: Path | None = None, s3_script_url: str | None = None, s3_audio_url: str | None = None, s3_rss_url: str | None = None, execution_time_seconds: float | None = None, error_message: str | None = None)[source]

Bases: object

Result of podcast generation workflow.

success: bool = False
number_of_articles_collected: int = 0
articles_collected: List[Article]
script_generated: bool = False
audio_generated: bool = False
rss_generated: bool = False
script_path: Path | None = None
audio_path: Path | None = None
rss_path: Path | None = None
s3_script_url: str | None = None
s3_audio_url: str | None = None
s3_rss_url: str | None = None
execution_time_seconds: float | None = None
error_message: str | None = None
__init__(success: bool = False, number_of_articles_collected: int = 0, articles_collected: List[Article] = <factory>, script_generated: bool = False, audio_generated: bool = False, rss_generated: bool = False, script_path: Path | None = None, audio_path: Path | None = None, rss_path: Path | None = None, s3_script_url: str | None = None, s3_audio_url: str | None = None, s3_rss_url: str | None = None, execution_time_seconds: float | None = None, error_message: str | None = None) None
class the_data_packet.workflows.podcast.PodcastPipeline(config: Config | None = None)[source]

Bases: object

Main podcast generation pipeline.

SOURCES = {'techcrunch': <class 'the_data_packet.sources.techcrunch.TechCrunchSource'>, 'wired': <class 'the_data_packet.sources.wired.WiredSource'>}
__init__(config: Config | None = None)[source]

Initialize the podcast pipeline.

Parameters:

config – Pipeline configuration (defaults to global config)

run() PodcastResult[source]

Execute the complete podcast generation pipeline.

Returns:

PodcastResult with execution details