Skip to content

Add node-level blocker support to ancestor propagation, refactor logic, add tests, bump version - #15

Merged
jeromychu23 merged 2 commits into
mainfrom
codex/extend-propagate_target_from_ancestor-with-blocker-condition-cmh6ac
Mar 5, 2026
Merged

Add node-level blocker support to ancestor propagation, refactor logic, add tests, bump version#15
jeromychu23 merged 2 commits into
mainfrom
codex/extend-propagate_target_from_ancestor-with-blocker-condition-cmh6ac

Conversation

@jeromychu23

Copy link
Copy Markdown
Owner

Motivation

  • Add support for an optional node-level block_key that stops ancestor-based target propagation when a blocking event is found with a later target timestamp.
  • Refactor the propagation implementation to separate pure row processing from the Python-facing wrapper for easier testing and clarity.
  • Bump package and recipe versions to publish the new behavior and update the recipe build metadata.

Description

  • Introduce has_blocker_on_node_after_target to detect blocker events on nodes and wire it into traversal termination logic.
  • Split propagate_target_from_ancestor into an internal propagate_target_rows function that operates on &[PyDict] and a thin #[pyfunction] wrapper that accepts a DataFrame and optional block_key parameter.
  • Rename and simplify helper functions (matches_target_key -> matches_kv) and adjust calls to composite_key and choose_candidate_by_plan to accept consistent argument types.
  • Add multiple unit tests under #[cfg(test)] covering blocker termination, self-node blockers, and parent-node blockers.
  • Bump crate version in Cargo.toml to 0.1.3 and update the conda recipe recipe/meta.yaml version to 0.1.3 while adjusting the build number and test commands to match the new parameter names and signature.

Testing

  • Ran cargo test which executed the new propagate_target_rows unit tests and they passed.
  • Updated recipe test commands in recipe/meta.yaml to call the extended propagate_target_from_ancestor signature; these are included as automated package tests in the recipe.

Codex Task

@jeromychu23
jeromychu23 merged commit 2cf1773 into main Mar 5, 2026
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant