Skip to content

TaskGroup downstream fix#100

Merged
fritz-astronomer merged 8 commits intomainfrom
task_group_downstream_fix
Oct 31, 2025
Merged

TaskGroup downstream fix#100
fritz-astronomer merged 8 commits intomainfrom
task_group_downstream_fix

Conversation

@fritz-astronomer
Copy link
Contributor

  • fix: render_ast gracefully handle None
  • refactor: extract downstream_to_ast to common module
  • feat: add get_rendered_task_id - to have an object say if it wants "_task" or not, rather than guessing at dependency time
  • feat: add dereferenced_downstream - to figure out which operator belongs to which task_id to see if it's a task_group

Closes #69

…e an object say if it wants "_task" or not, rather than deps), add dereferenced_downstream - to figure out which operator belongs to which task_id to see if it's a task_group
@fritz-astronomer fritz-astronomer self-assigned this Oct 31, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR enhances TaskGroup downstream dependency handling by adding dereferencing capabilities and extracting common functionality for AST rendering.

  • Adds get_rendered_task_id method to distinguish between task and task group naming conventions
  • Introduces dereference_downstream functionality to resolve string references to actual task objects
  • Extracts shared downstream AST rendering logic to a common utility function

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/orbiter/objects/task_group_test.py Adds test case verifying TaskGroup downstream dependency rendering
orbiter/objects/tasks_parent_shared_utils.py Updates task dependency parent lookup to handle both string and object references
orbiter/objects/task_shared_utils.py Extracts common downstream AST rendering logic and adds import statements
orbiter/objects/task_group.py Refactors to use shared utilities and adds dereferenced downstream support
orbiter/objects/task.py Refactors to use shared utilities and adds get_rendered_task_id method
orbiter/objects/dag.py Adds dereference_downstream function and integrates it into AST generation
orbiter/ast_helper.py Adds None check to render_ast function
orbiter/init.py Version bump to 1.8.2

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@codecov-commenter
Copy link

codecov-commenter commented Oct 31, 2025

Codecov Report

❌ Patch coverage is 95.00000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.91%. Comparing base (b3ee237) to head (4d0e199).
⚠️ Report is 58 commits behind head on main.

Files with missing lines Patch % Lines
orbiter/objects/dag.py 85.71% 2 Missing ⚠️
orbiter/ast_helper.py 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #100      +/-   ##
==========================================
+ Coverage   78.92%   81.91%   +2.98%     
==========================================
  Files          35       50      +15     
  Lines        1362     1847     +485     
==========================================
+ Hits         1075     1513     +438     
- Misses        287      334      +47     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@fritz-astronomer fritz-astronomer merged commit 48d4ca5 into main Oct 31, 2025
8 checks passed
@fritz-astronomer fritz-astronomer deleted the task_group_downstream_fix branch October 31, 2025 20:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

OrbiterTaskGroup dependencies are incorrect if downstream is OrbiterTaskGroup

3 participants