# ListProductAttributeAssignments

## Overview

ListProductAttributeAssignments retrieves all attribute assignments for a given product. Used by variant generation to collect all attribute values and compute combinations, and by product deletion to clean up assignments.

## Business Rules

- Searches ProductAttributeAssignment table for all records matching the given productId
- Returns all matching assignment records as an array
- Returns an empty array if the product has no attribute assignments

## Process Flow

```mermaid
flowchart TD
    A[Receive productId] --> B[SELECT from ProductAttributeAssignment where productId = input]
    B --> C{Assignments found?}
    C -->|Yes| D[Return assignment records]
    C -->|No| E[Return empty array]
```

## External Dependencies

- None

## Error Scenarios

None

## Test Cases

- returns assignments when found
- returns empty array when no assignments
