Skip to content

[Workflow] Implement parallel task execution with thread-safe repositories #53

@thinkclay

Description

@thinkclay

Type: Enhancement

Priority: High

Location: crates/radium-core/src/workflow/parallel.rs:64

Description:
Currently, parallel workflow execution uses a sequential execution with parallel facade. True parallel execution requires refactoring repositories to Arc<dyn Repository + Send + Sync>.

Current Behavior:

  • Workflow tasks execute sequentially
  • Parallel executor exists but delegates to sequential implementation
  • Repository trait doesn't implement Send + Sync bounds

Expected Behavior:

  • Tasks should execute in parallel when dependencies allow
  • Repositories should be thread-safe and shareable across tasks
  • Proper error handling for concurrent execution

Dependencies:

  • Requires Repository trait refactoring to add Send + Sync bounds
  • Need Arc-wrapped repositories for shared access
  • May require async-aware synchronization primitives

Acceptance Criteria:

  • Repository trait implements Send + Sync
  • Repositories wrapped in Arc for shared access
  • Parallel executor properly spawns tasks concurrently
  • Tests verify parallel execution behavior
  • Error handling works correctly in concurrent context

Related: Part of workflow execution improvements from TODO_TRACKING.md

Priority: HIGH

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions