f
This commit is contained in:
@@ -2234,6 +2234,25 @@ class PipelineExecutor:
|
||||
|
||||
# After inserting/appending an auto-stage, continue processing so later
|
||||
# selection-expansion logic can still run (e.g., for example selectors).
|
||||
if (not stages) and selection_indices and len(selection_indices) == 1:
|
||||
# Selection-only invocation (e.g. user types @1 with no pipe).
|
||||
# Show the item details panel so selection feels actionable.
|
||||
try:
|
||||
selected_item = filtered[0] if filtered else None
|
||||
if selected_item is not None and not isinstance(selected_item, dict):
|
||||
to_dict = getattr(selected_item, "to_dict", None)
|
||||
if callable(to_dict):
|
||||
selected_item = to_dict()
|
||||
if isinstance(selected_item, dict):
|
||||
from SYS.rich_display import render_item_details_panel
|
||||
|
||||
render_item_details_panel(selected_item)
|
||||
try:
|
||||
ctx.set_last_result_items_only([selected_item])
|
||||
except Exception:
|
||||
pass
|
||||
except Exception:
|
||||
logger.exception("Failed to render selection-only item details")
|
||||
return True, piped_result
|
||||
else:
|
||||
debug(f"@N: No items to select from (items_list empty)")
|
||||
|
||||
Reference in New Issue
Block a user