Skip to content

Commit 4caa32c

Browse files
authored
fix(chat): prioritize workflows across resource menus (#7086)
* fix(chat): prioritize workflows in mention menu * Address PR review feedback (#7086) Centralize mention resource ordering in the registry and derive it from the canonical menu order. * fix(chat): prioritize workflows across resource menus
1 parent 77b5ae3 commit 4caa32c

2 files changed

Lines changed: 15 additions & 1 deletion

File tree

apps/sim/app/workspace/[workspaceId]/home/components/mothership-view/components/resource-registry/resource-registry.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,8 +271,8 @@ export const RESOURCE_MENU_ORDER: readonly MothershipResourceType[] = [
271271
'file',
272272
'filefolder',
273273
'knowledgebase',
274-
'log',
275274
'workflow',
275+
'log',
276276
'folder',
277277
'browser',
278278
'terminal',

apps/sim/app/workspace/[workspaceId]/home/components/user-input/components/plus-menu-dropdown/resource-mention-items.test.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import {
44
TERMINAL_SESSION_RESOURCE_ID,
55
} from '@/lib/copilot/resources/types'
66
import type { AvailableItem } from '@/app/workspace/[workspaceId]/home/components/mothership-view/components/add-resource-dropdown/resource-folder-tree'
7+
import { byResourceMenuOrder } from '@/app/workspace/[workspaceId]/home/components/mothership-view/components/resource-registry'
78
import {
89
buildMentionPreview,
910
resourceMentionMatches,
@@ -158,3 +159,16 @@ describe('buildMentionPreview', () => {
158159
expect(preview).toHaveLength(2)
159160
})
160161
})
162+
163+
describe('byResourceMenuOrder', () => {
164+
it('places workflows before logs without changing the surrounding order', () => {
165+
const ordered = [
166+
{ type: 'task', items: [{ id: 'chat-1', name: 'Glean migration' }] },
167+
{ type: 'log', items: [{ id: 'log-1', name: 'Glean' }] },
168+
{ type: 'workflow', items: [{ id: 'workflow-1', name: 'Glean' }] },
169+
{ type: 'browser', items: [{ id: 'browser', name: 'Browser' }] },
170+
].sort(byResourceMenuOrder)
171+
172+
expect(ordered.map((group) => group.type)).toEqual(['task', 'workflow', 'log', 'browser'])
173+
})
174+
})

0 commit comments

Comments
 (0)