(ctx context.Context, sessionID string)
| 2741 | } |
| 2742 | |
| 2743 | func (c *unixSocketClient) sessionWorkspaceRef(ctx context.Context, sessionID string) (string, error) { |
| 2744 | sessions, err := c.ListSessions(ctx, SessionListQuery{}) |
| 2745 | if err != nil { |
| 2746 | return "", fmt.Errorf("cli: resolve session %q workspace: %w", sessionID, err) |
| 2747 | } |
| 2748 | for _, record := range sessions { |
| 2749 | if strings.TrimSpace(record.ID) != sessionID { |
| 2750 | continue |
| 2751 | } |
| 2752 | workspaceID := strings.TrimSpace(record.WorkspaceID) |
| 2753 | if workspaceID == "" { |
| 2754 | return "", fmt.Errorf("cli: session %q has no workspace_id", sessionID) |
| 2755 | } |
| 2756 | return workspaceID, nil |
| 2757 | } |
| 2758 | return "", fmt.Errorf("cli: session %q not found", sessionID) |
| 2759 | } |
| 2760 | |
| 2761 | func (c *unixSocketClient) CreateSession(ctx context.Context, request CreateSessionRequest) (SessionRecord, error) { |
| 2762 | var response struct { |
no test coverage detected