Conversation
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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+labelare scraped verbatim off the tmux pane (parseAgentList), and on a ~54-column window the TUI cuts a long description with its own…ellipsis._resolve_subagentmatched 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_ellipsisdrops 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 inTestResolveSubagent: ellipsized label, ellipsized type,...variant, and a genuine-…description still matching).Agent-side only; server-side resolution covers web and Android clicks alike.