Skip to content

refactor: implement Index<LeafExecutionPath> for ExecutionGraph#162

Merged
branchseer merged 1 commit intomainfrom
impl-index-leaf-execution-path
Feb 15, 2026
Merged

refactor: implement Index<LeafExecutionPath> for ExecutionGraph#162
branchseer merged 1 commit intomainfrom
impl-index-leaf-execution-path

Conversation

@branchseer
Copy link
Copy Markdown
Member

Summary

  • Implement Index<&LeafExecutionPath> for ExecutionGraph with Output = LeafExecutionKind, enabling direct indexing into nested execution graphs to retrieve leaf execution kinds
  • Extract shared graph traversal into LeafExecutionPath::resolve_item(), used by both the Index impl and display resolution in labeled.rs
  • Remove Option wrapper from display fields in ExecutionInfo and LabeledLeafReporter — the None case was unreachable dead code (paths are never empty at the call site)
  • Add explicit Index<NodeIndex<Ix>> on AcyclicGraph to prevent the new Index impl from shadowing NodeIndex indexing that was previously available through Deref

Add Index<&LeafExecutionPath> for ExecutionGraph with Output = LeafExecutionKind,
providing direct indexing into nested execution graphs to retrieve leaf execution kinds.

- Extract shared graph traversal into LeafExecutionPath::resolve_item()
- Remove Option from display fields in labeled reporter (was unreachable dead code)
- Add explicit Index<NodeIndex<Ix>> on AcyclicGraph to prevent shadowing through Deref
@branchseer branchseer merged commit b4dba39 into main Feb 15, 2026
11 of 12 checks passed
@branchseer branchseer deleted the impl-index-leaf-execution-path branch February 15, 2026 16:04
branchseer added a commit that referenced this pull request Feb 15, 2026
Remove vestiges left by the previous refactor (#162):

- summary_buf: was unconditionally Some(...) after the
  is_single_displayless condition was removed — unwrap the Option
- is_cache_hit field on LabeledLeafReporter: set but never read after
  its only consumer was removed
branchseer added a commit that referenced this pull request Feb 15, 2026
…163)

## Summary

Follow-up to #162 — remove vestiges left by that refactor:

- **`summary_buf`**: was unconditionally `Some(...)` after the
`is_single_displayless` condition was removed. Unwrap the `Option` and
write the buffer directly.
- **`is_cache_hit`** field on `LabeledLeafReporter`: set in `start()`
but never read — its only consumer was the `self.display.is_none() &&
self.is_cache_hit` block removed in #162. Remove the field, its
initialization, and its assignment.
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.

1 participant