Skip to content

XERK-130 follow-up: resolve subagent rows whose pane cells were ellipsized#314

Merged
xerhab merged 1 commit into
mainfrom
XERK-130
Jul 26, 2026
Merged

XERK-130 follow-up: resolve subagent rows whose pane cells were ellipsized#314
xerhab merged 1 commit into
mainfrom
XERK-130

Conversation

@xerhab

@xerhab xerhab commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

What

Follow-up from the XERK-130 narrow-pane audit (#313 fixed the busy signal). The remaining consumer of pane-scraped text with a width defect: clicking a subagent row in the live agent list.

The row's type + label are scraped verbatim off the tmux pane (parseAgentList), and on a ~54-column window the TUI cuts a long description with its own ellipsis. _resolve_subagent matched exact-or-prefix, but the trailing is not part of the real Task description, so neither direction could ever match — the click staged an empty transcript.

Fix

_strip_pane_ellipsis drops a trailing (or ...) from both cells before matching, marking an ellipsized type as a prefix constraint. A plain hard-cut (no ellipsis) behaves exactly as before; a description whose real text ends in still resolves (the stripped remnant is a prefix of it).

The rest of the audit found no other actionable width sensitivity: the mode marker, model picker labels, and model confirmation line all fit at phone widths and fail safe below; the busy gates on set_model/pending-input resend were already corrected by #313 via _busy_from_capture.

Verified

  • python3 -m unittest agent.tests.test_hub_agent: 739 tests OK (3 new cases in TestResolveSubagent: ellipsized label, ellipsized type, ... variant, and a genuine- description still matching).

Agent-side only; server-side resolution covers web and Android clicks alike.

Follow-up from the narrow-pane audit: the agent-list row a click sends
carries whatever the pane showed, and on a ~54-column window the TUI cuts a
long description (or, extreme widths, the type) with its own '…'. That
ellipsis is not part of the real Task description, so _resolve_subagent's
exact/prefix match could never succeed and the click staged an empty
transcript. _strip_pane_ellipsis drops a trailing '…'/'...' from both cells
before matching (marking the type as a prefix), which is a no-op for the
plain hard-cut the prefix match already handled.
@xerhab
xerhab merged commit d527207 into main Jul 26, 2026
5 checks passed
@xerhab
xerhab deleted the XERK-130 branch July 26, 2026 00:58
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