( ctx context.Context, scope toolspkg.Scope, req toolspkg.CallRequest, )
| 1530 | } |
| 1531 | |
| 1532 | func (n *daemonNativeTools) networkThreadMessages( |
| 1533 | ctx context.Context, |
| 1534 | scope toolspkg.Scope, |
| 1535 | req toolspkg.CallRequest, |
| 1536 | ) (toolspkg.ToolResult, error) { |
| 1537 | var input networkThreadMessagesInput |
| 1538 | if err := decodeNativeInput(req, &input); err != nil { |
| 1539 | return toolspkg.ToolResult{}, err |
| 1540 | } |
| 1541 | channel, err := nativeNetworkChannel(req.ToolID, input.Channel) |
| 1542 | if err != nil { |
| 1543 | return toolspkg.ToolResult{}, err |
| 1544 | } |
| 1545 | workspaceID, err := n.nativeNetworkWorkspaceID(ctx, req.ToolID, input.WorkspaceID, scope) |
| 1546 | if err != nil { |
| 1547 | return toolspkg.ToolResult{}, err |
| 1548 | } |
| 1549 | ref := store.NetworkConversationRef{ |
| 1550 | WorkspaceID: workspaceID, |
| 1551 | Channel: channel, |
| 1552 | Surface: store.NetworkSurfaceThread, |
| 1553 | ThreadID: strings.TrimSpace(input.ThreadID), |
| 1554 | } |
| 1555 | payload, err := n.networkConversationMessages(ctx, req.ToolID, ref, networkConversationMessageQueryInput{ |
| 1556 | Before: strings.TrimSpace(input.Before), |
| 1557 | After: strings.TrimSpace(input.After), |
| 1558 | Kind: strings.TrimSpace(input.Kind), |
| 1559 | WorkID: strings.TrimSpace(input.WorkID), |
| 1560 | Limit: input.Limit, |
| 1561 | }) |
| 1562 | if err != nil { |
| 1563 | return toolspkg.ToolResult{}, err |
| 1564 | } |
| 1565 | return structuredNetworkResult( |
| 1566 | map[string]any{nativeToolsMessagesKey: payload}, |
| 1567 | fmt.Sprintf("%d messages", len(payload)), |
| 1568 | ) |
| 1569 | } |
| 1570 | |
| 1571 | func (n *daemonNativeTools) networkDirects( |
| 1572 | ctx context.Context, |
nothing calls this directly
no test coverage detected