( ctx context.Context, scope toolspkg.Scope, req toolspkg.CallRequest, )
| 1656 | } |
| 1657 | |
| 1658 | func (n *daemonNativeTools) networkDirectMessages( |
| 1659 | ctx context.Context, |
| 1660 | scope toolspkg.Scope, |
| 1661 | req toolspkg.CallRequest, |
| 1662 | ) (toolspkg.ToolResult, error) { |
| 1663 | var input networkDirectMessagesInput |
| 1664 | if err := decodeNativeInput(req, &input); err != nil { |
| 1665 | return toolspkg.ToolResult{}, err |
| 1666 | } |
| 1667 | channel, err := nativeNetworkChannel(req.ToolID, input.Channel) |
| 1668 | if err != nil { |
| 1669 | return toolspkg.ToolResult{}, err |
| 1670 | } |
| 1671 | workspaceID, err := n.nativeNetworkWorkspaceID(ctx, req.ToolID, input.WorkspaceID, scope) |
| 1672 | if err != nil { |
| 1673 | return toolspkg.ToolResult{}, err |
| 1674 | } |
| 1675 | ref := store.NetworkConversationRef{ |
| 1676 | WorkspaceID: workspaceID, |
| 1677 | Channel: channel, |
| 1678 | Surface: store.NetworkSurfaceDirect, |
| 1679 | DirectID: strings.TrimSpace(input.DirectID), |
| 1680 | } |
| 1681 | payload, err := n.networkConversationMessages(ctx, req.ToolID, ref, networkConversationMessageQueryInput{ |
| 1682 | Before: strings.TrimSpace(input.Before), |
| 1683 | After: strings.TrimSpace(input.After), |
| 1684 | Kind: strings.TrimSpace(input.Kind), |
| 1685 | WorkID: strings.TrimSpace(input.WorkID), |
| 1686 | Limit: input.Limit, |
| 1687 | }) |
| 1688 | if err != nil { |
| 1689 | return toolspkg.ToolResult{}, err |
| 1690 | } |
| 1691 | return structuredNetworkResult( |
| 1692 | map[string]any{nativeToolsMessagesKey: payload}, |
| 1693 | fmt.Sprintf("%d messages", len(payload)), |
| 1694 | ) |
| 1695 | } |
| 1696 | |
| 1697 | func (n *daemonNativeTools) networkWork( |
| 1698 | ctx context.Context, |
nothing calls this directly
no test coverage detected