Invite dialog: filter routines/Echo, exclude participants, fix Jimmy's name (CL-6649) - #322
Merged
Conversation
…my's row name CL-6649: pins the exact trap that let a routine's delivery workflow and Echo leak into the invite-agent picker (non-automatable but also non-conversational), covers excluding an already-present participant from /workbenches/:id/invitable, and covers the quick-create Jimmy row rendering his name instead of his description.
The invite picker's conversational-agent ruling checked !isAutomatableWorkflowName, not isConversationalWorkflowName — a non-automatable, non-conversational catalog entry (a routine's delivery workflow like "Last 30 days research report", the Echo wiring check) slipped through as if it were a real chat agent. Switch to the flag that actually means "conversational", matching the sidebar's own DM listing. /workbenches/:id/invitable also excluded nothing: a definition already resident in the room (e.g. Myra) was re-offered for invite. Resolve the room's current agent participants back to their definition ids and drop them from the listing. Echo's e2e wiring-check tests resolved its definition id through this same (now correctly filtered) endpoint; point them at the agent-definitions by-name lookup instead, since Echo is intentionally no longer conversational/invitable.
…escription
The quick-create Jimmy row rendered only his description ("Searches
Giphy and replies with a GIF") and never his name at all. Render the
name prominently with a "by Corbits" attribution for first-party
agents, and the description as a secondary line — same treatment for
every other row's display name/slug fallback.
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.
Summary
Fixes the four bugs in CL-6649 (owner critique, urgent):
isConversationalAgentDefinitionchecked!isAutomatableWorkflowNameinstead ofisConversationalWorkflowName. Echo and "Last 30 days research report" are both non-automatable and non-conversational, so the old check let both through as if they were real chat agents. Fixed at the data layer (apps/hub/src/index.ts), matching the same flag the sidebar's DM listing already uses correctly.JIMMY_QUICK_CREATE.description("Searches Giphy and replies with a GIF") — his name never appeared. Now renders "Jimmy" prominently with a "by Corbits" attribution, description as a secondary line; the general row list gets the same name/fallback treatment./workbenches/:id/invitablenow resolves the room's current agent participants back to their definition ids and excludes them from the listing.conversational: false, so it's now excluded everywhere the picker is used). Full deletion of Echo's seeding is tracked separately as CL-6668 —packages/hub-client/test/seed.test.tshas 30+ references treating Echo as its generic single-workflow test fixture, and safely reworking all of them didn't fit this timebox.Deferred (design items, scoped down per the ticket's own instructions)
Follow-ups filed
Test plan
WORKBENCH_CHECK_SINCE=origin/main bun run typecheck— passWORKBENCH_CHECK_SINCE=origin/main bun run test— pass (new tests added for filtering, participant exclusion, Jimmy's row)bun run lint— pass